B O O T I F U L M I C R O S E RV I C E Josh Long (⻰龙之春) @starbuxman [email protected] github.com/joshlong T H E https://github.com/joshlong/qcon2015-sao-paolo-microservices-workshop
https://github.com/joshlong/qcon2015-sao-paolo-microservices-workshop Spring Developer Advocate Josh Long (⻰龙之春) @starbuxman [email protected] | Jean Claude van Damme! Java mascot Duke some thing’s I’ve authored... I am.. • open-source contributor (Spring Boot, Spring Integration, Vaadin, Activiti) • JavaOne rockstar • author of 5 books, 3 video trainings on Spring
Josh Long - @starbuxman ! Twitter moved from a Rails monolith to a microservice architecture ! Facebook moved from PHP monolith to a microservice architecture ! Netflix moved from a Java monolith to a microservice architecture the old architecture’s broken..
Josh Long - @starbuxman ! processing can’t scale up • concurrent, horizontal architectures are easier to scale • “process”-style concurrency is easy to scale still Moore’s Law is Broken Moore's law is the observation that, over the history of computing hardware, the number of transistors in a dense integrated circuit doubles approximately every two years. The law is named after Gordon E. Moore, co-founder of the Intel Corporation, who described the trend in his 1965 paper. http://en.wikipedia.org/wiki/Moore's_law
mobile More than 1.5 MILLION activations daily * @Starbuxman https://github.com/joshlong/qcon2015-sao-paolo-microservices-workshop * http://www.androidcentral.com/larry-page-15-million-android-devices-activated-every-day
Josh Long - @starbuxman a Social World in 60 seconds 3125 photos uploaded 7630 messages sent 7610 searches 2MM videos viewed 2000 checkins 175k tweets 1090 visitors 700k messages sent * source: visual.ly/60-seconds-social-media
Josh Long - @starbuxman the Internet of Things ! IPv6 gives us more addresses ! devices are getting smaller, more ubiquitous ! “devices” include homes appliances (refrigerators, washers, coffee machines, dryers), roads, air pollution monitors, (human) body monitors, etc “In five years, by 2018, Earth will be home to 7.6 billion people, says the United Nations. By contrast, some 25 billion devices will be connected by 2015, and 50 billion by 2020, says Cisco.” http://www.businessinsider.com/what-you-need-to-know-about-the- internet-of-things-2013-3?op=1#ixzz3FxCafwWe
Josh Long - @starbuxman A Mental Model for Scale Chris Richardson (@crichardson) (http://microservices.io/articles/scalecube.html) introduced me to this “scale cube” from The Art of Scaling Software
Josh Long - @starbuxman ! all services communicate via APIs (not backend databases!) ! APIs should be consistent ! HATEOAS promotes discoverability ! should be easy to stand up ! APIs should provide uniform monitoring and system endpoints for ease of integration into production APIs how do we
Josh Long - @starbuxman ! each service should be deployable without blocking other teams ! promotes agility in iteration ! polyglot services ! avoids “DLL hell” by isolating dependencies to the service Independent Deployability
Josh Long - @starbuxman ! Google built a custom stack based on C++, Java, Go ! TaoBao built frameworks on Spring (open sourced, too! “Dabbo") ! custom RPC, service registration, coordination ! http://bit.ly/1xt6hIE “Spring at China Scale” ! Baidu have frameworks also built on top of Spring ! Netflix have a large stack based on Spring and Spring Boot ! Twitter built a custom stack based on Scala ! Facebook built a custom stack based on PHP/“Hack” Others have walked this path
Josh Long - @starbuxman ! Single sign on with Spring Security ! Node coordination with Zookeeper ! Service registration and discovery with Consul and Zookeeper Anything Else in Spring Cloud?
Josh Long - @starbuxman ! Netflix treat AMIs as containers ! Many organizations treat Tomcat as their container ! Docker is the container Deploy Containers
Josh Long - @starbuxman ! embrace DevOps ! don’t throw code over the wall ! map your team to your business vertical ! Netflix have teams and then the platform group who provide infrastructure for teams. Integrated Teams, not Silos
why PaaS? @Starbuxman https://github.com/joshlong/qcon2015-sao-paolo-microservices-workshop Imagine if architects had to be the janitor for every building they designed. This is how the development team felt prior to moving to Windows Azure. Duncan Mackenzie Nov 07, 2011 http://www.infoq.com/articles/Channel-9-Azure “ ”
Josh Long - @starbuxman ! scale is everybody’s problem now, not just Netflix/Twitter/Baidu/Alibaba, etc ! “cloud native” is the new norm. It doesn’t have to be hard. ! Spring Boot simplifies application & service development ! Spring Cloud simplifies service interactions ! Cloud Foundry lets you deploy all the things, consistently; removes operational friction ! “smaller is more” Takeaways
Josh Long - @starbuxman ! Former Netflix DevOps Guru Adrian Cockroft on DevOps + MS http://www.infoq.com/interviews/adrian-cockcroft-microservices-devops ! Bootiful Applications with Spring Boot http://www.youtube.com/watch?v=eCos5VTtZoI ! Chris Richardson’s http://microservices.io site and his Decomposing Applications for Scalability talks ! The Netflix Techblog http://techblog.netflix.com where to go from here..
Josh Long - @starbuxman ! Fred Georges on Programmer Anarchy http://www.infoq.com/news/2012/02/programmer-anarchy ! Matt Stine’s CF + Microservices: a Mutualistic Symbiotic Relationship http://www.youtube.com/watch?v=RGZefc92tZs ! Martin Fowler’s article - http://martinfowler.com/articles/microservices.html where to go from here..
Josh Long - @starbuxman Questions? Josh Long (⻰龙之春) @starbuxman [email protected] speakerdeck.com/joshlong github.com/joshlong http://spring.io A NEW PLATFORM FOR A NEW ERA