Я запускаю сайт на стеке Ubuntu/Apache/Django/PostgreSQL. Недавно мы обновили наш сервер с 1 процессора с 2 Гб общей оперативной памяти (с 0,5 Гб из этой оперативной памяти, выделенной для memcached) на новый сервер с 2 процессорами с 4 Гб общей оперативной памяти (с 2 Гб из этой оперативной памяти, выделенной для memcached). Однако, когда я посмотрел в Google Webmaster Tools, я обнаружил, что средняя скорость страницы ухудшилась с 5 секунд до 15 секунд.
Почему производительность может ухудшиться после обновления оборудования? Что мне следует проверить и настроить? Более вероятно, что это проблема с memcached, Apache, Django или PostgreSQL?
Профилируйте вашу установку. Проверьте наличие узких мест. Возможно, у Postgres закончился ввод-вывод, или вам следует выделить ему больше оперативной памяти вместо memcached. Используйте поверх , он собирает "историческую" статистику и довольно тщательно.
Затем проведите сравнительный анализ на стороне клиента, потому что сайт может занять 10+ секунд из-за слишком большого количества HTTP-соединений, слишком большого количества небольших изображений, файлов CSS или JS. Используйте Y! Медленная или Google Page Speed ... или просто FireBug.
Кроме того, вы можете получить лучшие результаты, используя NGiNX для обслуживания статического контента перед всем этим Apache / Django. Или полностью откажитесь от Apache и используйте его (code.djangoproject.com/wiki/DjangoAndNginx) и что-нибудь вроде runit, чтобы рабочие остались в живых.