Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Micro services as architectural concept
Search
Aimeos
May 09, 2016
Programming
0
700
Micro services as architectural concept
What are micro services, some history and how we use it in Aimeos
Aimeos
May 09, 2016
Tweet
Share
More Decks by Aimeos
See All by Aimeos
PHP Map
aimeos
1
150
GraphQL vs. JSON:API
aimeos
1
240
Responsive E-Mails
aimeos
0
670
gigacommerce
aimeos
0
3.2k
High performance e-commerce in Laravel
aimeos
0
920
E-Commerce in TYPO3 mit Aimeos (Deutsch)
aimeos
0
460
Aimeos - high performance e-commerce in TYPO3
aimeos
0
320
Aimeos e-commerce components
aimeos
1
210
E-Commerce in TYPO3 - Reloaded
aimeos
0
310
Other Decks in Programming
See All in Programming
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
120
AIコーディングエージェント(Gemini)
kondai24
0
280
AIコーディングエージェント(skywork)
kondai24
0
200
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
390
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
120
Navigating Dependency Injection with Metro
l2hyunwoo
1
180
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
170
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
160
ゆくKotlin くるRust
exoego
1
160
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
4
1.2k
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
290
Vibe codingでおすすめの言語と開発手法
uyuki234
0
120
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Design in an AI World
tapps
0
100
Building Applications with DynamoDB
mza
96
6.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
120
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
170
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
A designer walks into a library…
pauljervisheath
210
24k
Speed Design
sergeychernyshev
33
1.4k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
130
Transcript
Micro services as architectural concept
Previous applications architectures
“Spaghetti”
Function 2 Function 3 Function ... Application Function 5 Function
4 Function 1
Objekt oriented
Object 1 - Data - Methods Object 1 - Data
- Methods Object ... - Data - Methods Application
Layer model
Layer 1.3 Layer 1.2 Layer 1.1 Layer 2.2 Layer 2.1
Application
Similarity: Deployment monoliths
Micro services
Single, independent applications
Layer 2.2 Layer 2.1 Layer 1.3 Layer 1.2 Layer 1.1
Application 1 Application 2
Requirement: Domain driven design
Layer 1.3 Layer 1.2 Layer 1.1 Layer 2.2 Layer 2.1
Layer 3.4 Layer 3.4 Layer 3.1 Layer 3.2 Domain 1 Domain 3 Domain 3
Micro services in “real life”
Domäne 3 Domain 1 Domain 2 Domain 5 Domain 4
Domain 3 Bounded contexts
Interfaces and data exchange
Domain 1 Domain 5 Format? Versioning? Compatibility? Fault tolerance? Number
of calls? Common data model?
Shared kernel
Domain 1 Data model Domain 3
Best case • Work independently from each other • Extendable
by different teams • Exchangeable • Scalable
Worst case • Erros are even harder to find •
Increased total complexity • Performance suffers • Cascading outages
Aimeos
E-Commerce components for integration into applications
None
Layer model
Config Data access JQAdm JQuery Frontend client List ... Basket
Admin controller Frontend controller PHP I18n Config Database View Logger Session Bandend application Frontend application ExtAdm JsonAdm ExtJS JSON API
Data domains
Product Catalog Index Order ... 16 Datendomänen Data access
Separation into stacks for micro services
Config List Client ... Client Cntl ... Cntl Product ...
Order ... Basket By domain
Frontend client List ... Basket Frontend controller Data access By
use case Config JQuery JQAdm ExtAdm JsonAdm Cntl Cntl Cntl Data Data Data ExtJS JSON API
Frontend client List ... Basket Frontend controller Data access With
shared kernel JQuery JQAdm ExtAdm JsonAdm Admin Controller ExtJS JSON API
As Composer packages • Aimeos core (shared kernel) • HTML
client (frontend) • JQAdm (JQuery admin) • ExtAdm (ExtJS admin) • JsonAdm (JSON admin API) • Jobs (cronjob controller)
Open questions
Further separation? Frontend? Shared admin controller?
Best size for micro services?
Aimeos aimeos.org Twitter: @aimeos facebook.com/Aimeos