gRPC es un marco de trabajo de llamada de procedimiento remoto moderno, de código abierto y de alto rendimiento. Si deseas usar las bibliotecas cliente de PHP con las API habilitadas en gRPC, debes instalar gRPC para PHP. En este instructivo, se explica cómo instalar y habilitar gRPC.
Objetivos
- Instala la extensión de gRPC para PHP.
- Habilita la extensión de gRPC para PHP.
Requisitos
Instala PECL
Ubuntu / Debian
sudo apt-get install autoconf zlib1g-dev php-dev php-pear
Si usas PHP 7.4 o una versión superior, este se debe instalar con la marca --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
Windows no requiere PECL.
Instala 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
Sigue las instrucciones de instalación oficiales de Composer para Windows.
Instala la extensión de gRPC
Cómo usar PECL
sudo pecl install grpc
Esto compila y también instala la extensión de gRPC para PHP en el directorio de extensiones de PHP estándar.
Compila a partir del código fuente
Sigue las instrucciones que se indican a continuación para compilar la biblioteca principal de gRPC y la extensión de PHP desde la fuente.
Clona el repositorio de gRPC desde GitHub.
git clone https://github.com/grpc/grpc
Compila y también instala la biblioteca principal de 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.
Compila la extensión de gRPC para PHP.
cd src/php/ext/grpc phpize ./configure make sudo make install
Windows
Los usuarios de Windows pueden descargar el gRPC precompilado directamente desde el sitio web de PECL.
Lee la documentación de PHP para instalar extensiones en Windows.
Habilita la extensión de gRPC en php.ini
Linux/macOS
Agrega la siguiente línea en cualquier parte del archivo php.ini
, por ejemplo, /etc/php7/cli/php.ini
.
Para encontrar este archivo, ejecuta php --ini
.
extension=grpc.so
Windows
Agrega la siguiente línea en cualquier parte del archivo php.ini
, por ejemplo, C:\Program Files\PHP\7.3\php.ini
.
extension=php_grpc.dll
Agrega gRPC como una dependencia de Composer
Usa Composer para agregar el paquete grpc/grpc
a tu proyecto de PHP:
composer require "grpc/grpc:^1.38"
Instala la biblioteca del entorno de ejecución de protobuf
Puedes elegir entre dos bibliotecas de Protobuf Runtime. Las API que ofrecen son idénticas. La implementación en C funciona mejor que la implementación (nativa) en PHP, mientras que la implementación nativa se instala más fácilmente que la implementación en C.
Implementación en C
Para mejorar el rendimiento con gRPC, habilita la extensión C en Protobuf.
Linux/macOS
Instala la extensión protobuf.so
con PECL.
sudo pecl install protobuf
Ahora agrega esta línea a tu archivo php.ini
, por ejemplo, /etc/php5/cli/php.ini
.
extension=protobuf.so
Windows
Descarga la extensión precompilada de Protobuf directamente del sitio web de PECL.
Ahora agrega la línea siguiente a tu archivo php.ini
, por ejemplo, C:\Program Files\PHP\7.3\php.ini
.
extension=php_protobuf.dll
Implementación en PHP
Para facilitar la instalación, solicita el paquete google/protobuf
mediante Composer.
composer require "google/protobuf:^3.17"
¿Qué sigue?
Ahora que instalaste gRPC y la extensión de gRPC para PHP, prueba las APIs habilitadas para gRPC, como Spanner.