Home > Article > Operation and Maintenance > What can nginx do?
Where Nginx comes in
Nginx is a free, open source, high-performance HTTP server And reverse proxy server; it is also an IMAP, POP3, and SMTP proxy server; Nginx can be used as an HTTP server to publish the website, and Nginx can be used as a reverse proxy to implement load balancing.
About agency
Speaking of agency, first of all we must clarify a concept. The so-called agency is a representative and a channel;
Design at this time There are two roles, one is the agent role and the other is the target role. The process in which the agent role accesses the target role to complete some tasks through this agent is called the agent operation process; just like a specialty store in life ~ a customer buys something at an adidas specialty store For a pair of shoes, this store is the agent, the agent role is the adidas manufacturer, and the target role is the user.
Forward proxy
Before talking about reverse proxy, let’s take a look at forward proxy. Forward proxy is also the most common proxy mode that everyone comes into contact with. We I will talk about the processing model of forward proxy from two aspects, and explain what forward proxy is from the software aspect and the life aspect respectively.
In today's network environment, if we need to access certain foreign websites due to technical needs, you will find that we cannot access a certain foreign website through a browser. At this time, everyone An operation FQ may be used for access. The main method of FQ is to find a proxy server that can access foreign websites. We send the request to the proxy server, and the proxy server accesses the foreign website and then passes the accessed data to us!
The above proxy mode is called a forward proxy. The biggest feature of a forward proxy is that the client is very clear about the server address it wants to access; the server only knows which proxy server the request comes from, but not which specific one it comes from. Client; forward proxy mode blocks or hides real client information. Let’s look at a schematic diagram (I put the client and the forward proxy together, they both belong to the same environment):
The client must set up a forward proxy server, of course the premise is Know the IP address of the forward proxy server, as well as the port of the proxy program. As shown in the picture.
To summarize: Forward proxy, "it acts as a proxy for the client", is a server located between the client and the origin server (origin server). To obtain content from the original server, the client sends a request to the proxy and specifies the target (original server), and then the proxy forwards the request to the original server and returns the obtained content to the client. The client must make some special settings to use the forward proxy.
Use of forward proxy:
Access resources that were originally inaccessible, such as Google
Can be cached to speed up access to resources
Authorize client access and authenticate online
The agent can record user access records (online behavior management) and hide user information from the outside
Reverse proxy
Understanding what a forward proxy is, let’s continue to look at the processing methods of reverse proxy. For example, I have a website in Datian Dynasty. The number of visitors connected to the website at the same time every day has exceeded the limit. A single server is far from enough. People's growing desire to buy has emerged, and a familiar term has emerged: distributed deployment;
means deploying multiple servers to solve the problem of limiting the number of visitors; most of the websites on a certain The function is also implemented directly using Nginx for reverse proxy, and by encapsulating Nginx and other components, it has a fancy name: Tengine.
Interested children's shoes can visit Tengine's official website to view specific information: http://tengine.taobao.org/. So in what way does reverse proxy implement distributed cluster operations? Let’s first look at a schematic diagram (I frame the server and reverse proxy together, and they both belong to the same environment):
As you can see clearly from the above diagram, after receiving the requests sent by multiple clients to the server, the Nginx server distributes them to the back-end business processing server for processing according to certain rules. . At this time, the source of the request, that is, the client, is clear, but it is not clear which server handles the request. Nginx plays the role of a reverse proxy.
The client is unaware of the existence of the proxy. The reverse proxy is transparent to the outside world. Visitors do not know that they are accessing a proxy. Because the client does not require any configuration to access.
Reverse proxy, "it acts as a proxy for the server", is mainly used in the case of distributed deployment of server clusters. The reverse proxy hides the server information.
The role of the reverse proxy:
To ensure the security of the intranet, the reverse proxy is usually used as the public network access address, and the Web server is the intranet
Load balancing, optimize the load of the website through the reverse proxy server
For more Nginx related knowledge, please visit the Nginx usage tutorial column!
The above is the detailed content of What can nginx do?. For more information, please follow other related articles on the PHP Chinese website!