From 7789fb6f15c1ebcb4cbea2b8da70236d4b45ca2d Mon Sep 17 00:00:00 2001 From: Joanhey Date: Sat, 18 Jan 2025 11:41:08 +0100 Subject: [PATCH 1/2] [php] Reactphp add libuv variant --- frameworks/PHP/reactphp/benchmark_config.json | 19 ++++++++++ .../PHP/reactphp/reactphp-libuv.dockerfile | 35 +++++++++++++++++++ frameworks/PHP/reactphp/reactphp.dockerfile | 2 +- 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 frameworks/PHP/reactphp/reactphp-libuv.dockerfile diff --git a/frameworks/PHP/reactphp/benchmark_config.json b/frameworks/PHP/reactphp/benchmark_config.json index eb04329ba1a..e73762276f2 100644 --- a/frameworks/PHP/reactphp/benchmark_config.json +++ b/frameworks/PHP/reactphp/benchmark_config.json @@ -20,6 +20,25 @@ "display_name": "reactphp", "notes": "", "versus": "php" + }, + "libuv": { + "json_url": "/json", + "plaintext_url": "/plaintext", + "port": 8080, + "approach": "Realistic", + "classification": "Platform", + "framework": "reactphp", + "language": "PHP", + "flavor": "PHP8", + "database": "MySQL", + "orm": "Raw", + "platform": "reactphp", + "webserver": "None", + "os": "Linux", + "database_os": "Linux", + "display_name": "reactphp [libuv]", + "notes": "", + "versus": "reactphp" } }] } diff --git a/frameworks/PHP/reactphp/reactphp-libuv.dockerfile b/frameworks/PHP/reactphp/reactphp-libuv.dockerfile new file mode 100644 index 00000000000..48126b5c59c --- /dev/null +++ b/frameworks/PHP/reactphp/reactphp-libuv.dockerfile @@ -0,0 +1,35 @@ +FROM ubuntu:24.04 + +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt-get update -yqq && apt-get install -yqq software-properties-common > /dev/null +RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php > /dev/null +RUN apt-get update -yqq > /dev/null && \ + apt-get install -yqq git unzip wget curl build-essential \ + php8.4-cli php8.4-mbstring php8.4-dev php8.4-xml > /dev/null + +# An extension is required! +# We deal with concurrencies over 1k, which stream_select doesn't support. +# libuv +RUN apt-get install -yqq libuv1-dev > /dev/null \ + && pecl install uv-beta > /dev/null \ + && echo "extension=uv.so" > /etc/php/8.4/cli/conf.d/uv.ini + +# libevent +# RUN apt-get install -y libevent-dev > /dev/null \ +# && pecl install event-3.1.4 > /dev/null \ +# && echo "extension=event.so" > /etc/php/8.4/cli/conf.d/event.ini + +COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer + +COPY --link deploy/conf/* /etc/php/8.4/cli/conf.d/ + +WORKDIR /reactphp +COPY --link . . + +RUN composer install --prefer-dist --optimize-autoloader --no-dev --quiet + +EXPOSE 8080 + +ENTRYPOINT ["/usr/bin/php"] +CMD ["server.php"] diff --git a/frameworks/PHP/reactphp/reactphp.dockerfile b/frameworks/PHP/reactphp/reactphp.dockerfile index a46c613938f..0ecb546a1c3 100644 --- a/frameworks/PHP/reactphp/reactphp.dockerfile +++ b/frameworks/PHP/reactphp/reactphp.dockerfile @@ -27,7 +27,7 @@ COPY --link deploy/conf/* /etc/php/8.4/cli/conf.d/ WORKDIR /reactphp COPY --link . . -RUN composer install --prefer-dist --optimize-autoloader --no-dev +RUN composer install --prefer-dist --optimize-autoloader --no-dev --quiet EXPOSE 8080 From a614fcf4e8cd420de83fbc1e0e9186008552c5bd Mon Sep 17 00:00:00 2001 From: Joanhey Date: Sat, 18 Jan 2025 20:22:39 +0100 Subject: [PATCH 2/2] Add libevent --- frameworks/PHP/reactphp/benchmark_config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/PHP/reactphp/benchmark_config.json b/frameworks/PHP/reactphp/benchmark_config.json index e73762276f2..e53c029d748 100644 --- a/frameworks/PHP/reactphp/benchmark_config.json +++ b/frameworks/PHP/reactphp/benchmark_config.json @@ -17,7 +17,7 @@ "webserver": "None", "os": "Linux", "database_os": "Linux", - "display_name": "reactphp", + "display_name": "reactphp [libevent]", "notes": "", "versus": "php" },