As an application developer I mostly spend time with java, oracle stuff. I am not very good at linux/unix systems - in general system admin stuff. I am wondering how to prepare for this change in underlying infrastructure. What does it mean to application developers and how can/should they train themselves? Any books or resources? One thing to learn would be all about web-services. How to develop, test, maintain (registry) and secure them. What other areas to concentrate?
A:
A good place to start is Google App Engine. You can run your jobs for free until you reach a certain volume. Also recent versions of it support Java. There is even an option of downloading the kit and running everything locally, then putting your job into the cloud.
Amazon and Windows Azure have good resources as well. But you need to pay a little bit of cash to start using their services.
Vlad
2010-06-20 18:09:31
So, as an application developer I need to figure out how to get my applications work on a cloud infrastructure (public or private) much like we figure out how to deploy code in different app servers (or) figure out how to write the same logic using different frameworks!
2010-06-20 22:03:04
The applications will work the same way. It just you have to know how to partition the applications so that they can get advantage of instant scalability that is provided by the cloud systems. The main trick is that you have to split Processing / Storage and Workflow aspects of your application. So that at any point when demand increases the extra servers could be added to the system to satisfy this demand. Main NO-NO is to store anything on the local server storage, with the exception of some intermediate data that will be discard at the end of transaction and maybe some caches.
Vlad
2010-06-21 00:25:24
Makes sense. It would be nice to have a thread by someone who is actively doing the transition of a java enterprise app to cloud. What problems he/she is facing, how he/she is solving it and such.
2010-06-21 05:10:43