Альтернатива PECL Imagick?

R
На сайте с 03.07.2006
Offline
214
589

Уже довольно долго использую библиотеку PECL Imagick, когда начинал её использовать понимал на что иду, но думал что решение временное... и как часто бывает нет ничего такого постоянного как временное. Но всё-таки сейчас решил, что пришло время вернуться к этому вопросу.

В чём проблема:

При подключении imagick.so рабочий размер исполнительных процессов php-fpm в ОЗУ увеличивается в два раза и время выполнения скриптов в целом, даже без использования функций библиотеки увеличивается примерно на 30%

Простой тест:

Файл index.php содержит <?php phpinfo(); ?>

C подключением imagick.so


ab -n 100000 -c 10 http://localhost/index.php
Requests per second: 1739.85 [#/sec] (mean)
VIRT RES SHR
60344 11m 5892 R 15.0 3.2 0:10.41 php-fpm

Отключаем Imagick.so

 

ab -n 100000 -c 10 http://localhost/index.php
Requests per second: 2484.99 [#/sec] (mean)
VIRT RES SHR
34288 4112 2228 R 22.6 1.1 0:01.84 php-fpm

Возможные пути решения:

1. переписывать все функции под exec();

2. возможно есть уже готовый класс использующий те же функции что и Imagick. Тогда не потребуется переписывать код по новой и можно будет подключать класс только там и тогда когда он нужен. К сожалению я такой не нашёл, по крайней мере полноценный. Возможно вы встречали?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий