(MODAClouds) AppFog

Important

This document is part of the MODAClouds deliverable D6.1, thus superseded by it.

Important

This document was created in March 2013, thus its contents might be currently outdated.

Overview

As hinted previously, AppFog is one of the commercial PaaS's that have been built upon the open-source licensed Cloud Foundry code base.

Thus most what has been said about Cloud Foundry, hosted by VMWare, still applies to AppFog, including some of the limitations. As such in the current section we shall focus mainly on what is different than in the case of Cloud Foundry.

Characteristics

typePaaS
suitabilityproduction
application domainweb applications
application architecture2-tier applications
application restrictionscontainer
programming languagesJava, Ruby, Python, NodeJS, PHP [AppFog-2] [AppFog-4] [1]
programming frameworkspopular frameworks, plus standalone
scalabilitymanual
session affinitysticky-sessions (presumably)
interactionWUI, CLI, WS, API
disponibilityhosted
portabilityout-of-the-box
servicesMySQL, PostgreSQL, MongoDB, Redis, RabbitMQ [AppFog-3] [AppFog-4]
monitoring coveragebasic
monitoring levelcontainer
multi-tenancymultiple organizations
resource sharingn:1
providersAmazon, HP [AppFog-4] [1]
[1](1, 2) These characteristics differ from the ones of the hosted Cloud Foundry.

Notes and limitations

Most are presumably the same as in the case of CloudFoundry --- there isn't a clear documentation stating the constraints --- with the following notable exceptions:

  • the limit of 2 GiB total memory for an application can be raised if the user pays;
  • however the user can create an unlimited number of applications for free, within that 2 GiB limit;
  • there is a way to access some resources (like the relational databases) backing the applications [AppFog-5];
  • it is backed by public IaaS offerings;

ModaClouds integration

As stated in the introduction AppFog does inherit some of the drawbacks of CloudFoudry, especially when compared with Heroku. For example the number of programming languages is slightly larger than with CloudFoundry, but we can't run arbitrary applications as we can in Heroku.

However, because AppFog is backed by Amazon and other public cloud providers, we have the ability to deploy our support services on VM's residing in the same cloud.

Moreover through the tunneling feature [AppFog-5] we could support the migration of the application's data, at least for the limited set of supported resources.

References

[AppFog-2]AppFog Documentation -- Languages
[AppFog-3]AppFog Documentation -- Services
[AppFog-4](1, 2, 3) AppFog Documentation -- Feature Roadmap
[AppFog-5](1, 2) AppFog Documentation -- Tunneling