O que é um fastcgi?
fastcgi é uma extensão da interface de gateway comum (CGI) que foi desenvolvida por uma empresa agora extinta chamada Open Market. O FastCGI está disponível gratuitamente como um padrão aberto. Ele aborda certas deficiências no CGI que limitam o desempenho.
Ao contrário do CGI, o FastCGI não cria um novo processo para cada solicitação, minimizando assim a sobrecarga da criação e destruição do processo cada vez que uma solicitação é recebida. Essa sobrecarga pode ser contornada usando as interfaces de programas de aplicativos (APIs), como o NetScape Server Application Programming Interface (NSAPI) ou a Interface Application Programming Interface (ISAPI), mas, como são proprietários, há uma curva de aprendizado adicional e limitações nas linguagens suportadas a serem consideradas. Outra falha do CGI é o fato de que certos casos de reutilização não podem ser obtidos, como conexões com bancos de dados ou técnicas de cache. O manuseio de solicitações pode ser até 30 vezes mais rápido usando o fastcgi em relação ao CGI convencional.
com rápidoCGI, várias solicitações podem ser tratadas por uma única conexão, conhecida como multiplexação. Como alternativa, várias conexões podem ser usadas. As solicitações são transmitidas usando o protocolo de transferência de arquivos (FTP) ou soquetes. A mesma conexão é usada para retornar a resposta.
Embora a conexão possa ser fechada neste momento, o servidor da Web e o processo ainda persistem. Isso oferece muitas vantagens. Por exemplo, isso significa que o servidor e o processo de aplicação podem ser desligados ou reiniciados separadamente.
O FastCGI foi originalmente desenvolvido pelo Open Market e implementado em sua oferta de servidor da Web. A interface pode ser implementada em qualquer servidor, no entanto, e logo estava em vigor em vários outros servidores da Web do setor. O FastCGI é altamente compatível com a computação distribuída, portanto, um aplicativo FastCGI pode estar em execução em um servidor separado para o servir da Web. Isso oferece todas as vantagens deAumentar a disponibilidade de sistemas, de melhorar a escalabilidade e aumentar a segurança do sistema, porque os componentes são isolados. Ao usar o FastCGI remoto, há menos administração porque a rede interna pode lidar com a execução de aplicativos.
Assim como um aplicativo CGI pode gerar uma resposta a partir de uma solicitação de protocolo de transferência de hipertexto (HTTP), também pode fastcgi. Ele também lida com tarefas como verificar os tipos de dados de autenticação e converter. Essas tarefas são tratadas usando funções, que podem ser adicionadas e estendidas livremente.
fastcgi é simples de entender e será executado com quase qualquer linguagem de programação. Os processos são isolados, portanto, os servidores não podem ser travados por problemas específicos do aplicativo. Qualquer aplicativo criado com a estrutura FastCGI é atrasado, com servidores antigos executando o CGI. Além disso, a biblioteca de aplicativos foi projetada para simplificar a migração de aplicativos CGI.