The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз языка программирования PHP 7.0"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Релиз языка программирования PHP 7.0" +/
Сообщение от AlexAT (ok), 10-Дек-15, 09:48 
>> Клиентов - тысячи, хостингу лет десять
> Я ж и говорю, шаред на арендованном дедике...  Видать, угадал)

Не угадал. Компанейский хостинг в принадлежащим компании ДЦ.

> Нет, чо, правда?  И даже всякие eaccelerator, xcache (тьма их) у
> вас в builtin'ах очутились?

Этим глючным говном мамонта кто-то реально ныне пользуется? Ни одной заявки от клиентов на подобное за последние годы. Впрочем, для кеша кода давно есть opcache. Ну и кеши eaccelerator/xcache на шаредах - прямой путь к проблемам.

Хотя ради честности скажу, что opcache у нас таки включен. Всё жду бэкпорта файлового режима opcache из 7-ки в экст для 5-ки, после чего переключу кеш на всех инстансах в file-only, и успокоюсь.

> успехом (стандартная библиотека PHP вне веб - убожество)

Стандартная библиотека PHP вне вёба на практике с успехом заменяет все руло^W километры туал^W кода на python/ruby/java для оных для большинства более-менее сложных приложений, не говоря уже о примитивных.

---

Самая простая задача: привернуть MySQL. В случае питона - немножко ыыы, надо тащить рулончик Connector/Python, но нормально. В случае руби - ад аццкий + проблемы с совместимостью в зависимости от версии библиотеки. Имеются две несовместимых версии. В итоге если что-то из зависимостей завязано на mysql, а что-то на mysql2 - гмкхм... Ну и опять же: оба экста - "выносные" рулончики, поддерживаемые сторонними разработчиками.

В случае PHP же в задаче с MySQL ничего делать не надо - все расширения встроенные, расширение mysqli уже бородатое, но ничего делать не надо. Да, оригинальное расширение mysql задепрекейтили, и в 5.6/семёрке его уже нет, но суть в том, что оно уже отжило даже де факто - все ушли на mysqli (благо это просто). PHP, кстати, один из немногих (если не единственный вообще, не уверен), имеющих нативную реализацию протокола mysql (mysqlnd) без необходимости тащить внешние библиотеки. Поддерживается всё это хозяйство разработчиками PHP.

Итого:
PHP = PHP -> mysqli (PHP) -> mysqlnd (PHP), ну или PHP -> mysql (PHP) -> libmysqlclient (oracle/mariadb/...)
python = python -> connector/py (oracle) -> libmysqlclient (oracle/mariadb/...)
ruby = ruby -> mysql/mysql2 (???) -> libmysqlclient (oracle/mariadb/...)

В случае PHP всё вообще красиво. В случае python - уровнем больше, но по крайней мере оба уровня взаимодействия с БД всерьёз поддерживаются. В случае ruby всё плохо - уровень "прокладки" между языком и MySQL только third-party.

Плюс в случае PHP при сборке с libmysqlclient мы "автоматически" получаем ещё несколько возможных внутренних db-independent интерфейсов с биндингами к libmysqlclient, если хочется абстракции. В случае прочих языков это всё будет только навесное.

> Можно я не буду верить на слово гуру с опеннету?

Можно, твои проблемы.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз языка программирования PHP 7.0, opennews, 03-Дек-15, 23:41  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру