Your SlideShare is downloading. ×
0
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
Reactive Applications
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

Reactive Applications

811

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
811
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
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. reactive applications new kids for your building blocks 09/2013 twitter.com/MikeBild
  • 2. la, la, la, la, la, la tonight • quick • hard • dirty Reactive
  • 3. developers • translating the reactive concepts into code • use Rx / RxJS for example • https://gist.github.com/MikeBild/6725003 yeah
  • 4. why • unstructured information • real-time analytics and intelligence • high user interaction and collaboration • clusters vs. elasticity • big-data vs. high-frequency
  • 5. why • historical analysis • triggered finite state machines • data synchronization • more and more connected devices • business domain complexity
  • 6. working software • is useful information output that • fits business domain • fits non-functional requirements
  • 7. new challenges • cause - effect • time correlation • information/data correlation
  • 8. reactive manifesto • it‘s a concept • technology agnostic • pros and cons • event / message centric
  • 9. 4 building blocks • Event-Driven • Scalable • Resilient • Responsive and Interactive
  • 10. react to ... • events • time • load • failures • users
  • 11. how • RxJava | Java, Clojure, Scala, Groovy, JRuby • Rx.NET | C#, F#,VB • RxJS | JavaScript | NodeJS • ReactiveCocoa | Objective-C • RxCpp | C++ • more and more
  • 12. glorious • NetFlix • GitHub for Windows / Mac • more and more
  • 13. events • things that have happened • events represent state changes • data structure • implicit and explicit information • payload
  • 14. event-driven • events • sources • analytics & abstracting • handling
  • 15. event-driven • highly decoupled • ever non-blocking • reactive from top to bottom • input - processing - output • asynchronous Event-Stream(s)
  • 16. translate into code • event sources structure • create and compose • transform, filter, aggregate, group, combine
  • 17. scalable • easy to expand or update on demand • elastic scale out and scale in • helps to manage risk
  • 18. scalable • location transparent • message passing style • abstraction for opportunities • local context or distributed within same semantic
  • 19. translate into code • composing • scheduling • tasks
  • 20. resilient • no downtime - be stale or compensate • failures/errors as a first class construct • failures are business decisions • react to manage failures • monitor what possible
  • 21. translate into code • state • resources • catch errors • retry • compensation
  • 22. responsive • react to a stimulus • high user to system interaction • „always ready“
  • 23. responsive • permanent connection between user and system • collaborative environment • real-time feedback
  • 24. translate into code • throttle, delay time • analytics • filter • transform
  • 25. design • isolated / autonomous blocks • async event-driven message passing • location transparent • ever responsive • explicit failure management @reactivemanifesto.org
  • 26. conclusion What does that mean here? @reactivemanifesto.org
  • 27. reactive applications • Observable Models • Event Streams • Stateful Clients
  • 28. reactive applications • react from top to buttom to top • observe data changes • execute logic • store state • real-time update UI
  • 29. thanks • http://www.reactivemanifesto.org/ • https://github.com/Reactive-Extensions/RxJS-DOM • https://github.com/Reactive-Extensions/RxJS • http://mywebbasedcomputer.com/users/johngslater/tech/rx/bubbleDiagrams.html • https://github.com/Netflix/RxJava • https://github.com/blog/1127-github-for-windows • https://netflix.com

×