October 22, 2018

Java Microservice Framework

What is a Microservice?

There are no clear definition, but it is like "fine grained SOA".

Why Microservice?

  • "Improves modularity and makes the application easier to understand, develop, and test."
  • "It parallelizes development by enabling small autonomous teams to develop, deploy and scale their respective services independently."
  • Easier to refactor a small part, instead of a monolithic system.

Why not Microservice?

  • "Services form information barriers."
  • "Inter-service calls over a network have a higher cost in terms of network latency and message processing time than in-process calls within a monolithic service process."
  • "Testing and deployment are more complicated."
  • "Moving responsibilities between services is more difficult.[1] It may involve communication between different teams, rewriting the functionality in another language or fitting it into a different infrastructure"
  • "Viewing the size of services as the primary structuring mechanism can lead to too many services when the alternative of internal modularization may lead to a simpler design."

Read more https://en.wikipedia.org/wiki/Microservices.

Examples of Java Microservice Framework

  • Javalin
  • Spark Java
  • Micronaut
  • Ktor
  • Ktor
  • Jooby
  • Akka HTTP
  • Dropwizard
  • Jodd
  • Armeria

Read more https://www.e4developer.com/2018/06/02/the-rise-of-java-microframeworks/.

No comments: