Yunjuan Yunshu: Summary of experience in software architecture design

#ArchitectureDesign#

Focusing on the general idea of ​​architecture design, it emphasizes the basic method theory of architecture design from the four aspects of usability, scalability, high performance and consistency, which is highly versatile and instructive.

Different designs of usability will bring different levels of usability performance, and the main indicator is "several nines".

Factors affecting availability include failures, changes, architectural design, burst traffic, etc.

Necessary fault-tolerant design is the most easily overlooked point. For example, avoiding single points, service degradation, retry mechanism, and isolation design must be done.

Traffic control is also a must for high-concurrency systems, such as using various current limiting algorithms to achieve global flow limiting at the gateway level, module current limiting at the module level, and open source tool flow limiting.

The disaster recovery here is universal. As shown in the figure above, for typical intra-city, remote, active-active, two-point centers, or even Kua AZ/Region, computing power network, etc. in a cloud computing environment, we need to focus on business The reality requires choosing a corresponding solution, and there is no way to decide which group pursues high-level disaster recovery. Cost is the biggest challenge.

The scalability design of the database is crucial, because the database is the core asset of the enterprise. Data security, controllability, data reading efficiency, and even cost are all important factors for the enterprise. Factors to consider, with the rapid development of cloud computing technology, cloud database, cloud native database , distributed databases are becoming more and more popular. For example, cloud databases can solve the most basic scalability problems, but this theory also has reference significance when developing cloud databases.

At the same time, using a cloud database does not mean that you can sit back and relax. Similarly, when designing the business architecture, using the cloud database well also requires relevant scalability design theory.

There is no secret to performance design. If there is one, it is "end-to-end performance-oriented design", including gateway, database, network, front-end, storage, data volume, concurrency, etc. In the end, it is best to have a "complete performance test" Assure.

Note: Summary of personal learning experience is for reference only. Welcome to leave a message and forward it.

Guess you like

Origin blog.csdn.net/bishenghua/article/details/134990606