Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Electric Microservices Land - Tsuyoshi Ushio


Published on

The basic concept of Microservies, the architecture of Microservices frameworks, including Mesosphere with Docker and Microsoft Service Fabric, and then some demos, discussion time to share ideas and experiences.

Published in: Software
  • Be the first to comment

Electric Microservices Land - Tsuyoshi Ushio

  1. 1. ELECTRIC MICROSERVICES LAND Simplearchitect Tsuyoshi Ushio Are you experienced? #DevDayDaNang2015 #EML
  2. 2. AGENDA ▪ Introduction of Microservices ▪ Microservices platforms ▪ Workshop : The future of development
  3. 3. DANANG DaNang a beautiful beach!
  4. 4. ABOUT ME Tsuyoshi Ushio (Japan) Simplearchitect Inc. Organization change, Agile, Business Analysis, Book Author and DevOps! Twitter @sandayuu_en I need ABS for DaNang! Now My problem is
  6. 6. MICROSERVICES Microservices is a software architecture style, in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. Wikipedia - Microservices
  7. 7. MONOLITHS AND MICROSERVICES Microservices – James Lewis / Martin Fowler
  8. 8. MONOLITHS AND MICROSERVICES Microservices – James Lewis / Martin Fowler
  9. 9. MONOLITHS - EXAMPLE ▪ Traditional application architecture Browser Load balancer Database Developing applications with a microservice architecture / Chris Richardson StoreFront UI Product Service Recommendation Service Review Service Order Service
  10. 10. MICROSERVICES - EXAMPLE ▪ An example of Microservices architecture Browser API Gateway Developing applications with a microservice architecture / Chris Richardson REST Product Service Recommendation Service Review Service Order Service REST REST REST Web application DB DB DB DB
  11. 11. LANGUAGE-AGNOSTIC API ▪ You can choose a language for your purpose. Posts <<ruby>> Friends <<golang>> Pictures <<java>> Building Microservices – Sam Newman Document Store Graph DB Blob store
  12. 12. SCALING AND DEPLOYMENT ▪ You can deploy and scale micorservices separately Instance 1 Instance 2 Instance 3 Instance 1 Instance 2 Instance 3 Instance 4 Instance 5 Instance 6 Instance 1 Instance 2 Posts friends pictures Building Microservices – Sam Newman
  13. 13. 3 LEVELS OF MICROSERIVCES Task Service Container Executed only one time like a command Live longer than task like a daemon An instance of a machine image E.g. Actor, Microsoft Service Fabric E.g. Service / Microsoft Service Fabric E.g. Docker container
  14. 14. MICROSERVICES Pros ▪ Small and Simple Application ▪ Scalable ▪ Fault tolerance ▪ Isolation ▪ Multi frameworks Cons ▪ Complexity of developing a distributed system ▪ Multiple database ▪ Transaction management ▪ Debug / Test ▪ Deploy and operation
  15. 15. WHEN TO USE Scalable Service
  16. 16. MICROSERVICES PLATFORMS Mesosphere DCOS & Microsoft Service Fabric Learn by examples
  17. 17. WHY MICROSERVICE PLATFORMS ARE IMPORTANT? Conquer the short comings Developing a distributed system Deploy and Operation Debug and Test Mesosphere DCOS Microsoft Service Fabric It makes incredibly easy to develop microservices.
  18. 18. MESOSPHERE DCOS A new kind of operating system that spans all of the servers in a physical or cloud-based datacenter, and runs on top of any Linux distribution. You can operate cluster as if you use an os of single machine.
  19. 19. DATACENTER OS Datacenter OS make us possible to operate cluster like an Operation system. Cluster Client Task execution Service Deploy /Remove Up and Running Scale out / in Resource Allocation Task execution Service Deploy / Remove Fault tolerant Scale out/in Monitoring
  20. 20. TASK EXECUTION Command execution image master slave 1 : slave 2 slave 3 master: Hey, Does anyone have a resource? 0.5 cpus and 512 mem, please slave 2: Hi, I have one. I allocate it. master: Great, lets do it. slave 2: Done! tasktask
  22. 22. PRODUCTS Mesos-master ZooKeeper Marathon DCOS master Mesos-slave Mesos-docker slave Mesos-slave Mesos-docker slave Mesosphere DOCS UI/CLI Marathon : Mesos Execute Tasks and Services Report Status (CPU/Mem/Disk) Service Demo
  23. 23. MESOS + MARATHON + DOCKER ON VAGRANT ▪ You can try Mesos cluster for free Container Demo instruction : Virtual Box
  24. 24. PRODUCTS ▪ Apache Mesos ( ▪ A distributed systems kernel ▪ Marathon ( ▪ A cluster-wide init and control system for ▪ Apache ZooKeeper ( ▪ An open-source server which enables highly reliable distributed cordination ▪ Docker ( ▪ An open platform for developers and sysadmins to build , ship, and run distributed applications.
  25. 25. GET STARTED ▪ Mesosphere DCOS beta/alpha on AWS and Azure ▪ Mesos + Docker cluster on Vagrant
  27. 27. SERVICE FABRIC AS A MICROSERVICES PLATFORM ▪ Easy to develop ▪ Cluster Orchestration ▪ Fault tolerance ▪ Resource Balancing ▪ Rolling update / rollback Azure SQL Database Azure Document DB Skype for Business : Microsoft uses this platform in production for years
  28. 28. DEMO CLUSTER IMAGE It will be automatically created by Service Fabric. Node 1 Node 2 Node 3 Node 4 Node 5 P 1 S 1 S 1 P 2 S 2 S 2 P 3 S 3 S 3 P 4S 4 S 4 P n S n Primary Secondary State share State share
  29. 29. APPLICATION TEMPLATE ▪Stateless Actor ▪Stateful Actor ▪Stateless Service ▪Stateful Service Task Service Demo
  30. 30. GET STARTED Set up your Service Fabric development environment Visual Studio 2015 RC + Service Fabric SDK Service Fabric Explorer
  31. 31. WORKSHOP The future of software development
  32. 32. MISSION #1 FORM A TEAM ▪ Form a team which includes 3 – 4 members. ▪ Self introduction ▪ Share your favorite thing 3 min
  33. 33. MISSION #2 MICROSERVICES DISCUSSION ▪ Choose a subject from these listed below ▪ What would it change your working environment? ▪ What would it change your services / world? ▪ What would you want to do after going back you workplace? Tweet your ideas on Twitter! Hashtag #DevDayDaNang2015 #EML #<team name> 10 min
  34. 34. ▪Active Tweets prize! ▪Great Future prediction prize! ▪Extreme passion prize! WHO’S AWARD WINNER!
  35. 35. Thank you very much indeed. I hope you enjoy it! Tsuyoshi Ushio wikipedia
  36. 36. REFERENCE Mesosphere tutorials Running Docker Containers on Marathon mode If you want to know about Service Fabric architcture Deploy a Mesos Cluster with 7 Commands Using Docker using-docker-57951e020586 Building Microservices – Sam Newman Microservices