25 Microservices Terms You Need to Know
These key terms and definitions will give you a great place to start to jump into the microservices zone and start learning through tutorials, developer tips, and more!
Join the DZone community and get the full member experience.Join For Free
With the launch of our microservices zone, we compiled and defined the basic terms you'll need to know to understand the zone's topics and give you a spring board to jump into our wealth of microservices content!
API access controls and gateways: How to control the security of microservices.
Application Programming Interface (API): A software interface that allows users to configure and interact with other programs, usually by calling from a list of functions.
Container: Resource isolation at the OS (rather than machine) level, usually (in UNIX-based systems) in user space. Isolated elements vary by containerization strategy and often include file system, disk quota, CPU and memory, I/O rate, root privileges, and network access. Much lighter-weight than machine-level virtualization and sufficient for many isolation requirement sets.
Continuous Delivery: A software engineering approach in which continuous integration, automated testing, and automated deployment capabilities allow software to be developed and deployed rapidly, reliably, and repeatedly with minimal human intervention.
Decouple: Breaking monolithic applications into smaller components so legacy enterprises can pursue digital transformation.
Distributed System: Any system or application that operates across a wide network of services or nodes.
Distributed Tracing: A category of tools and practices that allow developers to analyze the behavior of a service and troubleshoot problems by creating services that record information about requests and operations that are performed.
Domain-Driven Design: A philosophy for developing software in which development is focused primarily on the business logic, the activities and issues that an application is supposed to perform or solve.
Enterprise Service Bus (ESB): A utility that combines a messaging system with middleware to provide comprehensive communication services for software applications.
Eventual Consistency: A data consistency model used to make distributed applications highly available by keeping data in sync and up-to-date across all services or nodes.
Fault isolation: Enables a microservice to crash and restart without causing a service outage.
Function as a service: A category of cloud computing services that provides a platform allowing customers to develop, run, and manage application functionalities without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.
Holacracy: A management practice for organizations that are separated into autonomous and independent departments based on roles, which can organize themselves and make decisions based on their duties. Holacracies are focused on rapidly iterating.
Java Virtual Machine (JVM): Abstracted software that allows a computer to run a Java program.
Message Broker: Middleware that translates a message sent by one piece of software to be read by another piece of software.
Microservices architecture: A development method of designing your applications as modular services that seamlessly adapt to a highly scalable and dynamic environment.
Monolith: A style of software architecture where the data and UI are all found on one platform, in a single program.
Orchestration: The method to automate the management and deployment of your applications and containers.
OWAT2: Microservices security best practice with OAuth.
Serverless: Cloud computing execution model in which the cloud provider dynamically manages the allocation of machine resources.
Service Discovery: The act of finding the network location of a service instance for further use.
Service Mesh: An infrastructure layer focused on service-to-service communication, primarily used for distributed systems and cloud-native applications.
Sociocracy: A mode of governance without a centralized power structure, aiming for less independence between teams to focus on organization-wide strategy.
Twelve-factor application technology: A methodology for building modern, scalable, maintainable software-as-a-service apps.
Web Service: A function that can be accessed over the web in a standardized way using APIs that are accessed via HTTP and executed on a remote system.
Opinions expressed by DZone contributors are their own.