Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

Microservices - How Microservices Have Changed and Why They Matter

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Cargando en…3
×

Eche un vistazo a continuación

1 de 32 Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

Similares a Microservices - How Microservices Have Changed and Why They Matter (20)

Anuncio

Más reciente (20)

Microservices - How Microservices Have Changed and Why They Matter

  1. 1. Microservices How Microservices Have Changed and Why They Matter Presented by Alexander Arda Technical Lead at PT. Difini Teknologi alexandertyas@gmail.com 2018 For Pervasive Computing Class | Universitas Multimedia Nusantara
  2. 2. alexanderarda.com
  3. 3. PT DIFINI TEKNOLOGI (DIFINITE) 2012, We announce our “hello world” program first time. 2014, We join forces with one of the biggest IT Company in Indonesia (Infracom Tech). Financial / Banking Application Multifinance system, Payment Gateway Security Solution Life Cycle Identity , Single Sign On, Encryption , Token , Web Security, API Management SOA Middleware Implementation Web Services , Orchestration Services , Business Process Custom Application / In house We provide in house application development based on customer requirements. Mobile Apps Android & Apple using Native code & React Native
  4. 4. Tech Stack Background
  5. 5. What is Microservices? Why should an organization adopt them?
  6. 6. Building Monolithic Applications brand new taxi-hailing application intended to compete with Grab and Go-Car
  7. 7. Unfortunately, this simple approach has a huge limitation • Monolithic applications can also be difficult to scale when different modules have conflicting resource requirements • It’s simply too large for any single developer to fully understand • The larger the application, the longer the start-up time is • Because all modules are running within the same process, a bug in any module, such as a memory leak, can potentially bring down the entire process • You must redeploy the entire application on each update.
  8. 8. Service Oriented Architecture (SOA)
  9. 9. Microservices – Tackling the Complexity The idea is to split your application into set of smaller, interconnected services. Instead of sharing a single database schema with other services, each service has its own database schema
  10. 10. The Benefits of Microservices • Tackles the problem of complexity • This architecture enables each service to be developed independently by a team that is focused on that service • Enables each microservice to be deployed independentlycused on that service
  11. 11. “ We have always started with a microservices approach. The main goal was to be able to use different technology to build our service, for two big reasons: 1. We want to use the best tool for each service. Our search API is highly optimized at the lowest level and C++ is the perfect language for that. That said, using C++ for everything is a waste of productivity, especially to build a dashboard! 2. The want the best talents and using only one technology would limit our options. This is why we have different languages in the company, Go is less perfect than C++ when you want to optimize everything at the millisecond level but is the perfect language when performance is still key (processing of logs where we process several terabytes of logs per day, using ruby or python would be a waste of CPU).”
  12. 12. Which Model Is Right For You? Monolith vs Microservices
  13. 13. Solution Architecture User web application server Save current location to internal storage Backend Database Push notification Send Last Engineer Location use Location Listener on Device Get signal Send actual location as text Distance and time arrival calculation
  14. 14. A lot of teams overbuild their project initially; everyone wants to think their startup will be the next unicorn and that they should, therefore, build everything with microservices or some other hyper-scalable infrastructure. But that’s usually wrong, almost all the time.” https://medium.freecodecamp.org/monolith-vs-microservices-which-architecture-is- right-for-your-team-bb840319d531
  15. 15. Blibli.com versi 1.0 https://medium.com/bliblidotcom- techblog/evolusi-arsitektur-backend-di-blibli- com-dc74e1650211
  16. 16. containerization vs. virtualization
  17. 17. VMware is software that creates a virtualized piece of hardware Docker, on the other hand, doesn't virtualize the hardware at all. Instead, what it does is creates a filesystem that looks like a regular Linux filesystem, and runs applications in a locked down environment where all the files and resources are inside that filesystem
  18. 18. Can VMs and Docker containers work together?
  19. 19. concept & architecture
  20. 20. With Docker, you can just grab a portable Python runtime as an image, no installation necessary. Then, your build can include the base Python image right alongside your app code, ensuring that your app, its dependencies, and the runtime, all travel together.
  21. 21. • Docker daemon: The daemon is responsible for all container related actions and receives commands via the CLI or the REST API. • Docker Client: A Docker client is how users interact with Docker. The Docker client can reside on the same host as the daemon or a remote host. • Images: The read-only template used to build containers. Images are used to store and ship applications. • Containers: Containers are encapsulated environments in which applications are run. A container is defined by the image and configuration options. At a lower level, you have containerd, which is a core container runtime that initiates, and supervises container performance. • Docker Registries: Registries are locations from where we store and download (or “pull”) images.
  22. 22. https://medium.com/docker-captain/creating-the-first-docker-image-and-pushing-it-to-docker-hub-4e02bea48e81
  23. 23. https://hub.docker.com/explore/
  24. 24. thankyou.
  25. 25. References https://thenewstack.io/ebooks-thank-you?pid=2336881&bid=2336883 https://www.nginx.com/blog/introduction-to-microservices/ https://medium.freecodecamp.org/monolith-vs-microservices-which-architecture-is-right-for-your- team-bb840319d531 https://www.nginx.com/resources/library/app-dev-survey/ https://www.aquasec.com/wiki/display/containers/Docker+Containers https://blog.docker.com/2016/04/containers-and-vms-together/

×