Skip to content

Instantly share code, notes, and snippets.

@janit
Last active November 19, 2020 09:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save janit/68f47ac69ee2d92e0e112630613cf965 to your computer and use it in GitHub Desktop.
Save janit/68f47ac69ee2d92e0e112630613cf965 to your computer and use it in GitHub Desktop.
Benchmark of eZ Platform EE 2.5.15 install on Composer 1.10 and 2.0

Recently I did a round of benchmark on the performance and memory implications for an install of Ibexa Experience. You can find this article with some analysis of results here: Benchmarks of Composer 2.0 vs 1.10 with Ibexa DXP

Björn Köster was interested in if I had did any tests for eZ Platform EE 2.5. I had not, but have now. Similar to with Ibexa DXP, the improvements are significant on 2.0. Scripts used for this (single) benchmark are in other files. See raw results below.

------8<------------------8<------------------8<------------------8<------------------8<------------

Composer 1.10:

Thu Nov 19 09:38:52 EET 2020
Darwin kampela.local 19.6.0 Darwin Kernel Version 19.6.0: Thu Oct 29 22:56:45 PDT 2020; root:xnu-6153.141.2.2~1/RELEASE_X86_64 x86_64
PHP 7.4.12 (cli) (built: Oct 29 2020 18:37:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.12, Copyright (c), by Zend Technologies
Composer version 1.10.7 2020-06-03 10:03:56
composer install v2.5.15 empty caches, no composer.lock: 289
composer req novactive/ezseobundle, full caches: 55
composer install v2.5.15 empty caches, with composer.lock: 197
composer install v2.5.15 full caches, with composer.lock: 16

------8<------------------8<------------------8<------------------8<------------------8<------------

Composer 2.0:

Thu Nov 19 09:29:57 EET 2020
Darwin kampela.local 19.6.0 Darwin Kernel Version 19.6.0: Thu Oct 29 22:56:45 PDT 2020; root:xnu-6153.141.2.2~1/RELEASE_X86_64 x86_64
PHP 7.4.12 (cli) (built: Oct 29 2020 18:37:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.12, Copyright (c), by Zend Technologies
Composer version 2.0.7 2020-11-13 17:31:06
composer install v2.5.15 empty caches, no composer.lock: 198
composer req novactive/ezseobundle, full caches: 9
composer install v2.5.15 empty caches, with composer.lock: 184
composer install v2.5.15 full caches, with composer.lock: 10
composer selfupdate --2
sleep 10
./benchmark25.sh
cp results.txt 2_0-3.txt
composer selfupdate 1.10.7
sleep 10
./benchmark25.sh
cp results.txt 1_10-3.txt
sleep 60
composer selfupdate 1.10.7
composer clearcache
rm -rf results.txt
rm -rf ibexa
composer clearcache
date > results.txt
uname -a >> results.txt
php --version >> results.txt
composer --version >> results.txt
git clone git@github.com:ezsystems/ezplatform-ee.git ibexa
cd ibexa
git checkout v2.5.15
rm -rf composer.lock
sed -i -e 's/@symfony-scripts/ps x -o rss,vsz,command | grep composer >> ..\/results.txt/' composer.json
start=$SECONDS
composer install --no-interaction
duration=$(( SECONDS - start ))
echo "composer install v2.5.15 empty caches, no composer.lock: $duration" >> ../results.txt
sleep 30
start=$SECONDS
composer req novactive/ezseobundle
duration=$(( SECONDS - start ))
echo "composer req novactive/ezseobundle, full caches: $duration" >> ../results.txt
sleep 30
cp composer.lock ..
cd ..
rm -rf ibexa
git clone git@github.com:ezsystems/ezplatform-ee.git ibexa
cd ibexa
git checkout v2.5.15
cp ../composer.lock .
sed -i -e 's/@symfony-scripts/ps x -o rss,vsz,command | grep composer >> ..\/results.txt/' composer.json
composer clearcache
start=$SECONDS
composer install --no-interaction
duration=$(( SECONDS - start ))
echo "composer install v2.5.15 empty caches, with composer.lock: $duration" >> ../results.txt
cp composer.lock ..
cd ..
rm -rf ibexa
git clone git@github.com:ezsystems/ezplatform-ee.git ibexa
cd ibexa
git checkout v2.5.15
cp ../composer.lock .
sed -i -e 's/@symfony-scripts/ps x -o rss,vsz,command | grep composer >> ..\/results.txt/' composer.json
start=$SECONDS
composer install --no-interaction
duration=$(( SECONDS - start ))
echo "composer install v2.5.15 full caches, with composer.lock: $duration" >> ../results.txt
date > results.txt
echo "\nResults: "
cat ../results.txt
@bjko
Copy link

bjko commented Nov 19, 2020

thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment