Fujitsu develops technology delivers stable system quality even with frequent updates to "microservice" application elements
Sep 29, 2019
Helps developers by automatically adjusting microservice configuration parameters to enable rapid improvements for user interface and addition of new features in variety of online applications
September 27, 2019
Fujitsu Laboratories Ltd. today announced the development of a technology for automatically adjusting the configuration parameters of microservices in a system. In recent years, developers have increasingly opted to develop systems that consist of multiple microservices, which can be independently developed and operated to meet demands according to service requirements including response time, availability, and cost.
While this approach has proven effective and versatile, in the past changes to a single microservice, including the addition of new features, could delay or otherwise impact the entire system. As a result, in order to ensure service quality, developers had to validate the entire system with every update. With the introduction of Fujitsu's new technology, which automatically adjusts parameters to guarantee proper operations for the entire system, users can now easily maintain service quality even when making changes to microservices.
This allows systems administrators to enjoy the full benefits of a microservice architecture, enabling rapid system improvement while still allowing developers to make changes as frequently as needed with consistent, high-quality service.
Background of the development
Microservice architecture is a software development method in which multiple, discrete service elements (microservices) are developed and operated separately and connected together to form a single system. Web services like e-commerce and travel sites, which require frequent updates for new features or user interface revisions, increasingly rely on microservice architecture in development for this reason.
If a new function for electronic money transactions for smart phone is added to the settlement service in an EC site, for example, it can impact the performance of other services related to the main system by causing delays and decreases in accepting incoming user traffic. This means that in order to maintain service quality, developers must verify the entire system from a user experience perspective even after making updates to just one microservice.
Figure 1. Microservice Change Impact Image
Fujitsu has developed a technology that automatically adjusts the configuration parameters for each microservice in the execution infrastructure according to service priorities including response time, availability, and cost. This ensures continuity and quality for the entire service when an individual microservice undergoes updates. The features of this technology are as follows.
1. Simulation technology to estimate service quality
Based on queueing theory, the technology uses mathematical models to analyze waiting lists and mitigation measures to model communication between microservices inside the system between the moment a user makes a request until the system responds. Leveraging this technology, Fujitsu has developed a technology that simulates the behavior of the system overall, including the amount of communication and the time required in response to an update to an individual microservice. This enables developers to readily quantify both the quality of the overall service as well as individual microservices.
2. Automatic adjustment technique to search for optimal parameters
By combining genetic algorithms(1) and quality simulation techniques, Fujitsu has developed a technology that searches for the optimal combination of configuration parameters, such as CPU /memory allocation, and number of retries, given the quality requirements of the services as constraints. This allows developers to quickly determine configuration parameters that balance quality of service with quality of individual microservices. The technology additionally adjusts the parameters automatically to set a timeout period for communication that doesn't frustrate users in the case of a delay, or to determine what happens when a low-priority service is disconnected to prevent disruptions in communication between users and the system.
An in-house streaming service built with the microservice platforms Kubernetes(2) and Istio(3) has been used to confirm that parameter adjustments configured with the newly-developed technology can reduce the time required from 3 days for manual revision to just 1 hour.
Fujitsu Laboratories is working to further increase the speed of this technology, and after the conclusion of in-house trials in September 2019, Fujitsu aims to put the new technology into practical use in fiscal 2020.
Stay up to date with the latest industry developments: sign up to receive TelecomTV's top news and videos plus exclusive subscriber-only content direct to your inbox – including our daily news briefing and weekly wrap.