1 / 13

Microservice Best Practices The 80/20 Way

Microservices have fundamentally changed the way server-side engines are architected.<br><br>Rather than a single giant #monolithic codebase hosting all the business logic of your application, microservices reflect the distributed systems model, where a group of application components works together to deliver the business needs.<br><br>By following ten basic microservices best practices, you can achieve an efficient microservices ecosystem devoid of unnecessary architectural complexities.

Simform
Download Presentation

Microservice Best Practices The 80/20 Way

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microservice Best Practices: The 80/20 Way

  2. Improve productivity with Domain-Driven Design (DDD) There are two phases to every DDD model: strategic and tactical. The strategic phase ensures that design architecture encapsulates business capabilities. The tactical phase, on the other hand, allows the creation of a domain model using different design patterns. Within the DDD pattern, SoundCloud employs VAS as an aggregate. VAS also enables the separation of concerns and provides a centralized orchestration. It can execute authorization and orchestrate calls to associated services for metadata synthesis.

  3. Have quicker responses with the Single Responsibility Principle (SRP) SRP is a microservice design principle in which each module or class is required to do one thing assigned well enough for enhanced functionality. One of the major benefits of SRP is reduced dependencies. Gojek teams applied the single responsibility principle to added services for each function, assigning tasks to each and reducing the load on a single service. As a result, Gojek reduced its response time by 95% with the single principle responsibility approach.

  4. Enable service autonomy with independent microservices Independent microservice is a practice of taking the service isolation to a step further. Through independent microservice practices, three forms of independence can be obtained. Development teams at Amazon built “Apollo,” an automated deployment system based on the decoupled services. Further, they established a rule that all-purpose functions must communicate through a web interface API. Eventually, the deployment pipeline sequence was discovered to reduce manual handoffs for improved efficiency of the entire system.

  5. Embrace parallelism with asynchronous communications Without proper communication between services, the performance of your microservices can suffer severely. There are two communication protocols popularly used for microservices, Synchronous communication & Asynchronous communication. Flywheel’s engineers built the platform using a modular approach and microservice architecture. They tied each microservice to a shared Redis cluster and used pub/sub (asynchronous communications) to maintain inter-process communication. Asynchronous communication assisted Flywheel in establishing a solid foundation for providing real-time broadcasts to its FlyAnywhere consumers via Hydra.

  6. Separate microservice database to reduce latency A separate microservice database allows services to store the data locally in a cache. Latency is reduced as a result of this. Because there is no single point of failure with a distinct data store, security and resilience are also improved. Twitter migrated from monolithic software architecture to a microservices architecture in 2012. They created a framework named Gizzard that helped them create distributed datastores and added Cassandra as a data storage solution. Another key aspect of Twitter’s dedicated database solution was the use of Twemcache and Redis.

  7. Containerize microservices to improve process efficiency Containers allow you to package the bare minimum of program configurations, libraries, and binaries. As a result, it is lightweight and portable across environments. Kubernetes for Spotify was the solution to Helios’ inefficiency. To avoid putting all of their eggs in one basket, Spotify engineers migrated some services to Kubernetes, which runs alongside Helios. They migrated over 150 services in order to handle 10 million requests per asecond.

  8. Increase native UI capabilities with micro frontend Micro frontend architecture is a method of breaking down a monolithic frontend into smaller elements. With this approach, you can make changes to individual components and test and deploy them. Facebook built a micro frontend solution called the BigPipe. This allowed Facebook to break the web page into smaller components called “pagelets”. Using BigPipe, Facebook has improved latency across browsers’ web pages.

  9. Secure microservices for data protection Data breaches cost businesses more than $2.9 million every minute. After migration to the cloud environment, OFX needed a highly secure solution to increase visibility and protection against cyber threats defined by the Open Web Application Security Project (OWASP). OFX deployed a security tool in the mid-tier environment with an agent on their web servers to have visibility of several aspects, including, Detection of suspicious patterns Monitoring of login attempts Blocking malicious traffic Extensive penetration testing It helped them detect anomalies and secure microservices.

  10. Simplify parallel programming with immutable APIs Microservices and immutability both share the idea of parallelism, which also helps in applying the Pareto Principle. Immutable APIs can help your eCommerce platform secure users’ data. Another key advantage of immutable API is parallel programming. Immutable APIs solve this problem by restricting the side effects of one thread on others. So, you can execute multiple threads in parallel, improving programming efficiency.

  11. Increase delivery speeds with a DevOps culture Adopting DevOps can help your organization with a cohesive strategy and efficient collaboration, among other benefits. DocuSign adopted the DevOps culture to improve collaboration between operation and development team members. DocuSign combines application mock tool with incident management and tests the app before releasing it through simulations. It helped them quickly build, test and release applications through a cohesive strategy.

  12. 80/20 the Simform way! The 80/20 principle is all about reducing efforts and maximizing gains. These microservice best practices can help you achieve maximum gains. However, which one to choose remains to use case-specific. Take the example of CrayPay, which needed an m-payment solution for retail payments. Simform used the independent microservice best practices to help CrayPay create an m- payment solution deployed across 50,000 retail locations. Similarly, it is vital for you to consider use cases and business requirements before choosing a microservice best practice.

  13. Contact Us Website www.simform.com Email Address contactus@simform.com Social Presence twitter.com/simform facebook.com/simform linkedin.com/company/simform/

More Related