(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

type PaaS
suitability production
application domain web applications
application architecture 2-tier applications
application restrictions container
programming languages Java, Ruby, Python, NodeJS, PHP [AppFog-2] [AppFog-4] [1]
programming frameworks popular frameworks, plus standalone
scalability manual
session affinity sticky-sessions (presumably)
interaction WUI, CLI, WS, API
disponibility hosted
portability out-of-the-box
services MySQL, PostgreSQL, MongoDB, Redis, RabbitMQ [AppFog-3] [AppFog-4]
monitoring coverage basic
monitoring level container
multi-tenancy multiple organizations
resource sharing n:1
providers Amazon, 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