What comes after microservice?

(Jin Qing’s Column, Oct. 25, 2021)

Reading “The Evolution of Distributed Systems on Kubernetes” from Bilgin Ibryam.

What are the purpose of projects like Dapr, Istio, Knative? How can they change the world?

Modern distributed systems

The needs of distributed systems:

  • Business logic
  • Other
  • Lifecycle: deploy, rollback, upgrade, scale, stop, isolate, config
  • Network: connect, circuit break, retry, timeout, load balance, discover, security, trace
  • Resource binding: to API, protocol, message, data format
  • State: stateless, stateful, store

Monolithic architecture

enterprise service bus (ESB): not distributed

Cloud-native architecture

Kubernetes: Lifecycle

Service Mesh

Istio: Networking

Serverless

Knative: scale

Dapr

Networking, resource binding, state

Trends

  • Lifecycle: Kubernetes + operator
  • Networking: Envoy
  • Binding: Apache Camel
  • State: Cloudstate

Multi-runtime microservice

Write business logic as another runtime. Here runtime is a process?

What comes after microservice

Faas is not the best. Multi-runtime microservice maybe is.

Mecha architecture