July 28, 2014 | Written by: Hao Zhang
Share this post:
IBM Bluemix is an environment for you to develop and deploy your own applications. But what happens when you deploy applications on Bluemix? How does Bluemix manage the deployment of applications? In this blog post, I will help you unveil the mystery.
Bluemix is designed to build on Cloud Foundry open source technology. Bluemix is the IBM cloud platform that provides mobile and web developers with IBM software services and services from our business partners. It allows you to play like a kid in a sandbox, except that the sandbox is enterprise-grade.
What happens when you deploy applications on IBM Bluemix?
When you create and deploy an application in Bluemix, you also provide the configuration information about the application. Then the Bluemix environment determines an appropriate virtual machine (VM) to which this application is sent.
After a VM is chosen, the application manager on each VM installs the framework and runtime for the application according to the configuration information your application provided. Then the application can be deployed into that framework. Your application will be started when the deployment is completed.
(Related: The why, what and how of IBM Bluemix)
Even though you have multiple instances for one application, don’t worry; you need to upload the application only once. Bluemix will help you to do the rest. It will help to deploy as many instances of applications as requested, on the same or different VMs based on the consideration of load balance. Sounds easy for you, right? Bluemix helps you to manage everything.
Deploying an application (Image courtesy: IBM Bluemix website)
How does IBM Bluemix manage the applications?
In Bluemix, each execution environment is designed to be isolated from the execution environment of other applications. So in each VM, you have containers to separate and protect the applications. In each container, Bluemix helps to install the appropriate framework and runtime the applications require.
In each VM, you also have an application manger, which is responsible for communicating with the rest of the components of Bluemix for the applications.
VM container (Image courtesy: IBM Bluemix website)
When a request comes in, Bluemix will check it out and determine the application for which the request is intended. Bluemix will select one of the instances of the application to receive the request.
Also, Bluemix is designed to auto-scale the host applications. When the load of your application changes, Bluemix will decide to create or delete instances of the applications, which means that the instances may be removed or re-created in another VM or container.
Bluemix can help you to deliver excellent applications. Come on and try Bluemix for yourself. Let me know what you think. Connect me on Twitter @HaohaoZhanghao to continue the conversation.