1.2 Large web Site architecture evolution

Source: Internet
Author: User

The technical challenges of large Web sites come from a large number of users, high concurrent access and massive data
1. Initial stage of the Web site architecture
Large Web sites are developed from small sites, the same as the structure of the site, is gradually evolved from the small Web site architecture, only need a single server more than sufficient
2. Application services and Data Services separation
With the development of the website business, a server is gradually unable to meet the demand, more and more user access leads to poor performance, more and more data to cause the lack of storage space, then need to separate applications and data, such as: Application and data separation after the entire Web site using three servers, application server, File servers and database servers, separated by different characteristics of the server to assume different service roles, the site to deal with concurrency and data storage capacity has been greatly improved.
3. Use caching to improve Web site performance
Site access characteristics and the real world of wealth distribution follow the 28 law: 80% of the business visit focused on 20% of the data, shopping when most of the buyers focus on a small part of the evaluation of good merchandise, Baidu search keyword is also concentrated in a small number of hot words.
Since most of the business is concentrated on a small subset of data, caching a small portion of the data in memory can reduce the pressure on some databases and increase the speed of the site's access.
4. Using the application server cluster to improve the concurrent processing capacity of the Web site
Use the cluster when the site to solve the high concurrency, massive data problems commonly used means, when a server's processing capacity, storage space is insufficient, do not attempt to change a more powerful server, more appropriate way to add a server, sharing the original server access and storage pressure.
For the website architecture, as long as can improve the load pressure by adding one server, can continue to increase the server in the same way, continuously improve the system performance, realize the scalability of the system.
5. Database read and write separation
After the Web site is using the cache, so that most of the data read can not be completed through the database, but there is still a part of the read operation and all the write operations need to access the database, most of the current mainstream database provides master-slave function, can be a data server data update synchronization to another server, The website uses this function of the database to realize the database reading and writing separation, improves the database load pressure.
When the application server writes the data, it accesses the main database, and the primary database updates the data to the database through the master-slave replication mechanism, so that the data can be obtained from the database when the application server reads the data.
6. Use reverse proxy and CDN to speed up Web site response
With the development of the website business, the user scale is more and more large, the network situation is complex and other factors, different regions visit the site when the speed difference is great, in order to provide a better user experience, need to speed up the speed of the site access.
The principle of CDN and reverse proxy is basically cache
CDN is deployed in the network supplier's room, enables the user to request the website service, may obtain the data from the computer room closer to oneself
The reverse proxy is deployed in the center room of the website, when the user requests to reach the center room, the server that first accesses is the reverse proxy server, if the reverse proxy server caches the resource requested by the user, returns it directly to the user.

7. Using Distributed file systems and distributed database systems
Any powerful single server can not meet the growing business needs of large Web sites, database read and write separated from a server split into two or even servers, but with the development of the Web site is still unable to meet the needs.
Distributed database is the last means of Web site database splitting, only used when the scale of a single table database is very large. A more common means of database splitting is a business repository that deploys different business databases to different physical servers.
8. Using NoSQL and search engines
As the business of the website becomes more and more complex, the demand for data storage and retrieval becomes more and more complicated, the website needs to adopt some non relational database technology such as NoSQL and non database query technology such as search engine.
NoSQL and search engines are the technology from the Internet, scalable distributed features better support, application server through a unified data access module access to a variety of data to reduce the application management of many data sources of trouble
9. Business Split
Large Web sites in order to deal with the increasingly business scene, through the use of divide and conquer the means of the entire site into different product lines, such as large shopping sites will be the home page, buyers, buyers and other modules split into different product lines
10. Distributed Services
As business splits up and down, storage systems grow larger, the complexity of application systems grows exponentially, and deployment maintenance becomes more difficult
Since each application system needs to perform many of the same business operations, such as user management, commodity management, and so on, can be extracted from these common business, independent deployment. The application system only needs to manage the user interface.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.