0. Why do we need to organize the network
In the configuration of the database server, those who have a greater impact on the performance of the database server are:
CPU: Database query and modification operations require a lot of CPU resources. In addition, databases are multi - threaded applications. Using SMP (symmetrical multi - processing) system can provide better performance. The CPU cache structure is also very important, because the clicks of the cache of the database are very high.
Memory: the most important performance factors. The database requires a large amount of memory to cache data. If the server does not have enough memory as a data cache, the disk subsystem is used as a cache. The access speed of the disk subsystem is much lower than the memory, which will reduce the system performance. The memory is too low, and the server is crashing due to too frequent disk access. Configure 256GB DDR3 memory to meet the data cache of the application system.
Disk: Even if the memory is sufficient, the system must execute a large amount of disk I/O. Read data from the hard disk and write modified data. Therefore, the access speed of the disk has a great impact on performance.
In short, there are many factors that cause the server abnormality. If one of the above factors is a problem, the server will be unavailable. Moreover, if the SLA promised by the server manufacturer is 99%, there will be (365-365x99%) ≈ 4 days in one year.
Therefore, in the case of budget permission, we should set up a server network to configure the load balancing; set up server monitoring, and automatically switch when a node hangs; build a multi - machine heat preparation and a master database network.
1. Feasibility scheme
This tutorial is about to explore the feasibility study of the personal from the following aspects and give solutions.
The following is the list of this series:
- The diversion according to the parsing line
- Molent Nginx load balancing
- Molent pHP load balancing
- Thisy to implement mysql
- Mysql reading and writing separation
Stay tuned!
2. Existing problems
The servers of this site are currently distributed in mainland China, Hong Kong, China, and the United States, and under several Tencent Cloud accounts.
Therefore, it is impossible to communicate directly through the internal network interconnection. It can only simulate the inner network through the software, and the actual bandwidth can be a public network bandwidth. In practice, I found that there is a problem of delaying such networking solutions. After the inquiry, I gave the networking solution that is in a bad network:
- Wireguard Network
- dnspod Intelligent analysis diversion
- DNSMASQ Manage the local DNS analysis
- Bt load balancing website returns
- Bt mysql master and slam copy database a master
- Proxysql Database reading and writing separation
May need to be prepared:
- Where at least 2 Linux servers (this site takes 5 units as an example)
- The upgrade server kernel to kernel 5.x (this site uses Kernel-ML-5.19)
- DNSPOD account (preferably professional version)
- The Bt Linux Panel Enterprise Edition (It is recommended to use the Happy Edition)
let's start!
Server cluster (1) Server network -related concept
Comments