Php5-fss
Полезное для старых версий PHP расширение, позволяющее ускорить важнейшую для медиавики операцию — замену набора подстрок на набор других подстрок — примерно в 500 раз. «FSS» значит «Fast String Search» на основе алгоритмов Бойера-Мура и Комменца-Вальтера. Посмотреть доклад (мой, ага — VitaliyFilippov 16:21, 30 марта 2011 (MSD)) про это расширение можно здесь: lib:PHP-разгон: серебряная пуля из автомата Комменца-Вальтера (Commentz-Walter).
Реально это ускоряет работу MediaWiki в разы, особенно на больших статьях с большим количеством разметки (например, включений шаблонов, функций парсера…).
На зеркалах дебиана его нет, однако можно собрать из исходников вот отсюда:
Из исходников собирать нужно потому, что пакетов под i386 там нет, только под amd64. Сборка описана для тех, у кого есть под рукой Debian/Ubuntu.
Нужно скачать файлы:
- http://apt.wikimedia.org/wikimedia/pool/main/p/php5-fss/php5-fss_0.0.1.orig.tar.gz
- http://apt.wikimedia.org/wikimedia/pool/main/p/php5-fss/php5-fss_0.0.1-3.dsc
- http://apt.wikimedia.org/wikimedia/pool/main/p/php5-fss/php5-fss_0.0.1-3.diff.gz
Если нет пакетов php5-dev, debhelper, то поставить:
sudo apt-get install php5-dev sudo apt-get install debhelper
И далее сказать:
dpkg-source -x php5-fss_0.0.1-3.dsc cd php5-fss-0.0.1 debian/rules binary dpkg -i ../php5-fss_0.0.1-3_i386.deb
Либо можно добавить в /etc/apt/sources.list зеркало http://apt.wikimedia.org/wikimedia/ (обязательно с deb-src), и дальше apt-get update; apt-get source php5-fss и дальше всё то же самое.
Для версий PHP >= 5.3 в коде расширения(fss.c, строка 243) также следует изменить строчку
ZVAL_ADDREF(*value);
На строчку
Z_ADDREF_P(*value);