2. BUCA’sjourney
Founded
BUCA JSC was
founded at 16th March
2013
A-BIGTIME
Deploy a product
to more than 100
embassy
TOP IT Company
Archived TOP IT
Company award
SRP
SRP eco-system
for education was
launched
Social Security
Social Security eco-
system was launched
March 2013
2009 2016
2014 2017
3. BUCA’sproducts
Financial
Providing accounting
software for
administrative segment
Education
SRP is an ecosystem to solve
school mangement which
contaíns multiple modules
such as school
management, library
management, equipment
management….
Smart city
support cities
implement digital
transofrmation strategy
via technical solution
inlcuding social security
ecosystem, smart
traffic, smart travel…
5. The Monolithic Architecture
● It is a GOOD architecture when
commencing project
● Most of technologies in stack is
EASY to implement and
SYNCHRONIZE throughout a
project
● Only one package which leads
to DEPLOY application more
EASIER
● SMALL TEAM maintains a
project
6. MonolithicArchitecture
Component
dependencies
Components stick hardly
which leads to side effect
on application
Lack of product
innovations
Significantly change
when apply a new
technology
Non-optimization
resources
Huge a large of server
resource to start an
application
Long time to add
new features
Waste a lot of time to add
a new feature and
restructure a project hardly
Obstacle when
deployment
mandatory deployment
an application even
slight change
Difficult to scale
application
Cann’t split service to
scale particular services
12. Eg: RDBMS, NoSQL,
Elastichsearch, Distributed
cache…
Data Storage
Eg: code, libraries…
Business Logic
GET /orders
POST /orders
Public APIs
DetailofaMicroservice
14. Microservices only rely on each
other’s public API
Principle1
“
Micro-service A
Micro-service B
Public
API
Never
15. Secure your services
Principle2
“API
Gateway
API Gateway (“Front door”)
API Throttling
Authentication & Authorization
• Client–to–server, as well as service–
to–service
• Token-based auth (JWT token)
• IAM-based Authentication
16. Be a good citizen within
ecosystem
Principle3
“ Micro-service A
Distributed tracking and monitoring
• Which services were involved in a
request?
• How did downstream dependencies
platform
Micro-service B
Shared metrics
• E.g. request time, time to first byte
Distributed tracking
• E.g. Zipkin, Spring Cloud Sleuth
20. ● This application is cross-platform for both the
server and client side which is based on .NET
Cor, it's capable of running on Linux or
Windows containers depending on your
Docker host. It also has a Flutter mobile app
that supports Android and iOS
● The architecture proposes a microservice
oriented architecture implementation with
multiple autonomous microservices
● The microservices also showcase different
approaches from simple CRUD to more
elaborate DDD/CQRS patterns
Overview
21. ● The architecture also includes an
implementation of the API Gateway pattern, to
publish simplified APIs and include additional
security measures for hiding/securing the
internal microservices from the client apps or
outside consumers.
● Currently these API Gateways only perform
request forwarding to internal microservices
and custom aggregators, giving the clients
then experience of a single base URL
APIGateway
22. ● There are different types of microservices
according to their internal architectural
pattern and approaches depending on their
purposes. For example
○ Identity micro-service is using ASP.NET
Core Identity & Identity security token
service
○ Core micro-service is an CRUD micro-
service using Redis cache
○ Daynghe micro-service is applying
domain-driven design using DDD pattern
InternalArchitecturePatterns
23. ● There are eight SQL Server databases, but they
are all deployed to a single container, to keep
memory requirements as low as possible. This
is not a recommended approach for
production deployment, where you should use
high availability solutions.
● There are also one Redis, in separate
containers, as a sample of two widely used NO-
SQL databases.
Databaseserver