есть немного опыт в оптимизации вп, за последний месяц 5 человек обращалось, все довольны. Попробую изложить основные моменты:
1) нах вордпресс, когда есть друпал? друпал охуенен. Те проблемы в архитектуре вп в друпале решены на уровне ядра.
А проблема в вп в том, что они заигрались нормирую БД, некоторые вещи нельзя было приводить ко 2-ой нормальной форме. Точнее, приводить то можно и хранить, а в процессе использования нужно строить промежуточную кеширующую таблицу. Эта проблема встречается в организации таксономий (теги, категории). Если категорий обычно "5-30", то тегов может быть 1000. При твоих кол-вах записей 1000 тегов вызовут тормоза. В друпале это решено изначально.
Работаю/изучаю друпал уже 3-4 месяц, пока недостатков не обнаружил и постоянно удивляюсь умности технических решений и его универсальности. А вордпресс - да, гопники пишут, которым похер до ресурсов твоего сервера, всегда же можно поставить кеширующий плагин - это у них палка выручалка такая.
2) Оптимизация сильно зависит от условий среды работы.
Конфиг сервака важен, от него зависит дальнейший тюнинг. Если ВПС, то диски слабые, полностью уходить в статику может оказаться плохой идеей, в том числе для соседей.
Трафа сколько? что за траф? ну поисковый наверно. Когда большое кол-во старниц - это значит тебя постоянно будут теребить боты, а боты будут ходить по ВСЕМ страницам. А это значит, что кешировать что-то "популярное" будет сложно, тем более если траф посетителей тоже распределяется равномерно.
3) nginx+php_fastcgi (php-fpm) - твой вариант, и слать далеко тех, кто предлагает апач. Апач - это удобный распиаренный софт для организации виртуальных хостингов.
ну nginx'ом можно слушать unix сокет вместо tcp, отключить логи, хотя бы логи статики.
На пхп поставить акселератор, если оно будет вообще использоваться
4) но это все хуйня, по сравнению с приготовлением базы. Конкретный рецепт дать не могу, т.к. многое зависит от размеров конкретных данных. Но могу точно сказать, изменение дефолтного конфига ускорит работу БД на порядок. Там надо в некоторых местах расширить индексные буферы, включить кеширование на уровне БД, увеличить размер временных таблиц и тд. Около 20 параметров. Также в самом вп по некоторым столбцам не хватает составных индексов, но я не помню по каким, надо дебажить лонгтайм запросы.
кол-во коннектов можно увеличить в бд и кол-во файллоков в системе, только делать это надо синхронно, иначе не полетит
5) поставь плагин wp-tuning чтоли, помогает смотреть где именно тормозит при загрузке страницы.
6) на всю статику 304 ответ, и можно на месяц прям
7) еще одна головная боль вп - это школоло плагины. Многие из них не расчитаны на нагрузку. Например, популярный плагин , который выводит похожие посты. Вот он пиздец тормозов дает, хотя изменив пару строк кода, нагрузка от него становится незаметной. Отключай все плагины! Даже самый безобидный плагин может оказаться губительным
8) ну и да, кеширование плагинами. Возможно с этого надо было начинать, но это слишком простой способ решения проблемы
Насколько я помню, вп поддерживает мемкешед на уровне софта. Если будет кеширование в статику, то можно и к фронтенду прикрутить мемкешед.
самое быстрое и экстренное, что может снизить нагрузку - это кеширование БД, о котором я упомянул в первом сообщении...ну и php кеширование в байт код. А без nginx точно никуда.
Все описанное мною снизит нагрузку на сервер примерно в 20-40 раз