Advertisement
Advertisement

More Related Content

Slideshows for you(20)

Similar to Sogeti Guru Night 2015: Changes in-software-development(20)

Advertisement
Advertisement

Sogeti Guru Night 2015: Changes in-software-development

  1. Sogeti Guru Night
  2. Erwin de Gier Sogeti Java CoE Amsterdam, Oktober Februari 2015 Changes in Software Development
  3. 3 Demands • Mobile devices • Multicore • Cloud computing • Interactive & real-time • Responsive • Collaborative • Frequent changes • Data increase
  4. 4 Trends Microservices Event Driven Scalable
  5. 5 The Java application server Application Server App1 App2 App3 App4
  6. 6 The Java application server Application Server App1 App2 App3 App4 Application Server App1 App2 App3 App4
  7. 7 The Java application server Application Server App1 Application Server App1
  8. 8 The Cloud
  9. 9 Containers
  10. 10 Container deployment Deploy 1.0 1.1
  11. 11 Microservices • Independent lightweight processes • Platform agnostic • (Immutable) containers • Standardized DevOps tooling • Technology diversity
  12. 12 Event Driven Architecture Shopping Cart Created Product1 Added Product2 Added Address Added
  13. 13 Event Driven Architecture • Producers • Consumers • Functions react to events • Events are state changes • Asynchronous • Loose coupling • Responsiveness
  14. 14 Connection scaling
  15. 15 Connection scaling • “Classic” model of scaling threads per connection is limited • CPU and memory bound • c10k problem • non blocking event loop
  16. 16 Blocking vs non-blocking Client Server One thread per connection (1 client) Client Server One thread per event- loop (multiple clients) Request Response Request Request Request Callback Callback Callback
  17. 17 Reactive manifesto • react to events (message driven) • react to load (scalable) • react to failure (resilient) • react to users (responsive)
  18. 18 Need for a new solution • Deployment of light-weight processes • Asynchronous stack • Reactive programming • Polyglot • Distributed • Event driven
  19. 19
Advertisement