16. So what’s microservices?
Microservices
The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing
software applications as suites of independently deployable services. While there is no precise
definition of this architectural style, there are certain common
characteristics around organization around business capability, automated deployment, intelligence in the
endpoints, and decentralized control of languages and data.
Martin Fowler http://martinfowler.com/articles/microservices.html
16
17. So what’s microservices?
“complex applications are composed of small,
independent processes communicating with
each other using language-agnostic APIs”
Wikipedia
17
19. Some key takeaways
● Can fit in one developer head
● One developer should be able to independently produce
19
20. Some key takeaways
● Can fit in one developer head
● One developer should be able to independently produce
● One "verb" (single concern/function, not
GET/PUT/DELETE) per microservice
20
21. Some key takeaways
● Can fit in one developer head
● One developer should be able to independently produce
● One "verb" (single concern/function, not
GET/PUT/DELETE) per microservice
● Should be possible to deploy in a container
21
22. Some key takeaways
● Can fit in one developer head
● One developer should be able to independently produce
● One "verb" (single concern/function, not
GET/PUT/DELETE) per microservice
● Should be possible to deploy in a container
● Can be upgraded independently
22
29. So why chasing that unicorn?
29
More tools available = it’s not too bad
30. Summary - microservices
● Microservices is challenging
● ...But worths it (in my view)
● Modern tools like Amazon AWS, Docker,
Deis, CoreOS, Kubenettes, Ansible, Akka,
… help a lot!
30
34. Go
● Readability over everything else
● Battery included
● Google
● Easy to pick up
● A bit of niche feel (more system oriented)
● No Type safety
● Some problems with cross OSs compiling
34
40. Clojure
My personal favorite language
● Simple but no simpler
● Lisp
● Rich Hickey & the likes
● ClojureScript
● Weak libraries
● Dynamic typing
40