улучшение производительности web2py - база данных и apache - PullRequest
3 голосов
/ 17 января 2011

Может кто-нибудь дать несколько советов о том, как улучшить производительность web2py (WSGI apache + MySQL)?У меня есть приложение, которое получает запросы Ajax от клиента каждые несколько секунд, чтобы получить доступ к базе данных и вернуть результаты.Сервер является машиной Ubuntu с 640 МБ ОЗУ (виртуальный сервер на Amazon EC2, без Xserver).

В конфигурации apache есть 4 WSGI-процесса.Недавно запущенный экземпляр apache2 оставляет около 300 Мб свободного места, но после ста запросов система работает медленно и возникают большие задержки.Перезапуск сервера помогает освободить память (я настраивал cron на это каждые 30 минут - но я полагаю, это плохая практика).

Буду благодарен за любое продвижение!Более мощный сервер пока недоступен из-за ограниченного бюджета.

Заранее спасибо!

Ответы [ 3 ]

2 голосов
/ 18 января 2011

Убедитесь, что вы используете пулы соединений.Имеет большое значение.

Также не используйте cron.Используйте фоновый процесс.Крон может съесть больше памяти, чем необходимо.

1 голос
/ 15 октября 2011

Если вы используете фоновые сценарии, обязательно совершите () или выполните откат () ваших транзакций. Это не требуется в среде web2py. Но если вы запускаете внешние скрипты, это будет необходимо.

1 голос
/ 28 апреля 2011

Чтение 11 рецептов развертывания книги Web2Py!Есть много способов улучшить производительность web2py

...