【问题标题】:Install HHVM on IBM Bluemix在 IBM Bluemix 上安装 HHVM
【发布时间】:2023-03-28 07:34:01
【问题描述】:

我在 IBM Bluemix 上有一个 Web 应用程序。我想通过使用 Facebook 的 HHVM 预编译 PHP 来加速应用程序。如何才能做到这一点?这在 Bluemix 上可行吗?

谢谢,

--

【问题讨论】:

  • 这是一个注意事项。虽然与代码没有直接关系,但问题是针对该主题提出技术问题。

标签: php ibm-cloud hhvm precompile pre-compilation


【解决方案1】:

是的,这实际上是。这样做会有点工作,但是使用构建包,您基本上可以运行任何可执行文件。您只需要绑定到由环境变量$PORT 分配的端口。查看the Cloud Foundry Docs 的实施。我也会在 C buildpack 上达到顶峰。

binary buildpack 可能是您最好的起点。

您可以使用 HHVM 编译您的代码,我从下面的here 中提取了相关部分。这需要在 Ubuntu 14.04 上完成,因为这是运行 Bluemix 的平台。

安装部门:

sudo apt-get install autoconf automake binutils-dev build-essential cmake g++ gawk git \
  libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \
  libboost-system-dev libboost-thread-dev libboost-context-dev libbz2-dev libc-client-dev libldap2-dev \
  libc-client2007e-dev libcap-dev libcurl4-openssl-dev libdwarf-dev libelf-dev \
  libexpat-dev libgd2-xpm-dev libgoogle-glog-dev libgoogle-perftools-dev libicu-dev \
  libjemalloc-dev libmcrypt-dev libmemcached-dev libmysqlclient-dev libncurses-dev \
  libonig-dev libpcre3-dev libreadline-dev libtbb-dev libtool libxml2-dev zlib1g-dev \
  libevent-dev libmagickwand-dev libinotifytools0-dev libiconv-hook-dev libedit-dev \
  libiberty-dev libxslt1-dev ocaml-native-compilers libsqlite3-dev libyaml-dev libgmp3-dev \
  gperf libkrb5-dev libnotify-dev

下载 HHVM 源代码:

git clone git://github.com/facebook/hhvm.git --depth=1
cd hhvm
git submodule update --init --recursive

构建 HHVM:

cmake -DMYSQL_UNIX_SOCK_ADDR=/var/run/mysqld/mysqld.sock .
make -j [number_of_processor_cores] # eg. make -j 4
sudo make install

安装的hhvm二进制文件可以在/usr/local/bin找到

【讨论】:

    【解决方案2】:

    使用内置的 PHP buildpack 很容易做到这一点。只需在 composer.json 文件中指定对 HHVM 的依赖项,如下所示: { "require": { "hhvm": ">=3.5" } }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多