Your SlideShare is downloading. ×
0
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Dynamic Event-Driven Actors (DERA)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Dynamic Event-Driven Actors (DERA)

215

Published on

This is my presentation at the OTM/CoopIS 2012 conference in Rome, Italy from Sep 10-14, 2012 about the dynamic event-driven actor framework (DERA) for enhancing the flexibility and scalability of …

This is my presentation at the OTM/CoopIS 2012 conference in Rome, Italy from Sep 10-14, 2012 about the dynamic event-driven actor framework (DERA) for enhancing the flexibility and scalability of service-based integration architecture. The paper can be downloaded at ResearchGate: http://bit.ly/NudGPL.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
215
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Event-driven Actors for Supporting Flexibility and Scalability inService-based Integration Architecture Huy Tran and Uwe Zdun Software Architecture Group Faculty of Computer Science University of Vienna, Austria. http://cs.univie.ac.at/swa
  • 2. Content 1 Problem Context: Service-based Integration Architetures Solution 2 Dynamic Event-driven Actors (DERA) Approach: Primitives, Formalization, Substitution, DeraDSL 3 Summary Evaluations, Future Works 2
  • 3. Problem Service-based integration architecture Service-based Applications Application Application Application Component ComponentPlatform Integration Service-based platform integration Facade Data Mapper Adapter Adapter Platform Platform Platform Service Service YMS WMS RMS Service Platforms Source: http://www.indenica.eu 3
  • 4. Problem (cont’d)Integration architecture in detail Integration Framework (e.g, Apache Tuscany SCA, Fabric3) • Hard-wired • Hard to change • No (or limited) supports for runtime adaptation and evolution 4
  • 5. Dynamic Event-Driven Actors (DERA)Summary of DERA approach Event-driven communication style + Loose coupling Facade + Potential for flexibility, scalability and concurrency - Not easy to understand (esp. large ? architecture designs) Well-defined interfaces Message Substitutions of event actors Translator Support for verifications/analysis 5
  • 6. Dynamic Event-Driven Actors (cont’d)Overview of DERA architecture 6
  • 7. Dynamic Event-Driven Actors (cont’d)Meta-model of DERA primitives 7
  • 8. Dynamic Event-Driven Actors (cont’d)DERA Primitives: Computational Unit register unregisterEvent Actor activate• computational unit (data deactivate unregister processing, proxy, adapter, match fire etc.)• stateless/immutable notify func eTruck eFreeDock Arrived Requested TruckMonitor 8
  • 9. Dynamic Event-Driven Actors (cont’d)DERA Primitives: Synchronization Unit register unregisterBarrier activate• synchronization unit deactivate unregister match fire ¬ got all match input got notify all input eTruck eUnloading Moved StartedeCamera SynchronizerReceived 9
  • 10. Dynamic Event-Driven Actors (cont’d)DERA Primitives: Branching Unit register unregisterCondition• branching unit (i.e., deactivate activate unregister if-then-else) match fire(trueEvents) fire(falseEvents) notify eval() = true ¬ eval() = true eStoring eUnit Finished Stored isStoring eStoring Finished NotFinished 10
  • 11. Dynamic Event-Driven Actors (cont’d)DERA Primitives: Execution Initiation register unregisterTrigger• triggers the execution activate deactivate by emitting events unregister start fire eTruck Arrived TheTrigger 11
  • 12. Dynamic Event-Driven Actors (cont’d)DERA Primitives: Domain Bridging Unit register unregisterEventBridge activate deactivate unregister• connect two domains notify notify(target) YardManagementDomain WarehouseManagementDomain YMS-to-WMS 12
  • 13. Dynamic Event-Driven Actors (cont’d)A DERA-based representation of integration architecturesWarehouse Management Domain 13
  • 14. Dynamic Event-Driven Actors (cont’d)Event Actor Substitution EventActor MoveTruckToDockNew input[operatorTruckArrivedNotified] output[operatorMoveTruckToDock] register [MoveTruckToDockNew] deactivate [MoveTruckToDock] deactivate [b1] ... // verifications activate [MoveTruckToDockNew] 14
  • 15. Dynamic Event-Driven Actors (cont’d)Event Actor Substitution EventActor CallWarehouseStaff input[operatorStoreStartedNotified] output[ operatorCallWarehouseStaff] EventActor StartUnloadingNew input[operatorCallWarehouseStaff] output[ operatorStartUnloading] register [CallWarehouseStaff] register [StartUnloadingNew] deactivate [StartUnloading] /* verifications can be performed here to detect anomalies */ activate [StartUnloadingNew] activate [CallWarehouseStaff] 15
  • 16. EvaluationDERA scalability  Goal  DERA scalability  DERA overheads vs. a pure Java impl.  Settings  Intel Quad-core i7 2.0Ghz 8GB memory  Oracle JDK 1.6u31 64bit  -Xms512m -Xmx1024m - Xss1m  n DERA actors  n Java tasks  Fixed thread pool of size 8 (#CPU cores) 16
  • 17. Future Works Formal reasoning methods for supporting:  verification of DERA system properties at important stages: before deploying or substituting event actors, etc.  cross-domain verifications Assume “reliable event communication channels”  NIÑOS/PADRES: Jacobsen et al.  Reliable pub/sub networks: Costa et al., Kazemzadeh et al., Malekpour et al., etc.  Reliable message-oriented middleware: Pietzuch et al. 17
  • 18. Many thanks for your attention! Huy Tran Software Architecture Group Faculty of Computer Science University of Vienna, Austria. http://cs.univie.ac.at/swa 18

×