SlideShare a Scribd company logo
1 of 30
Download to read offline
Introduc)on	
  to	
  architectural	
  
pa1erns	
  
Georgiy	
  Podsvetov	
  
podsvetov@gmail.com	
  
Layered	
  architecture	
  
Presenta)on	
  layer	
  
Business	
  layer	
  
Persistence	
  layer	
  
Database	
  layer	
  
2	
  
Layered	
  architecture	
  
closed	
   • Presenta)on	
  layer	
  
closed	
   • Business	
  layer	
  
closed	
   • Persistence	
  layer	
  
Closed	
   • Database	
  layer	
  
•  Layers	
  communicate	
  from	
  top	
  to	
  down	
  only	
  
•  To	
  get	
  layer	
  below,	
  you	
  have	
  to	
  go	
  through	
  all	
  in	
  the	
  middle	
  
3	
  
What	
  if	
  we	
  have	
  some	
  kind	
  of	
  shared	
  
services?	
  
closed	
   • Presenta)on	
  layer	
  
closed	
   • Business	
  layer	
  
closed	
   • Services	
  layer	
  
closed	
   • Persistence	
  layer	
  
Closed	
   • Database	
  layer	
  
Do	
  we	
  s)ll	
  need	
  pass	
  all	
  request	
  throw	
  this	
  layer?	
  
4	
  
Open	
  layered	
  architecture	
  
closed	
   • Presenta)on	
  layer	
  
closed	
   • 	
  	
  Business	
  layer	
  
open	
   • 	
  	
  Services	
  layer	
  
closed	
   • Persistence	
  layer	
  
Closed	
   • Database	
  layer	
  
Some	
  layers	
  might	
  be	
  open.	
  	
  
5	
  
Layered	
  architecture	
  
•  Good	
  general	
  purpose	
  architecture	
  
•  Easy	
  to	
  implement,	
  test,	
  and	
  govern	
  
•  Good	
  star)ng	
  point	
  for	
  most	
  systems	
  
•  Not	
  always	
  op)mized	
  for	
  specific	
  business	
  
drivers	
  
closed	
   •  Presenta)on	
  layer	
  
closed	
   •  Business	
  layer	
  
closed	
   •  Services	
  layer	
  
closed	
   •  Persistence	
  layer	
  
Closed	
   •  Database	
  layer	
  
closed	
   •  Presenta)on	
  layer	
  
closed	
   •  	
  	
  Business	
  layer	
  
open	
   •  	
  	
  Services	
  layer	
  
closed	
   •  Persistence	
  layer	
  
Closed	
   •  Database	
  layer	
  
6	
  
Event-­‐driven	
  architecture	
  
•  Event	
  processor	
  topology	
  
•  Broker	
  topology	
  
•  Broker-­‐less	
  topology	
  
7	
  
Event	
  processor	
  topology	
  
Event	
  
queue	
  
Event	
  processor	
  
Event	
  
topic	
  
Event	
  
topic	
  
processor	
   processor	
   processor	
   processor	
   processor	
  
Event	
  
orchestra)on	
  
8	
  
Broker	
  topology	
  
Event	
  
topic	
  
Event	
  
topic	
  
processor	
  
processor	
  
processor	
  
processor	
  
processor	
  
Event	
  
topic	
  
Event	
  
processor	
  
processor	
  
processor	
  
media)on	
  
9	
  
Event	
  
process	
   process	
   process	
  
Broker-­‐less	
  topology	
  
Event	
  process	
  
process	
  
process	
  
10	
  
Event-­‐driven	
  architecture	
  
•  Highly	
  decoupled	
  and	
  distributed	
  
•  Highly	
  scalable	
  
•  High	
  degree	
  of	
  complexity	
  
•  Good	
  for	
  event-­‐based	
  business	
  models	
  and	
  
business	
  processes	
  
•  Not	
  good	
  for	
  processes	
  which	
  require	
  a	
  high	
  
degree	
  of	
  data	
  sharing,	
  orchestra)on,	
  and	
  
reuse	
  
11	
  
Service-­‐oriented	
  architecture	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
12	
  
Business	
  services	
  
Abstract	
  service	
  used	
  to	
  represent	
  a	
  business	
  
process	
  or	
  func)on	
  independent	
  of	
  the	
  
underlying	
  technology	
  or	
  pa1ern	
  
	
  •  Сan	
  be	
  derived	
  from	
  use	
  cases,	
  user	
  
stories,	
  user	
  scenarios	
  
•  Contains	
  a	
  service	
  name,	
  input	
  
specifica)on,	
  and	
  output	
  specifica)on	
  
•  Course-­‐grained	
  
•  Shared	
  across	
  the	
  enterprise	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
13	
  
Enterprise	
  services	
  
Concrete	
  services	
  that	
  implement	
  Business	
  
Services	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
•  The	
  rela)onship	
  between	
  an	
  Enterprise	
  
Service	
  and	
  a	
  Business	
  Service	
  is	
  either	
  
a	
  one-­‐to-­‐one	
  or	
  many-­‐to-­‐one	
  
rela)onship	
  
•  Course-­‐grained	
  
•  Represent	
  ac)ons	
  against	
  major	
  data	
  
en))es	
  
•  Usually	
  require	
  some	
  sort	
  of	
  service	
  
orchestra)on	
  
•  Shared	
  across	
  the	
  enterprise	
  
	
   14	
  
Applica)on	
  services	
  
Implementa)on	
  of	
  applica)on-­‐specific	
  	
  func)ons,	
  
such	
  as	
  database	
  querying,	
  valida)on,	
  etc.	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
•  Concrete	
  defini)on	
  
•  Defined	
  by	
  applica)on	
  developers	
  
•  Fine-­‐grained	
  
•  Tightly	
  bound	
  to	
  a	
  specific	
  applica)on	
  
context	
  
•  Generally	
  not	
  shared	
  across	
  the	
  
enterprise	
  
	
  
15	
  
Infrastructure	
  services	
  
Implementa)on	
  of	
  the	
  non-­‐business	
  related	
  func)ons,	
  
like	
  logging,	
  error	
  handling,	
  single	
  sign	
  on,	
  etc.	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
•  Concrete	
  defini)on	
  
•  Defined	
  by	
  applica)on	
  or	
  system	
  
developers	
  
•  Fine-­‐grained	
  
•  Supports	
  the	
  system	
  or	
  enterprise	
  
infrastructure	
  
•  Shared	
  across	
  the	
  enterprise	
  
	
  
16	
  
Message	
  Bus	
  
Coordinates	
  services	
  and	
  processes,	
  it’s	
  a	
  glue	
  
for	
  SOA	
  components	
  
Business	
  services	
  
Enterprise	
  services	
  
Applica)on	
  services	
   Infrastructure	
  services	
  
Message	
  bus	
  
BS	
   BS	
   BS	
   BS	
   BS	
  
ES	
   ES	
   ES	
   ES	
   ES	
  
AS	
   IS	
  
Process	
  choreographer	
  
Service	
  orchestrator	
  
•  Process	
  choreography	
  
•  Service	
  orchestra)on	
  
•  Service	
  registry	
  
•  Protocol	
  transforma)on	
  
•  Message	
  enhancement	
  and	
  
transforma)on	
  
17	
  
Service-­‐oriented	
  architecture	
  
•  Good	
  pa1ern	
  for	
  understanding	
  and	
  
implemen)ng	
  business	
  processes	
  and	
  services	
  
•  Very	
  high	
  level	
  of	
  complexity	
  
•  Difficult	
  to	
  implement	
  due	
  to	
  complex	
  tools,	
  
hype,	
  misconcep)ons,	
  and	
  heavy	
  business	
  user	
  
involvement	
  
•  Good	
  pa1ern	
  for	
  large,	
  complex,	
  heterogeneous	
  
businesses	
  that	
  have	
  a	
  large	
  number	
  of	
  common	
  
services	
  
18	
  
Pipeline	
  architecture	
  
Producer	
   Transformer	
   Transformer	
  
Tester	
  Consumer	
  
pipe	
   pipe	
  
pipe	
  
pipe	
  
19	
  
Pipes	
  and	
  filters	
  
•  Uni-­‐direc)onal	
  only	
  
•  Usually	
  point-­‐to-­‐point	
  for	
  high	
  
performance,	
  but	
  could	
  be	
  message-­‐based	
  
for	
  scalability	
  
•  Payload	
  can	
  be	
  any	
  type	
  
pipe	
  
filter	
  
•  Self-­‐contained	
  and	
  independent	
  from	
  other	
  
filters	
  
•  Usually	
  designed	
  to	
  perform	
  a	
  single	
  
specific	
  task	
  
20	
  
Filter	
  types	
  
Producer	
  
Tester	
  
Consumer	
  
pipe	
  
pipe	
  
Transformer	
  
pipe	
   pipe	
  
pipe	
   pipe	
  
Star)ng	
  point,	
  outbound	
  only	
  
Input,	
  processing,	
  output	
  
Input,	
  discard	
  or	
  pass-­‐thru	
  
Endpoint,	
  inbound	
  only	
  	
  
21	
  
Pipeline	
  architecture	
  
•  Useful	
  for	
  smaller	
  determinis)c	
  systems	
  with	
  
a	
  dis)nct	
  processing	
  flow	
  
•  Filters	
  can	
  easily	
  be	
  added	
  and	
  removed	
  
•  Provides	
  for	
  a	
  high	
  level	
  of	
  decoupling	
  
•  Supports	
  evolu)onary	
  design	
  
•  Able	
  to	
  easily	
  adapt	
  to	
  changing	
  requirements	
  
•  Can	
  be	
  easily	
  incorporated	
  into	
  another	
  
pa1ern	
   Producer	
   Transformer	
   Transformer	
  
Tester	
  Consumer	
  
pipe	
   pipe	
  
pipe	
  
pipe	
  
22	
  
Microkernel	
  architecture	
  
Core	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
23	
  
Microkernel	
  architecture	
  
•  Minimal	
  func)onality	
  to	
  run	
  system	
  
•  General	
  	
  business	
  rules	
  and	
  logic	
  
•  Doesn’t	
  contain	
  custom	
  processing	
  
Core	
  
Plug-­‐in	
  
module	
  
•  Standalone	
  independent	
  module	
  
•  Specific	
  addi)onal	
  rules	
  or	
  logic	
  
Core	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
24	
  
Microkernel	
  architecture	
  
•  Useful	
  for	
  systems	
  that	
  have	
  custom	
  processing	
  
or	
  processing	
  is	
  suscep)ble	
  to	
  change	
  
•  Plug-­‐in	
  modules	
  can	
  be	
  easily	
  added	
  and	
  
removed	
  
•  Supports	
  evolu)onary	
  design	
  
•  Able	
  to	
  easily	
  adapt	
  to	
  changing	
  requirements	
  	
  
•  Can	
  easily	
  be	
  incorporated	
  into	
  another	
  pa1ern	
  	
  
Core	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
Plug-­‐in	
  
module	
  
25	
  
Space-­‐based	
  architecture	
  
Virtualized	
  middleware	
  
Messaging	
  grid	
   Data	
  grid	
   Processing	
  grid	
  
Deployment	
  
manager	
  
Processing	
  unit	
  
-­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  	
  
Processing	
  unit	
  
-­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  	
  
Processing	
  unit	
  
-­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  	
  
26	
  
Processing	
  unit	
  
Module	
   Module	
   Module	
  
DB	
   In-­‐memory	
  data	
  
Data	
  replica)on	
  engine	
  
In	
  fact	
  it	
  is	
  standalone	
  version	
  of	
  yours	
  applica)on	
  
27	
  
Virtualized	
  middleware	
  
Manages	
  input	
  request	
  and	
  
session	
  	
  
Messaging	
  
grid	
  
Data	
  grid	
  
Processing	
  
grid	
  
Deployment	
  
manager	
  
Manages	
  data	
  replica)on	
  
between	
  processing	
  units	
  	
  
Manages	
  parallel	
  request	
  
processing	
  	
  
Manages	
  dynamic	
  processing	
  
unit	
  deployment	
  	
  
28	
  
Space-­‐based	
  architecture	
  
•  Good	
  for	
  applica)ons	
  that	
  have	
  variable	
  load	
  
or	
  inconsistent	
  peak	
  )mes	
  
•  Not	
  good	
  fit	
  for	
  tradi)onal	
  large-­‐scale	
  
rela)onal	
  database	
  systems	
  
•  Rela)vely	
  complex	
  and	
  expensive	
  pa1ern	
  to	
  
implement	
  	
  
Virtualized	
  middleware	
  
Messaging	
  
grid	
  
Data	
  grid	
  
Processing	
  
grid	
  
Deployment	
  
manager	
  
Processing	
  unit	
  
-­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  	
  
Processing	
  unit	
  
-­‐	
  	
  -­‐	
  	
  -­‐	
  -­‐	
  	
  
Processing	
  unit	
  
-­‐	
  -­‐	
  -­‐	
  -­‐	
  -­‐	
  	
  
29	
  
h1p://goo.gl/BiV940	
  
h1p://goo.gl/vmv0Ww	
  
h1p://goo.gl/NI6uE2	
  
h1p://goo.gl/XEw0JB	
  
Ques)ons?	
  
Georgiy	
  Podsvetov	
  
podsvetov@gmail.com	
  
Recommended	
  reading:	
  
h1p://ua.linkedin.com/pub/georgiy-­‐podsvetov/45/989/868	
  
h1ps://www.facebook.com/GeorgiyPodsvetov	
   30	
  
h1p://www.slideshare.net/GeorgiyPodsvetov/jslab2015-­‐0328	
  
(h1p://goo.gl/7W2zNs)	
  
Slides:	
  

More Related Content

What's hot

Anbazhagan-Resume,7 Years Exp in Nework field
Anbazhagan-Resume,7 Years Exp  in Nework fieldAnbazhagan-Resume,7 Years Exp  in Nework field
Anbazhagan-Resume,7 Years Exp in Nework field
Anbazhagan .P
 
Resume-Walter Hammack
Resume-Walter HammackResume-Walter Hammack
Resume-Walter Hammack
Lucky Hammack
 
DaleMDarlingResume-20160908
DaleMDarlingResume-20160908DaleMDarlingResume-20160908
DaleMDarlingResume-20160908
Dale Darling
 
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private CloudMMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
Harold Sriver
 
Migration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of successMigration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of success
Deniz Seçilir
 
CouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational ExcellenceCouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational Excellence
Laine Campbell
 
Hadoop Operations - Past, Present, and Future
Hadoop Operations - Past, Present, and FutureHadoop Operations - Past, Present, and Future
Hadoop Operations - Past, Present, and Future
DataWorks Summit
 

What's hot (19)

Anbazhagan-Resume,7 Years Exp in Nework field
Anbazhagan-Resume,7 Years Exp  in Nework fieldAnbazhagan-Resume,7 Years Exp  in Nework field
Anbazhagan-Resume,7 Years Exp in Nework field
 
Resume 2013
Resume 2013Resume 2013
Resume 2013
 
Unit 1
Unit 1Unit 1
Unit 1
 
Learnings from Carrier SDN Deployments
Learnings from Carrier SDN DeploymentsLearnings from Carrier SDN Deployments
Learnings from Carrier SDN Deployments
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapes
 
Garry_Chatman
Garry_ChatmanGarry_Chatman
Garry_Chatman
 
Resume-Walter Hammack
Resume-Walter HammackResume-Walter Hammack
Resume-Walter Hammack
 
Beyond Messaging Enterprise Dataflow powered by Apache NiFi
Beyond Messaging Enterprise Dataflow powered by Apache NiFiBeyond Messaging Enterprise Dataflow powered by Apache NiFi
Beyond Messaging Enterprise Dataflow powered by Apache NiFi
 
DaleMDarlingResume-20160908
DaleMDarlingResume-20160908DaleMDarlingResume-20160908
DaleMDarlingResume-20160908
 
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private CloudMMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
MMS2012-HP VirtualSystem-The Ideal Foundation for a Microsoft Private Cloud
 
Migration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of successMigration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of success
 
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
 
ChaitanyaPrati
ChaitanyaPratiChaitanyaPrati
ChaitanyaPrati
 
NetIG Services Overview
NetIG Services OverviewNetIG Services Overview
NetIG Services Overview
 
CouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational ExcellenceCouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational Excellence
 
Log Analytics Optimization
Log Analytics OptimizationLog Analytics Optimization
Log Analytics Optimization
 
Integrating NiFi and Flink
Integrating NiFi and FlinkIntegrating NiFi and Flink
Integrating NiFi and Flink
 
Hadoop Operations - Past, Present, and Future
Hadoop Operations - Past, Present, and FutureHadoop Operations - Past, Present, and Future
Hadoop Operations - Past, Present, and Future
 
Waleed Abdel Wahab
Waleed Abdel WahabWaleed Abdel Wahab
Waleed Abdel Wahab
 

Viewers also liked (6)

Introduction to architectural patterns
Introduction to architectural patternsIntroduction to architectural patterns
Introduction to architectural patterns
 
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
 
TOGAF 9 Guidelinesand Techniques Ver1 0
TOGAF 9   Guidelinesand Techniques Ver1 0TOGAF 9   Guidelinesand Techniques Ver1 0
TOGAF 9 Guidelinesand Techniques Ver1 0
 
TOGAF 9 Architecture Partitioning
TOGAF 9  Architecture PartitioningTOGAF 9  Architecture Partitioning
TOGAF 9 Architecture Partitioning
 
RUP model
RUP modelRUP model
RUP model
 
Functional requirements-document
Functional requirements-documentFunctional requirements-document
Functional requirements-document
 

Similar to JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."

Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)
stanbridge
 
Esb buyers guide_final
Esb buyers guide_finalEsb buyers guide_final
Esb buyers guide_final
WSO2
 
A Buyers Guide to an Enterprise Service Bus (ESB)
A Buyers Guide to an Enterprise Service Bus (ESB)A Buyers Guide to an Enterprise Service Bus (ESB)
A Buyers Guide to an Enterprise Service Bus (ESB)
WSO2
 
Abdul_Mateen-26082616
Abdul_Mateen-26082616Abdul_Mateen-26082616
Abdul_Mateen-26082616
Abdul Mateen
 

Similar to JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны." (20)

Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)
 
Diksha sda presentation
Diksha sda presentationDiksha sda presentation
Diksha sda presentation
 
FTC Group Presentation
FTC Group PresentationFTC Group Presentation
FTC Group Presentation
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Soa 1 7.ppsx
Soa 1 7.ppsxSoa 1 7.ppsx
Soa 1 7.ppsx
 
LAN-Design-Module-PPT.pptx
LAN-Design-Module-PPT.pptxLAN-Design-Module-PPT.pptx
LAN-Design-Module-PPT.pptx
 
Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference
 
DPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy HarveyDPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy Harvey
 
The Evolution of Architecture
The Evolution of ArchitectureThe Evolution of Architecture
The Evolution of Architecture
 
0413-OSS-CKN.pptx
0413-OSS-CKN.pptx0413-OSS-CKN.pptx
0413-OSS-CKN.pptx
 
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
 
Service Architectures at Scale
Service Architectures at ScaleService Architectures at Scale
Service Architectures at Scale
 
Esb buyers guide_final
Esb buyers guide_finalEsb buyers guide_final
Esb buyers guide_final
 
A Buyers Guide to an Enterprise Service Bus (ESB)
A Buyers Guide to an Enterprise Service Bus (ESB)A Buyers Guide to an Enterprise Service Bus (ESB)
A Buyers Guide to an Enterprise Service Bus (ESB)
 
Iot cloud service v2.0
Iot cloud service v2.0Iot cloud service v2.0
Iot cloud service v2.0
 
Abdul_Mateen-26082616
Abdul_Mateen-26082616Abdul_Mateen-26082616
Abdul_Mateen-26082616
 
Modern Enterprise integration Strategies
Modern Enterprise integration StrategiesModern Enterprise integration Strategies
Modern Enterprise integration Strategies
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices Architecture
 

More from GeeksLab Odessa

DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
GeeksLab Odessa
 
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
GeeksLab Odessa
 
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
GeeksLab Odessa
 
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
GeeksLab Odessa
 
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
GeeksLab Odessa
 

More from GeeksLab Odessa (20)

DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
 
DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...
DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...
DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...
 
DataScience Lab 2017_Блиц-доклад_Турский Виктор
DataScience Lab 2017_Блиц-доклад_Турский ВикторDataScience Lab 2017_Блиц-доклад_Турский Виктор
DataScience Lab 2017_Блиц-доклад_Турский Виктор
 
DataScience Lab 2017_Обзор методов детекции лиц на изображение
DataScience Lab 2017_Обзор методов детекции лиц на изображениеDataScience Lab 2017_Обзор методов детекции лиц на изображение
DataScience Lab 2017_Обзор методов детекции лиц на изображение
 
DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...
DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...
DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...
 
DataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-докладDataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-доклад
 
DataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-докладDataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-доклад
 
DataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-докладDataScienceLab2017_Блиц-доклад
DataScienceLab2017_Блиц-доклад
 
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
 
DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...
DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...
DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...
 
DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко
DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко
DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко
 
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
 
DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...
DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...
DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...
 
DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...
DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...
DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...
 
DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...
DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...
DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...
 
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
 
DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...
DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...
DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...
 
DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот
DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот
DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот
 
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
 
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."

  • 1. Introduc)on  to  architectural   pa1erns   Georgiy  Podsvetov   podsvetov@gmail.com  
  • 2. Layered  architecture   Presenta)on  layer   Business  layer   Persistence  layer   Database  layer   2  
  • 3. Layered  architecture   closed   • Presenta)on  layer   closed   • Business  layer   closed   • Persistence  layer   Closed   • Database  layer   •  Layers  communicate  from  top  to  down  only   •  To  get  layer  below,  you  have  to  go  through  all  in  the  middle   3  
  • 4. What  if  we  have  some  kind  of  shared   services?   closed   • Presenta)on  layer   closed   • Business  layer   closed   • Services  layer   closed   • Persistence  layer   Closed   • Database  layer   Do  we  s)ll  need  pass  all  request  throw  this  layer?   4  
  • 5. Open  layered  architecture   closed   • Presenta)on  layer   closed   •     Business  layer   open   •     Services  layer   closed   • Persistence  layer   Closed   • Database  layer   Some  layers  might  be  open.     5  
  • 6. Layered  architecture   •  Good  general  purpose  architecture   •  Easy  to  implement,  test,  and  govern   •  Good  star)ng  point  for  most  systems   •  Not  always  op)mized  for  specific  business   drivers   closed   •  Presenta)on  layer   closed   •  Business  layer   closed   •  Services  layer   closed   •  Persistence  layer   Closed   •  Database  layer   closed   •  Presenta)on  layer   closed   •     Business  layer   open   •     Services  layer   closed   •  Persistence  layer   Closed   •  Database  layer   6  
  • 7. Event-­‐driven  architecture   •  Event  processor  topology   •  Broker  topology   •  Broker-­‐less  topology   7  
  • 8. Event  processor  topology   Event   queue   Event  processor   Event   topic   Event   topic   processor   processor   processor   processor   processor   Event   orchestra)on   8  
  • 9. Broker  topology   Event   topic   Event   topic   processor   processor   processor   processor   processor   Event   topic   Event   processor   processor   processor   media)on   9  
  • 10. Event   process   process   process   Broker-­‐less  topology   Event  process   process   process   10  
  • 11. Event-­‐driven  architecture   •  Highly  decoupled  and  distributed   •  Highly  scalable   •  High  degree  of  complexity   •  Good  for  event-­‐based  business  models  and   business  processes   •  Not  good  for  processes  which  require  a  high   degree  of  data  sharing,  orchestra)on,  and   reuse   11  
  • 12. Service-­‐oriented  architecture   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   12  
  • 13. Business  services   Abstract  service  used  to  represent  a  business   process  or  func)on  independent  of  the   underlying  technology  or  pa1ern    •  Сan  be  derived  from  use  cases,  user   stories,  user  scenarios   •  Contains  a  service  name,  input   specifica)on,  and  output  specifica)on   •  Course-­‐grained   •  Shared  across  the  enterprise   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   13  
  • 14. Enterprise  services   Concrete  services  that  implement  Business   Services   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   •  The  rela)onship  between  an  Enterprise   Service  and  a  Business  Service  is  either   a  one-­‐to-­‐one  or  many-­‐to-­‐one   rela)onship   •  Course-­‐grained   •  Represent  ac)ons  against  major  data   en))es   •  Usually  require  some  sort  of  service   orchestra)on   •  Shared  across  the  enterprise     14  
  • 15. Applica)on  services   Implementa)on  of  applica)on-­‐specific    func)ons,   such  as  database  querying,  valida)on,  etc.   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   •  Concrete  defini)on   •  Defined  by  applica)on  developers   •  Fine-­‐grained   •  Tightly  bound  to  a  specific  applica)on   context   •  Generally  not  shared  across  the   enterprise     15  
  • 16. Infrastructure  services   Implementa)on  of  the  non-­‐business  related  func)ons,   like  logging,  error  handling,  single  sign  on,  etc.   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   •  Concrete  defini)on   •  Defined  by  applica)on  or  system   developers   •  Fine-­‐grained   •  Supports  the  system  or  enterprise   infrastructure   •  Shared  across  the  enterprise     16  
  • 17. Message  Bus   Coordinates  services  and  processes,  it’s  a  glue   for  SOA  components   Business  services   Enterprise  services   Applica)on  services   Infrastructure  services   Message  bus   BS   BS   BS   BS   BS   ES   ES   ES   ES   ES   AS   IS   Process  choreographer   Service  orchestrator   •  Process  choreography   •  Service  orchestra)on   •  Service  registry   •  Protocol  transforma)on   •  Message  enhancement  and   transforma)on   17  
  • 18. Service-­‐oriented  architecture   •  Good  pa1ern  for  understanding  and   implemen)ng  business  processes  and  services   •  Very  high  level  of  complexity   •  Difficult  to  implement  due  to  complex  tools,   hype,  misconcep)ons,  and  heavy  business  user   involvement   •  Good  pa1ern  for  large,  complex,  heterogeneous   businesses  that  have  a  large  number  of  common   services   18  
  • 19. Pipeline  architecture   Producer   Transformer   Transformer   Tester  Consumer   pipe   pipe   pipe   pipe   19  
  • 20. Pipes  and  filters   •  Uni-­‐direc)onal  only   •  Usually  point-­‐to-­‐point  for  high   performance,  but  could  be  message-­‐based   for  scalability   •  Payload  can  be  any  type   pipe   filter   •  Self-­‐contained  and  independent  from  other   filters   •  Usually  designed  to  perform  a  single   specific  task   20  
  • 21. Filter  types   Producer   Tester   Consumer   pipe   pipe   Transformer   pipe   pipe   pipe   pipe   Star)ng  point,  outbound  only   Input,  processing,  output   Input,  discard  or  pass-­‐thru   Endpoint,  inbound  only     21  
  • 22. Pipeline  architecture   •  Useful  for  smaller  determinis)c  systems  with   a  dis)nct  processing  flow   •  Filters  can  easily  be  added  and  removed   •  Provides  for  a  high  level  of  decoupling   •  Supports  evolu)onary  design   •  Able  to  easily  adapt  to  changing  requirements   •  Can  be  easily  incorporated  into  another   pa1ern   Producer   Transformer   Transformer   Tester  Consumer   pipe   pipe   pipe   pipe   22  
  • 23. Microkernel  architecture   Core   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   23  
  • 24. Microkernel  architecture   •  Minimal  func)onality  to  run  system   •  General    business  rules  and  logic   •  Doesn’t  contain  custom  processing   Core   Plug-­‐in   module   •  Standalone  independent  module   •  Specific  addi)onal  rules  or  logic   Core   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   24  
  • 25. Microkernel  architecture   •  Useful  for  systems  that  have  custom  processing   or  processing  is  suscep)ble  to  change   •  Plug-­‐in  modules  can  be  easily  added  and   removed   •  Supports  evolu)onary  design   •  Able  to  easily  adapt  to  changing  requirements     •  Can  easily  be  incorporated  into  another  pa1ern     Core   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   Plug-­‐in   module   25  
  • 26. Space-­‐based  architecture   Virtualized  middleware   Messaging  grid   Data  grid   Processing  grid   Deployment   manager   Processing  unit   -­‐  -­‐  -­‐  -­‐  -­‐  -­‐  -­‐     Processing  unit   -­‐  -­‐  -­‐  -­‐  -­‐  -­‐  -­‐     Processing  unit   -­‐  -­‐  -­‐  -­‐  -­‐  -­‐  -­‐     26  
  • 27. Processing  unit   Module   Module   Module   DB   In-­‐memory  data   Data  replica)on  engine   In  fact  it  is  standalone  version  of  yours  applica)on   27  
  • 28. Virtualized  middleware   Manages  input  request  and   session     Messaging   grid   Data  grid   Processing   grid   Deployment   manager   Manages  data  replica)on   between  processing  units     Manages  parallel  request   processing     Manages  dynamic  processing   unit  deployment     28  
  • 29. Space-­‐based  architecture   •  Good  for  applica)ons  that  have  variable  load   or  inconsistent  peak  )mes   •  Not  good  fit  for  tradi)onal  large-­‐scale   rela)onal  database  systems   •  Rela)vely  complex  and  expensive  pa1ern  to   implement     Virtualized  middleware   Messaging   grid   Data  grid   Processing   grid   Deployment   manager   Processing  unit   -­‐  -­‐  -­‐  -­‐  -­‐     Processing  unit   -­‐    -­‐    -­‐  -­‐     Processing  unit   -­‐  -­‐  -­‐  -­‐  -­‐     29  
  • 30. h1p://goo.gl/BiV940   h1p://goo.gl/vmv0Ww   h1p://goo.gl/NI6uE2   h1p://goo.gl/XEw0JB   Ques)ons?   Georgiy  Podsvetov   podsvetov@gmail.com   Recommended  reading:   h1p://ua.linkedin.com/pub/georgiy-­‐podsvetov/45/989/868   h1ps://www.facebook.com/GeorgiyPodsvetov   30   h1p://www.slideshare.net/GeorgiyPodsvetov/jslab2015-­‐0328   (h1p://goo.gl/7W2zNs)   Slides: