Rakesh Jain
Rakesh Jain

@devops_tech

25 Tweets 22 reads Apr 02, 2023
What is a Micro Service!
Explained with two real life examples !
A Thread 👇
1/8 - A micro service is a small, independent component of a larger software application. It's designed to perform a specific task, and can be easily deployed and scaled independently of the rest of the application.
2/8 - Micro services are often used in modern software development, where agility and scalability are key. They allow developers to build and deploy software more quickly, without being tied to a monolithic architecture.
3/8 - An example of a micro service might be a payment processing service for an e-commerce application. It could handle tasks like authorizing credit card transactions, validating shipping addresses, and updating inventory in real-time.
4/8 - Another example might be a user authentication service. It could handle tasks like verifying user credentials, generating and managing access tokens, and storing user profiles.
5/8 - By breaking down an application into smaller, independent micro services, developers can more easily test and deploy updates, without having to worry about breaking the entire application.
6/8 - Micro services can also be scaled more easily, since individual services can be deployed on separate servers and scaled independently based on demand.
7/8 - However, managing a large number of micro services can be challenging, since each service requires its own set of infrastructure and monitoring tools.
8/8 - Overall, micro services are a powerful tool for modern software development, allowing developers to build and deploy software more quickly, efficiently, and at scale.
Here's an example of a micro service:
1/5 Let's say u r building an e-com website. One of the key features of ur website is the ability for customers to leave product reviews. Rather than building dis functionality into ur monolithic application, u cud create a separate micro service just for managing product reviews
2/5 This product review micro service would be responsible for handling all aspects of the review process, such as accepting new reviews, storing them in a database, and retrieving them for display on the website.
3/5 It could also handle additional tasks, such as sending review confirmation emails to customers, and generating review-related analytics for the website.
4/5 By creating a separate micro service for this feature, you can easily scale it up or down depending on demand. You can also update it independently of the rest of your application, without worrying about breaking other parts of the site.
5/5 Additionally, if you decide to switch to a different review management service, you can do so without affecting the rest of your application.
Another Example ->
The ride-sharing payment processing micro service
1/8 - Imagine you're building a ride-sharing application. One of the key features of the app is the ability to handle payments from riders to drivers.
2/8 - To handle payments, you could create a separate micro service just for payment processing. This micro service would handle all aspects of payment transactions, such as accepting payments, verifying payment information, and managing refunds.
3/8 - By creating a separate micro service for payment processing, you can easily scale it up or down depending on demand. You can also update it independently of the rest of your application, without worrying about breaking other parts of the app.
4/8 - Additionally, if you decide to switch to a different payment processing service, you can do so without affecting the rest of your application. This makes it easier to stay up-to-date with the latest payment processing technologies.
5/8 - The payment processing micro service could also handle additional tasks, such as sending payment confirmation emails and generating payment-related analytics for the application.
6/8 - By separating payment processing from the rest of the application, you can reduce the complexity of the overall system. This makes it easier to test, deploy, and maintain the application over time.
7/8 - Overall, micro services like payment processing are a powerful tool for modern software development. They allow developers to build and deploy software more quickly, efficiently, and at scale.
8/8 - Whether you're building a ride-sharing app or any other type of application, micro services can help you deliver a better user experience while reducing the complexity of your codebase.
Retweet the thread if you find it useful. Thanks!

Loading suggestions...