Compilazione del codice fonte per il client del cluster ElastiCache per PHP - Amazon ElastiCache

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Compilazione del codice fonte per il client del cluster ElastiCache per PHP

In questa sezione viene illustrato come ottenere e compilare il codice fonte per il client del cluster ElastiCache per PHP.

Esistono due pacchetti che è necessario estrarre da GitHub e compilare; aws-elasticache-cluster-client-libmemcached e aws-elasticache-cluster-client-memcached-for-php.

Compilazione della libreria libmemcached

Librerie prerequisite

  • OpenSSL 1.1.0 o successiva (a meno che il supporto TLS non sia disabilitato tramite ./configure --disable-tls).

  • SASL (libsasl2, a meno che il supporto SASL sia disabilitato tramite ./configure --disable-sasl).

Per compilare la libreria aws-elasticache-cluster-client-libmemcached
  1. Avviare un'istanza Amazon EC2

  2. Installare le dipendenze di libreria.

    • Sull’AMI Amazon Linux 201509 o sull’AMI Amazon Linux 2

      sudo yum -y update sudo yum install gcc gcc-c++ autoconf libevent-devel make perl-core pcre-devel wget zlib-devel // Install OpenSSL 1.1.1 wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz tar xvf openssl-1.1.1c.tar.gz cd openssl-1.1.1c ./config make sudo make install sudo ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
    • Sull’AMI Ubuntu 14.04 (non richiesta per le versioni di Ubuntu con OpenSSL >= 1.1)

      sudo apt-get update sudo apt-get install libevent-dev gcc g++ make autoconf libsasl2-dev // Install OpenSSL 1.1.1 wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz tar xvf openssl-1.1.1c.tar.gz cd openssl-1.1.1c ./config make sudo make install sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libssl.so.1.1
  3. Estrarre il repository e compilare il codice.

    git clone https://github.com/awslabs/aws-elasticache-cluster-client-libmemcached.git cd aws-elasticache-cluster-client-libmemcached touch configure.ac aclocal.m4 configure Makefile.am Makefile.in mkdir BUILD cd BUILD ../configure --prefix=<libmemcached-install-directory> --with-pic --disable-sasl

    Se l’esecuzione di ../configure non riesce a trovare libssl (OpenSSL Library), potrebbe essere necessario modificare la variabile di ambiente PKG_CONFIG_PATH:

    PKG_CONFIG_PATH=/path/to/ssl/lib/pkgconfig ../configure --prefix=<libmemcached-install-directory> --with-pic --disable-sasl

    In alternativa, se non utilizzi TLS, puoi disabilitarlo eseguendo:

    make sudo make install ../configure —prefix=<libmemcached-install-directory> --with-pic --disable-sasl --disable-tls

Compilazione del client di individuazione automatica ElastiCache Memcached per PHP

Nelle sezioni seguenti viene descritto come compilare il client di individuazione automatica ElastiCache Memcached

Compilazione del client Memcached ElastiCache per PHP 7 o successivo

Replace (Sostituisci) PHP-7.x con la versione che si sta utilizzando.

Installa PHP:

sudo yum install -y amazon-linux-extras sudo amazon-linux-extras enable php7.x

Esegui il set di comandi seguente nella directory del codice.

git clone https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php.git cd aws-elasticache-cluster-client-memcached-for-php phpize mkdir BUILD CD BUILD ../configure --with-libmemcached-dir=<libmemcached-install-directory> --disable-memcached-sasl

Se l’esecuzione di ../configure non riesce a trovare libssl (OpenSSL Library), potrebbe essere necessario modificare la variabile di ambiente PKG_CONFIG_PATH nella directory dei file .PC di OpenSSL:

PKG_CONFIG_PATH=/path/to/ssl/lib/pkgconfig ../configure --with-libmemcached-dir=<path to libmemcached build directory> --disable-memcached-sasl

In alternativa, se non utilizzi TLS, puoi disabilitarlo eseguendo:

make make install ../configure --with-libmemcached-dir=<path to libmemcached build directory> --disable-memcached-sasl --disable-memcached-tls
Nota

Puoi collegare staticamente la libreria libmemcached nel file binario PHP per consentirne la portabilità tra diverse piattaforme Linux. A questo scopo, esegui il comando seguente prima di make:

sed -i "s#-lmemcached#<libmemcached-install-directory>/lib/libmemcached.a -lcrypt -lpthread -lm -lstdc++ -lsasl2#" Makefile

Compilazione del client ElastiCache Memcached per PHP 5

Compila aws-elasticache-cluster-client-memcached-for-php eseguendo i comandi seguenti nella cartella aws-elasticache-cluster-client-memcached-for-php/.

git clone https:////github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php/tree/php.git cd aws-elasticache-cluster-client-memcached-for-php sudo yum install zlib-devel phpize ./configure --with-libmemcached-dir=<libmemcached-install-directory> make make install