Why Java will shine on the Cloud?
Java has made remarkable strides in the Information technology landscape ever since its inception in 1995. The fabric of the Java ecosystem today has a widespread global adoption combined with the huge number of consumers,developers and followers. The ‘Java economy is also huge’
The key for Java to make this sort of an overwhelming impact is because of two key reasons apart from the fact of it being a very powerful programming language by design.
The WORA model fueled its adoption and proliferation across heterogeneous systems.
The J2EE specification made it possible for Java to be highly suitable for “Enterprise Needs” . But more importantly, again more importantly to stress this, J2EE specifications helped prevent LOCK-INs with technology and vendors for the end users. It also helped create a “common development model” that created a number of quality products and a huge ecosystem of developers.
In my belief , the very same reasons will make Java to shine on the Cloud. PAAS (platform as a service) would be the name of the game in this emerging space. SandHill in its recent research study has mentioned that “Fear of Lock-ins” will be one of the main inhibitors to the cloud adoption. Simon Ellis of Slice Lab in his blog says that Cloud “Lock-in” is a bigger issue than security , which is true if you were to to assess the impact of getting a business locked to a technology or a vendor. Given below are some of the important questions representing the possible scenarios businesses will start considering or facing when starting to use Cloud services . The ground for this is getting bigger.
1. Can I move my IT service to another Cloud service provider if the QOS and SLA are not meeting the business objectives ?
2. What would be the efforts needed to re-engineer or migrate my service from one cloud to the other?
3.How much would it cost to migrate my application/service to another cloud?
4. I want to deploy my ondemand service with different cloud service providers in order to reduce the risks of depending on one vendor
5. Our services with Vendor A is not scaling up or scaling up is not flexible or complex, I am on the lookout for moving my service to another cloud where we can scale up easily.
6. I understand that there are other cloud services that offers competitive costs where I can run my service. I would like to leverage this opportunity.
7. It is becoming a nightmare to manage our services with this cloud service. We have a lot of overheads to maintain and manage. I am seriously looking at moving to another Cloud service provider who offer seamless service management.
8. My service provider’ business is not doing well. I am looking out for other options to quickly migrate ?
Basically , The end users would be in deep trouble or at a loss if they are struck with a proprietary cloud platform and doesn’t have a viable option to migrate to another similar platform or if there is no other service provider available to run such a service.
Next , they would not be in a position to capitalize on the low cost ,high efficiency Cloud services that may emerge with the advances in technology and products in future.
Here is where there is a greater likelihood for Java to answer/ solve most of such requirements and shine! Let’s look at the emerging Cloud Eco-System for Java/JEE on the Cloud. Today Java is available both at the IaaS (Infrastructure) and PaaS (Platform as a Service) models on the Cloud. Here is a list of the providers
- Amazon AWS – IaaS :
- One can spin off any JEE application server on a Unix or Windows Server
- Amazon AMI for Oracle and IBM Java servers
- Amazon Elastic Beanstalk
- Ready to use scalable services built for Java developers using the familiar Apache Tomcat software stack . This is almost like a PaaS service. Eclipse has a direct plugin for this.
- VMWare Cloud Foundry supports Spring for Java apps and apps for other JVM frameworks including Grails
- Redhat Shift : A PaaS for new and existing JBoss, Java EE6
- IBM Smartcloud :: Websphere JEE server ondemand
- Google App Engine for Java (however doesnot use a RDBMS backend)
- VMForce from Force.com that supports Java and spring
- Cloudbees , a PaaS for Java
- Cumulogic another PaaS for Java
- Microsoft Windows Azure : Java SDK
- There are other pure-play IaaS players like Rackspace,Terramark,Savvis,Flexiant,CloudSigma etc where one can deploy Java middleware and applications as most of them support a wide variety of OS that can run Java/JEE.
Java which already has deep pockets in the IT landscape with several million users ,followers and developers could become ubiquitous on the Cloud in the long term.
Most importantly, it will help end users to avoid lock-ins and thereby lower their business risks on the Cloud to a significant extent. With multiple options available to deploy Java based on-demand services, End users will have options to choose the vendors who offer the best price with performance to optimize their business. As a feedback effect,This is bound to fuel the demand and adoption of cloud.
Hence in my opinion, Java will shine on the Cloud.
End users (Web 2.0 firms,ISVs,Enterprises) seriously vying for Cloud/SaaS transformation of their business should seriously consider evaluating Java as a ‘critical’ part of their strategy & planning to reap the benefits.
Also,This is poised to create demand and new opportunities for a) ISVs who have products based on Java ,b) IT service providers who provide complex software development on the cloud using Java technologies and c) Java developers.
In Q2 2010, A report by Elance cites a 10X increase in demand for Google App Engine developers with Google providing high levels of SLAs to end users.