microservice architecture (microservices)
Microservice architecture, also referred to as microservices, is a phrase used in software design to refer to a single software application designed as a suite of independently deployable small services. For example, the small application might support multiple clients, expose APIs and integrate with other applications.
Microservices are basically designed to receive then process requests and respond accordingly, independent of other services. Over time the services can evolve to meet changing business needs.
Common Characteristics of Microservices
Currently there is no formal definition of microservice architecture, but software built as microservices do share common characteristics and functions, including multiple component services that can be deployed independently without compromising the application. Microservices are generally designed around business capabilities and priorities.
Another important characteristics of microservices is that the services, while bounded are composed of loosely coupled elements. This enables developers to update the services independently as business needs change. For example, when one service is updated and redeployed it will not impact other services or require other services to be updated.
Microservice Architecture Is Similar to Service-Oriented Architecture (SOA)
Microservice architecture is considered to be the opposite of monolithic architecture and similar to Service-Oriented Architecture (SOA). It differs from SOA in that SOA is a broader framework whereas microservices is more refined.
Stay up to date on the latest developments in Internet terminology with a free weekly newsletter from Webopedia. Join to subscribe now.
Webopedia's student apps roundup will help you to better organize your class schedule and stay on top of assignments and homework. Read More »List of Free Shorten URL Services
A URL shortener is a way to make a long Web address shorter. Try this list of free services. Read More »Top 10 Tech Terms of 2015
The most popular Webopedia definitions of 2015. Read More »
Java is a high-level programming language. This guide describes the basics of Java, providing an overview of syntax, variables, data types and... Read More »Java Basics, Part 2
This second Study Guide describes the basics of Java, providing an overview of operators, modifiers and control Structures. Read More »The 7 Layers of the OSI Model
The Open System Interconnection (OSI) model defines a networking framework to implement protocols in seven layers. Use this handy guide to compare... Read More »