Technology & platform⏱ ~1 min

Microservices

Architecture where an application is split into small, independent services that communicate via APIs.

Microservice architecture is an approach to system development in which an application is divided into many small, independent services - each with a single clearly defined area of responsibility, its own data storage, and communication with other services via APIs (typically RESTRepresentational State Transfer - architectural style for APIs based on HTTP and resource-oriented design. or gRPCGoogle Remote Procedure Call - high-performance framework for service-to-service communication based on HTTP/2 and Protocol Buffers.) or message queues (KafkaDistributed event streaming platform - widely used for real-time data pipelines and event-driven architectures., RabbitMQOpen-source message queue for asynchronous and reliable communication between services.). Microservices are contrasted with monolithic architecture, in which all functionality resides in a single codebase. The advantages are independent scaling, isolated fault domains and the ability to make different technology choices per service. The disadvantages are increased operational complexity (many deployable units), network latency between services and the need for robust observabilityThe ability to understand a system's internal state from its outputs - built on the three pillars of logging, metrics, and distributed tracing.. In the Norwegian energy sector, many legacy KISCustomer Information System - the core system at power suppliers and grid companies for customer management and billing. and MDMMeter Data Management - system for collection, storage, quality assurance and distribution of metering data from the electricity grid. systems are monolithic - whereas newer platforms such as SAMTYGDTvimenning platform for Elhub integration - handles all message types and processes to Elhub. are built on microservice architecture in cloud infrastructure.

ArchitectureDevelopmentCloud