Новое расширение PHP под старым названием: event

в 6:53, , рубрики: event-driven, pecl, php, Веб-разработка, метки: , ,

В PEСL как-то перестали поддерживать расширения для libevent. В частности, libevent версии 2 не поддерживался ни одноимённым расширением libevent, ни расширением event(последний релиз был в 2004 году). Поэтому было решено переписать завалявшееся с 2004 года расширение «event».

Таким образом, event — это старое расширение в новом обличии:

  • поддержка libevent 2.0.2-alpha и выше, включая HTTP-сервер, Event Listener, DNS-резолвер и OpenSSL, а также некоторые функции буферов и «событий буферов», которые не были доступны в предыдущих версиях
  • новый объектно-ориентированный API
  • возможность конфигурации необходимых компонент(libevent_core, libevent_extra, libevent_pthreads, libevent_openssl) при установке

Переход на OO API связан с тем, что оригинальные названия функций в libevent не отличаются особой красотой:

bufferevent_setcb
bufferevent_setwatermark
bufferevent_socket_get_dns_error
evbuffer_add_buffer
evbuffer_get_contiguous_space

и т.п.

К тому же, член основной команды PHP, Johannes Schlüter заверил, что ресурсы практически не выигрывают в производительности по сравнению с объектами, а иногда даже проигрывают. Вообще, в последнее время наблюдается тенденция перехода к объектам.

Документация

http://docs.php.net/manual/en/intro.event.php. Примеры там же в разделе «Examples».

Установка

$ sudo pecl install event-beta

Расширение активно тестируется на Gentoo, Fedora, Ubuntu и FreeBSD. Пока время от времени появляется необходимость в исправлениях и дополнениях, код пребывает в beta-версии.

Надеюсь, это будет кому-то полезно.

Спасибо.

Автор: osmanov

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js