Доброго времени суток. Есть сайт на чистом php 5.6 и mysql, занимался оптимизацией, работает быстро, по коду ни каких претензий не имею. Структура wp, главная > категории > запись, везде несколько запросов и цикл while. Сейчас хочу на том же скрипте запустить другой сайт, ожидаю что будет около 1000-2000 хостов, это больше в 10-20 раз чем сейчас и меня начал волновать вопрос быстродействия и нагрузки. Стоит ли возиться и переводить скрипт хотя бы на pdo или mysqli? Php 7 мне явно не нужен, не вижу смысла. Касательно pdo и mysqli сегодня час читал, конкретного ответа не нашел поэтому решил задать вопрос.
Что все таки быстрее mysqli или pdo ? На сколько конкретно? Интересуют именно цифры. Если не использовать всякие подготовленные запросы, кэширование, стоит ли вообще задумываться о переходе с mysql?
По факту оглашусь с рекомендацией Алексей Уколов. Тут возможен только ответ в стиле "больше ада".
Но для тех несчастных, которых угораздит попасть в этот вопрос из поиска, поясню:
Разницы между этими либами в скорости нет никакой. И на производительность сайта они не влияют вообще. Это все равно что спросить, в какой цвет покрасить убитый жигуль, чтобы ездил быстрее.
Николай, MySQL - это база данных.
Но автор имеет в виду mysql ext - библиотеку в пхп для работы с этой бд. Разница между этими библиотеками в том, что первая уже много лет отсутствует в языке. И использовать ее - это стрелять себе в ногу одновременно гадя себе на голову
As you can see in the results above, PDO was about 4.5% faster than mysqli and 6.8% faster than the old mysql API.16 мая 2017 г.
Разница есть, что подтверждается опытами. Стоит ли заморачиватся, выбирать разработчику. Впрочем если используется сторонний код и там есть mysqli, то возможно ради единообразия выбрать именно его.
о господи.
Есди один криворукий дурак написал на заборе х быстрее у, то это незыблемая истина. Теперь надо молиться на неё.
Впрочем, я давно понял что есть два типа людей. Одни понимают, что в реальной жизни влияет на производительность, и как её оптимизировать, а другие именно так - "подтверждается опытами что сферический конь в вакууме на два процентных пункта толще сферической кобылы". И говорить с ними бесполезно - какая-то функциональная часть мозга отсутствует.
Только метрики вам помогут причем собранные на вашем реальном приложении.
Создайте стенд, возьмите например apache jmeter , запишите типичную сессию клиента, добавьте сэмплер и прогоните для разных провайдеров несколько раз.
Если вы желаете своему сайту долгих лет жизни, то рано или поздно вам придётся соскочить с PHP5 на более старшую версию (например, закончится поддержка устаревшей версии), а это автоматически потянет за собой отказ от библиотеки myslq. Так что готовьте лыжи с лета.
Был mysql, стал mysqli, потом будет mysql-? pi какой нибудь и че каждый раз подстраивать сайт?!!! Поэтому делают в PDO чтоб не быть привязаным к li или pi.
А на скорость влияет не только количество запросов но и по каким столбцам происходит выборка по индексированым быстро по другим медленно. Присутствие такого элемента как LIMIT 1 для одной сроки ускоряет. В общем чем меньше циклов тем быстрее. Стараться писать нужно оптимизировано, без лишних прогонов и операций, выбирать то что необходимо, а не все подряд по принципу а вдруг пригодиться. Кешировать что можно Кешировать, сжимать то что сжимается {картинки, css, js...}, есть медленные операторы есть быстрые.