Skip to main content

Microservices

The software architecture is responsible for organizing the software structures (components, interactions of the components with each other, environment, principles used to design the software product).


A software architect is a person who is responsible for design architecture for a particular application. 


The software architect’s functions are,

1. Identify the system’s structure.

2. Identify the use-cases relevant to different scenarios.

3. Organize the user requirements (functional and non-functional)


There are many software architectures. When developing an application, the most suitable architecture has to be selected. Fault selection of architecture leads to the failure of an application where the time and allocated budget will become useless.


Micro-services 


Micro-services is an architecture, which has Service Oriented Architecture (SOA). SOA has an application scope. It is suitable for a large-scale application. The micro-service architecture uses to develop an application and structure it as a group of services.


This architecture has five core components are,

1. Micro-service

2. Container

3. Service mesh

4. Service discovery

5. API gateway.


When to use Micro-services?


  1. To build web applications that have to develop within a short period.
  2. To structure independent and individual services.
  3. To construct reusable services to use in many channels.
  4. To build common applications for enterprises.


Applications using micro-service architecture are,

  • Netflix 
  • Uber


Advantages


1. Platform independent.

The micro-services can implement by different developing teams using any technology and deployed in the cloud individually.

2.Usages of lightweight protocols.

3. Supports containerization and cloud computing. 

4. Presents of closely coupled services.

5. Scalable

 It helps to scale each service individually when required. 

6. Consume less time to market.

7. Speeds the CI/CD pipeline.

8. Easy to debug.


Disadvantages


 1. Poor performance 

Advanced tools are required to communicate. Therefore micro-service architecture will be problematic to handle by small companies. 

2.Message overhead

It leads to poor communication between services.

3. Complex

This architecture is complex because testing and monitoring are difficult.

4. Difficult to maintain 

It has poor load balancing

5. Poor security 


Conclusion


When developing and deploying an application, it is required to select a suitable architecture. Select a proper architecture before the coding process. If not, the entire team has to face issues at the end. 

Comments

Popular posts from this blog

What are SOLID Principles? Explained with OOP Concepts.

 What are SOLID Principles? Explained with OOP Concepts. SOLID Principles Software developers implement codes to meet the users' requirements and satisfy the clients. Some principles have to follow by software developers to enhance their code writing skills. The SOLID principles have considerable responsibility to guide the software developers, to make the software design by improving the code quality.  An American software engineer named Robert C.Martin created this principle. Why do we need SOLID principles? Advantages of using SOLID Principles. Make the code more understandable and readable. Make the code snippet as simple as possible by reducing the complexity. Make the lines of codes flexible. Therefore the code snippets are updatable or modifiable when required. To maintain the software codes easily. To reduce the dependencies. To make the code testable. To implement the code.  Solid principles have five(5) principles. The name is created by considering the first five letters

Go Language And Its Environment Set Up

  Go Language And Its  Environment  Set Up Features of Go language Go is a programming language, which is designed by Google(2007). Why it is introduced? 1. Limitations in the hardware. The performance of the system has to be increased. Using a large number of hardware parts like the transistor and the processor, which is not possible. When one of them increases the cost will increase or the performance will reduce. 2. The code is easy to maintain The code written with Go language has a simple and understandable syntax. These features help to maintain the code easily. Features of Go language Open-source. Used at the backend. Made of packages Performance is greater. Has garbage collection. Easy to read the code. Throughput is better. Has garbage collection. How to set up the environment to start coding in Go language. Initially go to  The Go Programming Language (golang.org)  and download Go language by clicking the relevant link(select the correct Operating System). Download Go Click o

7 Programming Tips For Developers (Beginners)

Beginners initially get scared when started coding. This blog is to help beginners. It will help to avoid the fear and make you more confident. 1. Code daily. “Practice makes a man perfect ” Practicing coding every day helps to overcome the fear of coding. It helps to improve our coding skills and build confidence step by step. Do not get demotivated at the initial stages. During the initial stages of coding, it takes more time to implement a function, takes many days to solve an error. It is totally fine. Every developer faced the same issue at the beginning, therefore you are not the first person to face this problem, and get stressed. Everything will be ok when you start coding continuously. When you start coding, you identify the mistakes and solve the problem by searching through the internet. You try to resolve the errors by yourself. When the problem is not solved, you can get help from other developers or colleagues. There are many resources to get help through the internet. T