Develop Container — Less Application with Spring Boot
Before start this if you don’t know about the Docker/Container please go through my previous blog which I mention Docker. Click this below link and redirect to my blog:
When you port your web application on a container, that container can handle more than one application. So if you have 10 application which runs in a single container. Just assume jboss server or weblogic server. Then if one application has some problem. So have to restart. Then all of the other 9 applications will go offline. So we are writing business critical high-level applications. So it is not fair to restart those applications. Just because we get problem with other application which shared same web container.
And the second problem is nowadays we deploy our applications on the cloud. So when we deploy in the cloud most of the time we don’t have the luxury to restart our web container. Also if you are sharing different configuration on different web application what you are using, so that would not easy to maintain those because if two different versions of the same configuration that is like hard to configure.
So now as a solution developer came up with the concept call container less application.
What is a Container less Application?
If you have a container and if you port your web application on that container so u have to restart the container in case of applying some configuration. But how about this container less application, You embed the bed server or container to your application. So when you run your web application it will start a container and it will work on top of that container. So that means your application will come up with its own container. So you can do whatever you want to that container. Because its soul dedicated to that application. Its all the purpose of living is to give the container to this own application.
Advantages of Container less Application
- Can do restart
- Can set own configuration
- Layers and image version control
- Rapid deployment: Precious time gains
- Orchestration: Take it to the next level
When you using containerize an application you are developing/Implementing just a java application. So the only thing is you are embedding your server into that. When you are run the application, that application will create a container and work on that container.
let's see how we can do this? There are multiple ways and a lot of frameworks out there.
Ex:- Spring boot, Flash, PlayFramework, spark, ASP.NET Core…etc.
Let's see how we can write container less applications in few minutes by using Spring boot.
First of all, we need a clear understanding of how these frameworks are work!
It has its own HTTP server, its own REST API, such as implementation framework and other utilities. If we get spring boot so it’s come with the spring, an apache. If you take dropwizard framework its comes with the jersey as REST API framework and jetty as the HTTP server. So everything is in build.
Let us see how we can write container less application use with spring boot. Please go through this video which I mention below. It will give a clear picture