Сегодня на моем форуме произошел первый резкий скачок трафика, и пользователи столкнулись с первой крупной проблемой. Каждые 5–10 минут они получали сообщения о выходе из системы, их возвращало на главную страницу, но в большинстве случаев они оставались авторизованными.
Мой форум размещен на базовом Droplet от DigitalOcean с общим процессором, 1 ГБ оперативной памяти и работает уже около недели.
Скачок произошел во время матча, когда в одной теме было опубликовано 400 сообщений за 90 минут (по мере развития игры). По всей видимости, в этот период на форуме находились 40–60 авторов, и я не думаю, что было много анонимных посетителей (всего у нас 250 зарегистрированных пользователей).
Это мой первый форум. Можно ли считать это пределом возможностей для Droplet начального уровня?
Загрузка процессора достигала пика в 60%, и во время матча форум оставался быстрым и отзывчивым.
У DigitalOcean нет графика использования памяти, но я зашел в консоль сразу после матча и увидел, что память была использована на 87% (при наличии 2 ГБ своп-памяти — около 37% её использования).
Какие действия вы бы рекомендовали?
Обновить до Droplet с 2 ГБ памяти к следующему матчу и посмотреть, как всё будет работать?
Переустановить систему, возможно, удалив некоторые плагины?
Изменить пороговое значение, которое запускает это событие?
Извините за мою наивность, я всё ещё многому учусь.
Мне кажется, никакого перенаправления или автоматического выхода из системы нет, так что я не понимаю, о чём они говорят. Вы просто видите тему как анонимный пользователь из-за высокой нагрузки.
Интересно, не связано ли это с проблемами вашей установки. Вы устанавливали по нашему официальному руководству? Есть ли какие-то странные сторонние плагины?
Увеличение оперативной памяти (с 1 ГБ до 2 ГБ) не оказало заметного влияния во время недавнего пика нагрузки. Хотя я никогда не изменял и не пересоздавал файл app.yml, так что не уверен, имело бы это значение?
А вот увеличение количества виртуальных процессоров с 1 до 2, похоже, решило проблему.
В последнее время у нас было много работы из-за подписания новых игроков, и никто не жаловался на проблемы с выходом из аккаунта. Завтра большой тест — ожидается масштабное событие, но пока всё выглядит хорошо.
В отличие от прошлого раза, когда это было постоянным раздражителем (возникало каждые 4–5 минут) во время игры в выходные, на этот раз это не казалось серьезной проблемой.
Похоже, что лишь небольшое количество пользователей получало сообщение о высокой нагрузке всего один раз во время игры. Но никто не был исключен из обсуждения.
Переход на Discourse стал огромным успехом: появилось множество постов от людей, которых не видели годами (как минимум на 50% больше пользователей). Поэтому через две недели я перееду с Digital Ocean на Hetzner, чтобы сохранить доступную стоимость и одновременно получить более мощный сервер для обработки всплесков нагрузки (хотя искушение просто масштабировать сервер вверх и вниз на те два часа в неделю тоже велико).