We know that simply relying on improved hardware performance does not really solve the website http://www.aliyun.com/zixun/aggregation/13996.html "> Load balancing problem." Because the performance of a single server is always limited, generally speaking, a PC server can provide a concurrent access processing capacity of about 1000, more high-end dedicated server to support 3000-5000 concurrent access, such capacity is still unable to meet the requirements of the larger site load.
Especially the network request has the abrupt nature, when some important event occurs, the network access will rise sharply, thus causes the network bottleneck. You must use multiple servers to provide network services and allocate network requests to these server shares to provide the ability to handle a large number of concurrent services.
When using multiple servers to share the load, the easiest way is to use different servers in different ways. When split by the provided content, you can use one server to provide a news page, another to provide a game page, or you can split by server functionality, use one server to provide static page access, and others to provide dynamic page access that requires a lot of resource consumption, such as CGI. However, due to the sudden network access, making it difficult to determine those pages caused by the load is too large, if the service of the page segmentation will cause a lot of waste.
In fact, the heavy load of the page is often in the change, if you want to constantly follow the load changes to adjust the page of the server, then the management and maintenance will cause great problems. So this segmentation method can only be the general direction of adjustment, for large load of the site, the fundamental solution also need to apply load balancing technology.
The whole network system design of large website
An education website is a large distance education website, which may involve a wide range of Web applications, including compute-focused applications, frequently read and write applications, such as Web databases, large volumes of applications such as streaming media services, and access to large applications such as Web applications.
Due to the existence of a wide range of Web applications, so for the Web site system, data flow load is not uniform. For the calculation of centralized applications, the server computing load will be very large; for frequently read and write applications, the storage system is facing the test; for the large volume of applications, network bandwidth is the key; For large access applications, firewalls and routers become bottlenecks.
For the above problems and analysis, first of all, from the hardware and network structure to maximize network and system performance and efficiency. First of all, the use of High-performance PC server as a network server, improve the computing and load capacity of the server. High read-write speed and performance with a large capacity, high transfer rate storage system and RAID 5 technology. For streaming media services and Web applications, gigabit technology is used to achieve high speed access to the Internet; High performance firewalls are used to provide both intranet access and Web publishing services, while achieving efficient Web access.
II. Web site Load Balancing solution
An education website as a large-scale education website, the volume of business development will be very rapid, and the new application of the network, even in accordance with the current optimal configuration of the Web site system, will soon lag behind the development of network traffic. In particular, the core of the site, its data flow and computational strength of the large, making a single device impossible to afford, and how to achieve a reasonable distribution of traffic between multiple network devices with the same functionality so that it does not appear that a device is too busy and other devices are not fully functioning, becomes a problem. Therefore, the load balancing mechanism arises.
Load balancing is built on existing network structures, providing a cheap and efficient way to extend server bandwidth and increase throughput, enhance network data processing capabilities, and improve network flexibility and availability. It mainly completes the following tasks: Solve the network congestion problem, provide the nearest service, realize the geographical independence, provide the users with better access quality, improve the server response speed, improve the utilization efficiency of the server and other resources, and avoid the single point failure in the network key parts.
According to the above analysis, the traffic load may appear in many places in the network, so the load balancing strategy should have a variety of forms. The generalized load Balancing can set up a special gateway, load balancer, and can be realized by some special software and protocols. The 第二、三、四、七 layer in the OSI Seven layer protocol model has corresponding load balancing strategy, for example, on the data link layer, different links can be selected based on the MAC address of the packet, and in the network layer, the data stream can be unblocked to multiple nodes based on the IP address allocation method. The so-called fourth-level exchange, and even the seventh layer exchange, is a kind of control mode based on traffic flow, which plays the role of load balancing.
Therefore, we will elaborate the system load balancing scheme of an education website from the level of the network.
1. server cluster solution with balanced strategy
Web servers and other application servers in an educational Web site carry important Web applications. However, a single computer can provide a limited level of server reliability and scalability. However, by connecting the hosts of two or more advanced servers into a cluster, Network Load Balancing can provide the reliability and performance required for mission-critical servers.
Using a distributed architecture with multiple servers, Web sites and other applications are distributed across multiple servers, and web and other application services for an educational web site are distributed across 4 IBM x336 servers. Each of these servers has an equivalent status, and can provide services separately without the assistance of other servers. Then, through the tin-rong-letter Ng FW4000 Firewall, the external sent requests are evenly distributed to 4 servers, and the server receiving the connection request responds independently to the client's request. Because it is not difficult to build a completely consistent Web server through synchronous distribution, the load balancing technology based on server clusters is easy to implement.