The number of microservices running in enterprises increases daily. As a result, service composition, governance, security, and observability are becoming a challenge to implement and incorporate. A “cell-based” architecture is an approach that can be applied to current or desired development and technologies to address these issues. This technology-neutral approach helps cloud-native dev teams become more efficient, act in a more self-organized manner, and speed overall release times.
In this talk, Asanka will introduce the "cell-based" architecture, which is decentralized, API-centric, cloud-native and microservices friendly. He will explain the role of APIs in the cell-based approach, as well as examine how real applications are built as cells. Asanka will explore the metrics and approaches that can be used to measure the effectiveness of the architecture and explore how organizations can implement the cell approach.
19. Business vs technical services
picture credit: https://www.flickr.com/photos/arpadlukacs/
20. Service: Technical definition
A code exposes through an
interface that describes a
collection of operations that
are network accessible using
a standardized messaging
protocol.
21. Service: Business definition
Software components that
can be spontaneously
discovered, combined, and
recombined to provide a
solution to a business
problem.
22. Microservice: Technical definition
A microservice must have a
single purpose and be loosely
coupled in design and
deployed independently of
other microservices.
"Micro" is a concept of scope
rather than size.
23. Microservice: Business definition
Microservices is an approach to
application development in
which a large application is built
as a suite of modular
components or services.
These services are built around
business capabilities.
31. Component: Atomic Units
A component represents a
process or business logic
running in a container,
serverless environment, or an
existing runtime. A component
is designed based on a specific
scope, which can be
independently run and reused
at the runtime.
32. Cell: Units of Enterprise Architecture
A cell is a collection of
components, grouped from
design and implementation
into deployment. A cell is
independently deployable,
manageable, and observable.
36. Control Plane:
- Signaling of the network
- Makes decisions about the traffic flow
Data Plane:
- Forwards traffic between hops
- Takes data packets
picture credit: https://www.flickr.com/photos/teflon/
Management Plane:
- Configure
- Observeabiltty, Monitor
37. Inter and Intra Cell communication
Local-mesh
Global-mesh
DP- data plane
CP- control plane
MP- management plane
41. Automated Governance (Re)-enables Flow
Policy Store
(Registry)
Observability
(Monitoring/
Analytics)
Policy
Enforcement
(GW)
Automated governance is made
of three things:
A source of truth:
Policy store/registry
Enforcement of the policy
Gateway or plugin attempting to keep
the desired state
Observability
How close to the desired state are we?