O gRPC é um framework de chamada de procedimento remoto moderno, de código aberto e alto desempenho. Se você quer usar bibliotecas de cliente PHP para APIs com gRPC, é preciso instalar o gRPC para PHP. Veja neste tutorial como instalar e ativar o gRPC.
Objetivos
- Instalar a extensão gRPC para PHP.
- Ativar a extensão gRPC para PHP.
Requisitos
Como instalar o PECL
Ubuntu / Debian
sudo apt-get install autoconf zlib1g-dev php-dev php-pear
Se estiver usando o PHP 7.4 ou versões posteriores, o PHP precisa ter sido instalado com a sinalização --with-pear
.
CentOS / RHEL 7
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install php-devel php-pear gcc zlib-devel
macOS
curl -O https://pear.php.net/go-pear.phar
sudo php -d detect_unicode=0 go-pear.phar
Windows
O Windows não requer PECL.
Como instalar o Composer
Linux
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
macOS
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Windows
Siga as instruções de instalação oficiais do Composer (em inglês) para Windows.
Como instalar a extensão gRPC
Como usar o PECL
sudo pecl install grpc
Esse comando compila e instala a extensão PHP do gRPC no diretório de extensão padrão do PHP.
Criar a partir da fonte
Siga estas instruções para compilar a biblioteca central gRPC e a extensão PHP da fonte.
Clone o repositório gRPC do GitHub.
git clone https://github.com/grpc/grpc
Crie e instale a biblioteca principal do gRPC C.
cd grpc git submodule update --init make sudo make install It can take a few minutes to download and execute the library. If you have git version 1.8.4 or greater, you can speed up the `git submodule update --init` command by adding the `--depth=1` flag.
Compile a extensão PHP do gRPC.
cd src/php/ext/grpc phpize ./configure make sudo make install
Windows
Os usuários de Windows podem fazer o download do gRPC pré-compilado diretamente do site do PECL (em inglês).
Leia a documentação do PHP para instalar as extensões no Windows.
Ativar a extensão gRPC em php.ini
Linux / macOS
Adicione esta linha em qualquer lugar do arquivo php.ini
, por exemplo, /etc/php7/cli/php.ini
.
Para encontrar esse arquivo, execute php --ini
.
extension=grpc.so
Windows
Adicione esta linha em qualquer lugar do arquivo php.ini
, por exemplo, C:\Program Files\PHP\7.3\php.ini
.
extension=php_grpc.dll
Adicionar gRPC como uma dependência do Composer
Use o Composer para adicionar o pacote grpc/grpc
ao seu projeto em PHP:
composer require "grpc/grpc:^1.38"
Como instalar a biblioteca de ambiente de execução protobuf
É possível escolher entre duas bibliotecas de ambiente de execução protobuf. As APIs que elas oferecem são idênticas. A implementação C é melhor do que a implementação PHP (nativa), enquanto a nativa é mais fácil do que a C.
Implementação C
Para um melhor desempenho com o gRPC, ative a extensão C protobuf.
Linux/macOS
Instale a extensão protobuf.so
usando PECL.
sudo pecl install protobuf
Agora, adicione esta linha ao arquivo php.ini
, por exemplo, /etc/php5/cli/php.ini
.
extension=protobuf.so
Windows
Faça o download da extensão protobuf pré-compilada diretamente do site do PECL (em inglês).
Agora, adicione esta linha ao arquivo php.ini
, por exemplo, C:\Program Files\PHP\7.3\php.ini
.
extension=php_protobuf.dll
Implementação PHP
Para facilitar a instalação, exija o pacote google/protobuf
usando o Composer.
composer require "google/protobuf:^3.17"
A seguir
Agora que você instalou o gRPC e a extensão PHP para gRPC, teste as APIs ativadas para gRPC, como o Spanner.