Container technology is rapidly gaining popularity, to the point of many technology clairvoyants predicting the end of the virtual machine. From a systems perspective a virtual machine and a container have very similar hardware requirements, an amount of CPU, memory, disk and access to the network. Memory is as ever the hottest commodity (perhaps closely competing with storage performance). The ability to spin up containers at a whim is a key to their popularity, whether this is leveraging native Docker, Rocket or LXC, or using the full automation power of Mesosphere, Kubernetes, Docker Data Center, Swarm or any other tool, the automated ability to spin up and destroy applications with little consideration to the infrastructure impact really is one of the key advantages.
However a key constraint during the lifecycle of an application being developed on containers is the ability to have the same building block infrastructure components available in each stage. As a container this can be very simply encapsulated, but the physical infrastructure still needs to be able to support this. As ever memory is a key component that is often not available in the quantities required, and maintaining consistent performance and capacities is key to maintaining a valid continuous development or continuous integration environment across multiple development tiers. It is important to ensure that local development machines, centralised development servers and then into live production systems have consistent memory capacities and performance to ensure a simplified development programme and allow consistent deployment across environments.
Finally many development teams are adopting a multi-live system (maybe call it A/B or Blue/Green deployments), where multiple code bases are active at any one time, and load is simply distributed across new releases as they are available and proven. Some organisations are releasing several times a day (or even hour) and this means a production system could actually require 2-3 times the single code-base requirements. Once again this puts increased dependencies on the availability of both consistent memory capacity and performance.
To ensure that you are gaining the best performance from your server why not speak to one of our dedicated team to discuss your server ram upgrade options. You can contact them via live chat or call 0800 698 4100.