Apologies for this off-topic posting, however I think it is relevant to
application development in general.
Wanted: Cloud Compatible Applications to be listed in a directory for
Cloud Compatible applications.
Criteria: Web applications that are compatible with 3-Tiered
Load Balancing services - Database for persistence and application
server nodes or endpoints front-ended by one or more Load Balancers.
So far the only Ruby/RAILS app I have found that meets the above
criteria is Tracks.
Why: The idea for the Cloud Compatible Directory came about from a
frustration resulting from a lack of available applications meeting
said requirements. And with the advent of Cloud hosting, a feeling that
applications designed for cloud hosting would become more relevant.
So the hope is that the Cloud Compatible site will becoming one
with a growing list of Cloud Compatible apps.
Perhaps you could explain exactly what differentiates Tracks from
any other RoR application? Or alternatively what makes any other
RoR app *not* meet your criteria?
Hello Hassan,
Many traditional apps (not just Ruby/RAILS) are not designed with
3-tiered scalablity in mind. A common practice is to store app data
to the file system. This is probably the number one issue with regards
the
the mentioned criteria. In this case the app would not be compatible in
a
load balanced system, unless some sort of network file storage is used.
As an example of a pure 3-Tiered compatible app, Tracks is completely
database driven, and can be easily scaled in an horizontal fashion.
.... A common practice is to store app data to the file system.
Common? I haven't seen any RoR apps that do that, other than the
occasional example of image or document uploading, which can be
easily adapted to a cloud-compatible alternative (e.g. AWS S3).
If storing app data in the file system was "common", hardly anyone's
Rails app would be running on Heroku, I'd think
This is probably the number one issue with regards the mentioned
criteria.
Hello Hassan,
Many traditional apps (not just Ruby/RAILS) are not designed with
3-tiered scalablity in mind. A common practice is to store app data
to the file system. This is probably the number one issue with regards
the
the mentioned criteria. In this case the app would not be compatible in
a
load balanced system, unless some sort of network file storage is used.
As an example of a pure 3-Tiered compatible app, Tracks is completely
database driven, and can be easily scaled in an horizontal fashion.
What's specific about the cloud? Load balancing across multiple servers is something people have be doing for years. I would have thought that just about any production rails app of any size will be load balanced, for redundancy if nothing else (certainly anything I've ever worked on has).
If you need examples, heroku claimed to have deployed 100,000+ rack/rails apps