Seamless App Development and Content Delivery with Containerization and Microservices
Most of the modern application development involves use of a combination of different technologies. And hence application development is linked and dependent on the underlying technologies and their respective versions. Further, the development, test or production environments can differ across OS, hardware etc. This complicates the task as one needs to maintain correct versions of different technologies across each environment.
Containers to Rescue
The concept of containerization first emerged with the release of Unix Version 7 and chroot system in the late seventies. It gained momentum in 2000s with the introduction of Free BSD Jails, LXC, AIX Workload Partitions and Solaris Containers. However, containerization truly arrived at the scene with the advent of the open-source Docker Engine in 2013.
Container technologies are packages that contain an entire runtime environment including a program, dependencies, libraries and other binaries and configuration files. Containers help to build, run, and migrate applications in different environments while retaining full functionality. Thus, containerization helps to ensure compatibility between different vendors. Other benefits include ease of management, fault isolation, and security. This allows developers to create and deploy applications quickly and securely, independent of the system.
Containerization fits well with modern application development practices and DevOps principles. It has become popular with the growth of platforms such as Docker and Kubernetes. Docker is one of the most popular and open-source based container formats. It is supported on Google Cloud Platform and by Google Kubernetes Engine. The application containerization market has been growing at ~40% during 2015-2019 to reach ~$2 billion in 2019. It is projected to grow further at a 26.5% CAGR during 2019-2025 to reach $8.2 billion in 2025. 
Containerization and Microservices combined further Simplify App Development
Flexibility of containerization allows it to be deployed in a number of different architectural environments from a traditional monolith to a modular microservice. While a microservices architecture allows a single application to be composed of many loosely coupled and independently deployable smaller components, or services.
Microservices allow components or services to have their own technology stack, inclusive of the database and data management model and to communicate with one another over a combination of REST APIs, event streaming, and message brokers. It allows developers to focus on updating specific areas of an application without impacting it as a whole, resulting in faster development, testing, and deployment.
The use of microservices has been increasing over the years not only among larger companies but also in smaller companies. According to a survey conducted by O’Reilly among its subscribers in 2020, more than three-fifths (61%) of the respondents were using microservices for a year or more. Some of the top benefits respondents associated with microservices are feature flexibility, responding quickly to changing technology and business requirements, and more frequent code refreshes among others. The respondents of the survey also mentioned that the use of containers is one of the strongest predictors of success with microservices.
When used together, microservices and containerization perform well. Containerization can be deployed for each microservice and the service mesh network that connects them. A microservice developed within a container gains all of the benefits of containerization - portability in terms of the development process and vendor compatibility (no vendor lock-in), as well as developer agility, fault isolation, server efficiencies, automation of installation, scaling and management, and layers of security, among others.
Tridion Containerized Content Delivery – A Complete Solution
Tridion’s content delivery platform is called Dynamic Experience Delivery, or DXD in short. It consists of standalone microservices that enable publishing of content to any touchpoint. Each of these microservices has a particular capability and provides flexibility to allocate the cores as per the requirement. DXD can be extended with additional components such as Antenna House Formatter and XPP publishing engines for templated, document centric output.
Tridion containerized content delivery provides the flexibility to publish the content from a single-source and deliver it in any type of output format and in any language. It supports web delivery, contextual delivery and document and file delivery.
Benefits of Tridion containerized content delivery include:
- The scalability required to match the ever increasing publishing volumes while optimizing the use of hardware resources
- Help to automate the delivery of multi-lingual content in desired formats for both online and document / file delivery
- Option to query any information source through the Tridion Integration Framework and combine content with other data as part of the output process
- Ability to publish from a single-source, eliminating copying and cloning the content
- Reach customers on any channel, mash up content from various sources and improve content discovery
In short, Tridion’s containerized content delivery system offers a one stop solution for optimized global content delivery.
Microservices and containerization have brought a sea of change in terms of how applications are built and deployed across not only large, but also small organisations. Microservices on its own can be complex but using containers for deployment helps in minimizing the complexity. Tridion containerized content delivery offers a precise and flexible solution to not only publish content from a single source but also to deliver content in multiple formats and languages, resource and cost effectively and with the desired performance.
For more details on containerization of Tridion Content Delivery, read our technical paper here