Project Background
Enter the primary server:
The performance of a website depends on many aspects. A project has special characteristics and needs to be analyzed based on actual conditions. Let's take an example.
Customer case:
Background:
Customer A's website content mainly includes:
1. Information Portal System
2. Video Publishing System-> video search engine center
3. User SNS Network
4. log on to the SSO Center
5. Project Management bug, Customer tracking system, and Web CILS System
6. Community system: common Community systems such as IM and letters
7. Independent comment system for publishing system calls
8. Advertising and hot spot information bidding systems should be linked to all the group's systems
9. There are related web CILS systems in the enterprise, system-related information and C/S Systems in the Enterprise
ArchitectureData Synchronization and transmission requirements for CRM/ERP systems ......
10. other function systems that can be added at any time based on business development
The above system requires that the response of user experience programs should not exceed 2 seconds. The number of user registrations is about 0.1 billion, and the daily PV of access volume is nearly 0.2 billion. The number of independent IP addresses is about-IP addresses per day, maximum peak time 50000
The number of active users is almost 5 million (at least one website user is visited in two weeks)
Number of server devices
Three F5 or LVS
20 mainframes
About 500 servers in
About 300 servers
There is another resource,
There are nearly 1000 ~ 5000 low-end Linux distributed computing servers
The operating system mainly uses Linux, some old C/S
ArchitectureThe application uses windows 2003 + SQL Layout
PHP 5.2.6
Apache/Lighttp/NginxOr a custom web server.
MySQL NDB + MySQL M/S
MogileFSDistributed Image Storage
MemcachedObject Distributed Storage
SolrFull-text search engine
.....
Available bandwidth distribution (reference ):
Other servers are distributed at Level 2, with Squid or Varnish CDN deployed on Level 3 nodes.
Project Load BalancingArchitecturePrinciples
Software: LVS, Linux Virtual Server, or F5 DeviceVarnish
High scalability:Hight Scalability
High Availability:Hight Availability
Manageability:Manageability
High efficiency and low cost:
Server Load balancer mainly involves the following technical blocks:
1. Load Scheduler: Load Balancer:
Send user requests to the server node closest to the user according to GeoDNS and IPVS
2. Connection Pool:Server Pool:
The user is taken to the requested resource server based on the user's request.
3. shared Storage: Share Storage:
Resource Data Base, attachment, and image resources requested by the user
II. Application LayerArchitecture
Overall core of the Group framework
ArchitecturePhp + mysql
Framework PHP Directory:
Framework // main development Framework of the Group
Portal // group Portal Model Framework
Updating ....
Iii. backend database processing module (C, PERL, SHELL)
Updating ....
Iv. Database
Architecture
1. Hash Table sharding Algorithm
2. MySQL Master/Slave
Architecture
3. MySQL NDB Cluster
4. Data Table design at the main business layer
Updating ....
Http://bbs.phpchina.com/viewthread.php? Tid = 25864 & highlight = % BC % DC % B9 % B9