In order to improve the performance and workload of the server, enterprises usually use DNS server, network address translation technology to achieve multiple server load balancing, especially the current enterprise external Internet Web site, many are through several servers to complete the server access load balance.
At present, the so-called "load balancing server" used by the enterprise is actually a control server of the application system, all the users ' requests are first to this server, and then the server assigns the request to some actual processing server according to the actual processing server state. The external domain name and IP address are the servers. Load balancing control and management software installed on this server, this server is generally only doing load balancing task allocation, but not the actual server processing network requests.
First, using network address translation to achieve multiple server load balancing
A load-balanced address translation gateway can map an external IP address to multiple internal IP addresses and dynamically use one of the internal addresses for each TCP connection request to achieve load balancing. Many hardware vendors integrate this technology into their switches as a function of their layer fourth switching, typically by randomly choosing a load-balancing strategy based on the number of connections to the server or response time. However, the hardware implementation of the load controller flexibility is not strong, can not support a more optimized load balancing strategy and more complex application protocols.
The load balancer based on network address translation can effectively solve the CPU and disk I/O load on the server side, however, the performance of the load balancer itself is limited by the network I/O, and it has certain bandwidth limitations under certain hardware conditions, but it can improve the algorithm and improve the hardware performance of the load Balancing program To increase this bandwidth limit. Different service types occupy different server resources, and the load measurement strategy we use is evaluated using the same load, which is appropriate for most conditions, but the best approach is to monitor the server load separately for different resources, such as CPU, disk I/O, or network I/O, The central controller selects the most appropriate server to distribute the customer request.
Second, the enterprise realizes the Web server load Balancing
In order to distribute the load evenly to multiple internal servers, it is necessary to apply a certain load balancing strategy. The dynamic load balance of each server group is realized by the server load balancing device, and redundant backup is carried out. and require a certain degree of scalability of the new system, such as data access continues to increase, you can add a new server to join the load balancing system.
For Web Service applications, there are several machines that provide services, and the state of each machine can be set to regular (normal) or backup (back state), or to a regular state at the same time. The load balancing device determines the server to which the next user's request will be redirected, based on the administrator's pre-set load algorithm and the actual dynamic load of the current network. And all this is completely transparent to the user, the user completes the request to the Web service, and does not have to care about which server completes.
Third, the enterprise realizes SQL Server database server load Balancing
The MS SQL Server database server can be said to be the most widely used database product and is increasingly serving in large and more critical application systems. When the enterprise application becomes more and more complex, the data quantity is bigger and larger, the SQL Server database must keep processing, the storage, the inquiry work, this time the enterprise must consider the SQL Server database server performance and the speed and the security. However, for a long time, the SQL Server database server has only "hot standby" solutions and no "load balancing" and "cluster" solutions.
With the advent of database router software icx, it provides a better clustering solution for the database system based on MS SQL Server. It can truly implement the dynamic load balancing of SQL Server database server, improve performance and speed; it can truly ensure that the SQL Server database server uninterrupted service, in the event of server failure in real-time switching to other servers to continue to provide services, switching time is "0". The database router is a real-time concurrent database transaction synchronization replicator and a load balancer.
All database clients access the database through ICX. When accessing and querying SQL Server databases, ICX can allocate servers to provide services according to actual situation, greatly improve service speed and optimize performance, and complete load balancing. ICx can be connected to multiple databases at the same time, and the contents of these databases are fully consistent with icx guarantees at any time. In other words, ICX uses a new way of concurrent transactions to replicate transactions to the connected n databases, making the system have multiple consistent, up-to-date logical database datasets at any one time. When one of the database servers fails, ICX can switch to other servers in real time and continue to provide services. True to achieve zero-time server switching, greatly improve security, the real meaning of the implementation of server uninterrupted service.
Four, using DNS server to achieve load balancing
Access to the Enterprise network server has increased dramatically, a server is difficult to meet the user's access needs, then how to ensure that the user's normal access? There are many solutions, such as using Windows 2000 or Windows Server 2003 to provide Network Load balancing services. However, the settings for this service are very complex. It is a simple method to realize Network Load Balancing through DNS server.
Enterprise networks are often made up of subnets, and in order to reduce data traffic in the network, it is best for clients to access Web servers that are in the same subnet. Although the Network Load Balancing function is realized, it does not guarantee that the client is accessing the Web server of the Notebook network. In fact, this problem is also very good to solve, as long as the DNS server enabled the "Enable netmask sorting" feature. In the DNS Manager window, right-click the DNS server, select Properties from the pop-up menu, and then switch to the Advanced tab in the Properties dialog box to check the "Enable netmask sorting" option in the Server Options list box. This allows the client to access the Web server in the notebook each time. When the above settings are completed, the DNS server realizes the Network Load Balancing function, the client's access is shared on each Web server, and the network traffic across the subnet is reduced, which greatly reduces the communication burden of the enterprise network.