Home>Article>Backend Development> Introduction to the role of FastCGI between PHP and Nginx
This article brings you an introduction to the role of FastCGI between PHP and Nginx. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you. help.
1: What is CGI?
The protocol for transmitting information between server-side programming languages such as (such as php/java) and the Web server stipulates the transmission interface for http headers, forms and other information;
2: What is FastCGI?
Essentially, it is a protocol, an upgraded version of CGI. Back to the topic, what role does it play, and the role of standards. The role of all protocols is standards.
Note that it is not a process. Nginx has expanded a module based on this protocol, also called FastCGI, but the important thing is said three times.
FastCGI and CGI are both protocols, not processes;
FastCGI and CGI are both protocols. Not a process;
FastCGI and CGI are both protocols, not processes;
Compared with CGI, its advantages are as follows:
1. Monitoring, no need to load the configuration file every time a request is received, and start temporarily Processed by a process, but a process resident in memory, which can be processed immediately as soon as there is a request;
2. One master with multiple workers, similar to Nginx, if the number of workers and the cores of the machine are equal and bound one by one, it will Improve performance and effectively utilize CPU resources;
3. Smooth startup, Nginx also has this feature. When the configuration file is modified, the worker will update the configuration in time.
Three: So, what is php-fpm?
is a command line tool, also called a process manager. There will be several php-fpm processes when running.
Its characteristics are as follows
1. Implements the FastCGI protocol;
2. Used to manage the php interpreter (php-cgi),
The advantages of the FastCGI protocol have been discussed in the above three points Clear.
Voiceover:
Isn’t it a bit convoluted? For example, if you (php interpreter) are disobedient, the teacher (computer) will not be able to control you no matter what. Then, the teacher says you should stop listening. , just tell your dad (FastCGI) and ask your dad to take care of you. If you think about it if your dad kicks you into the wall (the teacher can do it and implement the FastCGI protocol), then it’s okay, just be obedient and you can start from The rebellious boy turned into a good student. From then on, he rose through the ranks, married Bai Fumei, reached the pinnacle of life, saved all mankind, and finally drove the earth to travel to the galaxy. Okay, the boss told me to stop the earth here first, and you can continue driving.
About the interaction between Nginx and server-side programming languages
If Nginx wants to transfer information with server-side scripting languages, it must use the FastCGI module
Configuration details: http://www.nginx.cn/ doc/stand...
About Nginx's reverse proxy and load balancing;
These two are generally mentioned together, and the reverse proxy is not configured separately.
Configuration details: http://www.nginx.cn/doc/stand...
What if you want to configure Nginx more freely?
There is a way, the complete list of Nginx modules is here, you can use it as you like, and it is highly recommended.
Nginx module collection: http://www.nginx.cn/doc/
Expansion question:
Nginx is a process, php-fpm is also a process, how are they connected? What about communications?
What are the inter-process communications and what are the application scenarios? Haha, at least three types (pipeline, signal, socket);
What is the use of data structure? (It’s so useful that every computer-related professional book would die if it didn’t mention this).
As a PHP programmer, should I learn data structures?
I think it should. And you should learn C, because only by continuous learning can you break the curse of becoming useless at the age of 40. Many people say that programmers cannot find a job when they are unemployed at the age of 40. I don’t believe it. If you become an expert, you can still make a living at the age of 40. worry?
The above is the detailed content of Introduction to the role of FastCGI between PHP and Nginx. For more information, please follow other related articles on the PHP Chinese website!