Today, I googled PaaS for sometime. I have never expected that PaaS is quite in light in Computer field. I have came across lot of things on PaaS (particularly Java PaaS) and I think that PaaS will grow in future.
What is PaaS:
I think all XaaS are self descriptive. I mean SaaS, PaaS, IaaS. To run any Software/Application/Product, there are three thing required. Application, Server/OS, Hardware.
Application is the actual program which will be used by end-user. If you provide your application as a service means to use your application end-user has to pay something then it’s SaaS.
The next is Server/OS – Being company “ABC”, I want to deploy my web application on server but I don’t want to maintain Application Server, Database, OS on which my web application will run. In this scenario, I will hire Platform service from one of the PaaS provider.
The last is Hardware, Being company “ABC”, I have my web application and I also have Application Server license. I just don’t want to invest on Hardware part. I will go for IaaS provider like Amazon.
Now particularly on PaaS, it’s not only about Application server or OS. It’s about, I am a developer, I have some idea which I want to implement as my InnovativeApp. From start of development of InnovativeApp, testing of App, build of App, deployment of App, monitoring of App .. everything I can get from PaaS provider. In sort, I have my idea and that idea converted to InnovativeApp and user started using it .. everything can be done by service provided by PaaS.
Why IaaS – No need to invest on data center and hardware. Just pay for number of hardware you use for given duration in hours.
Why SaaS – No need to purchase licence of Software. If I want to convert a PDF file to Word, I no need to get licence of my favorite software. If my favorite software is available as a Service then I can use it by paying in hours basis (or may be number of time I use service basis)
Why PaaS – No need to purchase licence of Application server, Database. No need to maintain Application Server. If I have my web application ready, I can just deploy on PaaS. Now, if number of hits on my web site increase then PaaS will take scalability for my web application. In terns, I only need to pay in hourly basis. And tomorrow I plan to shut down my site, I just need to un-registered from PaaS and remove my web application.
PaaS for Java:
There are many PaaS available which support deployment of Java application. I don’t want to repeat it .. I found some good link for that.