Questions tagged [microservices]

An architectural approach to developing a single application as a suite of small individually deployable services.

The microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare mininum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.

Microservices Definition by Lewis/Fowler

Properties:

  • The services are easy to replace.
  • Services are organized around capabilities, e.g. user interface front-end, recommendation, logistics, billing, etc.
  • Services can be implemented using different programming languages, databases, hardware and software environment, depending on what fits best.
  • Architectures are symmetrical rather than hierarchical (producer/consumer).

Philosophy:

  • The services are small - fine-grained to perform a single function.
  • The organization culture should embrace automation of deployment and
    testing. This eases the burden on management and operations.
  • The culture and design principles should embrace failure and faults, similar to anti-fragile systems.
  • The services are elastic, resilient, composable, minimal, and complete.

Books:

Besides there are thousands of books that speak about microservices focused on some language like Python or Java or some platforms like Azure or AWS easily to find.

Articles

The following is an great article series from the NGINX Blog.

Sites

9062 questions
47
votes
17 answers

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

I am very new to the microservices and trying to run the code from link: https://dzone.com/articles/advanced-microservices-security-with-spring-and-oa . When I simply run the code I see the following error comes. What is the issue…
user5778069
46
votes
2 answers

What is the role of Zookeeper vs Eureka for microservices?

I am going to implement the orchestration of a set of microservices in my application. Two widely using tools I found Apache Zookeeper and Netflix Eureka. Can anyone please give a comparison based on fundamental differences, those two services…
44
votes
2 answers

What is a microservice?

Microservice for this, microservice for that, but explain to a simple person what is microservice? I'm a simple programmer with a little almost none theoretical background. But I don't need a term microservice to do what I do. Could someone explain…
Konrad
  • 6,385
  • 12
  • 53
  • 96
43
votes
2 answers

Decompose microservices: Business capability vs Domain

As I read, there are two patterns to define one microservice, by business capability and by subdomain. But I still find it very ambiguous. I get confused how these two patterns differentiate from each other. Both of them revolve around activities…
necroface
  • 3,365
  • 10
  • 46
  • 70
43
votes
7 answers

Microservices: How to store source code of many microservices?

Currently, I have 20 microservices for one project. And every microservice stored in separate GIT reposotiry. Subsequently, the number of services will increase to 200 (or more). Every service has unit tests and integration tests. Every service has…
kazhuravlev
  • 5,385
  • 3
  • 15
  • 8
42
votes
1 answer

Use docker-compose with multiple repositories

I'm currently struggling with the deployment of my services and I wanted to ask, what's the proper way when you have to deal with multiple repositories. The repositories are independent, but to run in production, everything needs to be launched. My…
Mathias Aichinger
  • 883
  • 2
  • 8
  • 16
40
votes
3 answers

Websockets in microservices architecture

Let's say we have a notification service which read an event from message queue and notify all web clients in real time. I know how web socket work but i am puzzled when there is an API gateway in between then how web socket connection is maintained…
Vip
  • 1,448
  • 2
  • 17
  • 20
40
votes
3 answers

Authentication between microservice approach

I am currently building an API based around a microservices architecture. I am using JWT to authenticate users. I understand that when a user sends a login request a JWT containing the users identity and their roles/permissions etc is returned. This…
mwild
  • 1,483
  • 7
  • 21
  • 41
40
votes
1 answer

Use docker-compose to pull images from private repository

I'm using docker-compose command to run multiple containers. The problem is my docker-compose has to pull some images from the public repository and some from a private repository. What I'm planning to do is push all required images to the private…
utkarsh31
  • 1,439
  • 2
  • 13
  • 20
40
votes
3 answers

Join table between Different Microservices

I am still trying to make sense of micro service architecture. The idea to separate different application (include the database) excites me. But I am still confused if there are two micro-services e.g. Product and User. both product and user own…
Robert Limanto
  • 2,068
  • 4
  • 17
  • 27
40
votes
4 answers

How does Ballerina differ from other languages?

Ballerina is a general purpose, concurrent and strongly typed programming language with both textual and graphical syntaxes for better integration Is Ballerina an interpreted language? How to build Ballerina programs? Do we need to set…
Abimaran Kugathasan
  • 31,165
  • 11
  • 75
  • 105
39
votes
6 answers

Eureka and Kubernetes

I am putting together a proof of concept to help identify gotchas using Spring Boot/Netflix OSS and Kubernetes together. This is also to prove out related technologies such as Prometheus and Graphana. I have a Eureka service setup which is starting…
38
votes
4 answers

Data Sharing between micro services

Current Architecture: Problem: We have a two-step flow between frontend and backend layers. First step: The frontend validates an input I1 from the user on microservice 1 (MS1) Second step: The frontend submits I1 and more information to the…
37
votes
4 answers

Microservices: what are pros and cons?

What are pros and cons of using microservices in comparison with alternative architectures? Is there a rule of thumb when microservices should be used?
user299702
  • 785
  • 2
  • 9
  • 15
36
votes
2 answers

How to get docker toolbox to work with .net core 2.0 project

I'm getting an error trying to use the Docker functionality with my .NET core 2.0 project. I've been getting an error message saying Visual Studio Container Tools requires Docker to be running before building, debugging or running a…
ddeamaral
  • 1,403
  • 2
  • 28
  • 43