Objective
On blog post interpretation of the evolution of large-scale websites talking about the family move static files to CDN blog post all involve CDN, this time we will explain in detail the CDN architecture
Brief introduction
CDN is a content distribution network built on the network, relying on the edge servers deployed everywhere, through the central platform of load balancing, content distribution, scheduling and other functional modules, the user to obtain the required content near , reduce network congestion, improve users access response speed and hit rate. The key technologies of CDN include content storage and distribution technology.
the basic principle of CDN is to use a wide range of cache servers, distributing these cache servers to a relatively centralized area or network where users visit, and using global load technology to point users ' access to the closest working cache server when they visit the site. Directly responds to user requests by the cache server
Benefits
increase the speed of access to resources, provide users with a better user experience , such as access to a picture, originally, if the source station may need to obtain 30s, but after using the CDN may only need 1 ~ 5 s, because the CDN is from the user's closest server to obtain the picture resources
Applicable objects
Static resources, such as js,css, image resources, video, music resources, software resources, etc.
CDN Architecture
Instance: A user accesses a picture resource (for example, cdn.pic1.vincentguo.cn/test.jpg)
The browser resolves the cdn.pic1.vincentguo.cn cname to the CDN server through DNS
Internal CDN Server to see if files are on the CDN storage server through the storage engine
If the picture is returned directly to the user
If not, the CDN storage server starts to download pictures from the original site and then stores them back to the user picture
Key analysis
The following two points are also the two items that we must configure to use the CDN vendor service
CNAME action: Cdn.pic1.vincentguo cname to a domain name specified by the CDN vendor (specifically step one)
Configure Source Station Address: CDN Server could not find the picture will download resources from the source station website (specifically step four)
So each CDN resource items need to configure 2 domain names, such as my blog resource image configuration is as follows
CNAME operation: cdn.pic1.yunetidc.com CNAME 7xo9jr.v1.com.z0.glb.qiniudns.com. Source station Domain name configuration: pic1.vincentguo.cn A xxx.xxx.xxx.xxx ( Blog server IP)
Big Talk CDN Technology
In front of the main point is the user perspective, we come together to learn to provide a CDN service needs the technical accumulation
DNS Intelligent Parsing
Caching techniques such as VARNISH,SQUID, etc.
Load balancing technology such as Nginx
DNS Intelligent parsing
Why do I need intelligent parsing?
is to ensure that users of different hells can get resources from the nearest server to speed up the role.
So what is intelligent parsing?
For example, user Zhang Three is a user in Shanghai, Li Four is a user in Beijing, then through the regional strategy, Zhang San access to image resources is from the Shanghai server, John Doe is from the Beijing server to obtain
Caching technology
The pursuit of faster, although from the nearest server to get the resources is fast enough, but also can be through the cache technology can be faster, I work in contact with varnish and squid two kinds of technology. About Squid Introduction can see squid operation practice
Load Balancing
As the name implies is used to distribute the task, if our server is a group of more than one, then through the load Balancer software to balance the distribution of tasks
Summarize
I hope that through the user perspective and service provider perspective of the explanation, we have a certain understanding of the CDN
Original address: CDN Service Technology Architecture Diagram
Tags: CDN cname speed Optimization squid varnish
Smart recommendations
- Interpreting the evolution of large Web sites
- Create a private DNS service
- Capturing the JS error log
- "No.2 Ionic" Android packaging
- "PHP" Namespaces and auto-loaded relationships
CDN Service Technology Architecture Diagram