Initial knowledge of architecture (1) Monolithic application architecture

Monolithic Application Architecture

      The architecture always feels far away from me, and sometimes I feel very confused. From today onwards, I will write down the three frameworks I have come to know. One is to accumulate what I have learned, and the other is to hope that someone can point out my shortcomings and learn from others.

 

      In the first  monolithic application architecture, I will summarize the advantages and disadvantages of the monolithic architecture, the technologies used in the monolithic architecture in the projects I have experienced, and the knowledge I need to master.

 

      The second  vertical application architecture 

 

      The third  microservice

 

      Monolithic application concept :

           In the project, all the functions need to be centralized in the same system by reference

 

     Application project type:

        Monolithic applications are commonly used in office systems such as SCM , ERP , and CRM .

 

      The following picture introduces the monolithic application architecture: (three-tier architecture)

       

        

 

 

 

 

      Describe the framework technology used between the various layers. Here is a summary of what I have seen and heard in my work.

      UI WebFromMVCWPFHTM...

            Concept: UI is often used to interact with users, and the aesthetic experience will be directly reflected here.

 

      BLL : It is often used to deal with business. I think the most important part of a framework is the business logic layer, because basically all operations are implemented in the business logic layer, and the design of an architecture is also reflected in the business logic layer, such as , (cache) Cache , logging, and various components we use in the project are all in the business logic layer. The business logic layer plays a role in data interaction because it is in the middle of the presentation layer and the data access layer. .

 

      DAL : Data access layer, the technologies used are Ado.NET, FE , Microsoft Enterprise Library, etc. The data layer is also called the persistence layer, and some people call it the data curing layer, which can access the database (add, delete, modify the database) , Find), various files, documents,

 

      DB : database, SQL Server , MySql , etc. (In an interview before, the interviewer asked me, where is your data solidified, and the database I answered is very disapproving of asking this way (easy to be confused) ( ~o~ )) 

 

      Advantages of monolithic architecture:

        (1) Ease of development: developers can develop a single application in a short time using current development tools . ( IDE friendly)

        (2) Ease of testing: Because there is no need to rely on other interfaces, testing can save a lot of time.

        (3) Easy to deploy: you only need to deploy the directory in the runtime environment

 

Disadvantages      of Monolithic Architecture

        (1) Insufficient flexibility: If any modification is made to the program, the modification is not only a point, but a top-down modification, and the effect must be seen after the entire program is deployed during testing. During the development process, it may be necessary to wait for other developers to complete the development before completing the deployment, reducing the flexibility of the team.

        (2) Reduce the performance of the system: It was originally possible to directly access the database, but now there is an additional layer. A function point needs to write code at each layer

        (3) Slow system startup: a process contains all business logic, and involves too many startup modules, which leads to prolonged system startup time.

        (4) The scalability of the system is relatively poor: when adding new things, it cannot be increased for a single point, but a global increase . It affects the whole body.

 

        I hope you can point out the shortcomings,  thank you!

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325284938&siteId=291194637
Recommended