Laravel для сложной браузерной игры на сайте

Много написано о выступлении Laravel. Это не самая лучшая среда, когда речь идет о быстрых приложениях, но у нее много возможностей, замечательное сообщество и документация. Я хотел бы знать, подходит ли Laravel моей ситуации:

В настоящее время я разрабатываю браузерную игру, в которую, надеюсь, будут играть тысячи посетителей со всего мира. Одновременно может быть более 3000 одновременно работающих пользователей. Приложение немного тяжелое, потому что ему нужно много разных модулей: представления, маршрутизация, управление сессиями, аутентификация, соединения с базой данных, cronjobs и так далее. Это действительно динамичная игра, поэтому приложение будет загружаться много раз. И: у меня не так много денег, чтобы инвестировать в большое количество выделенных серверов (по крайней мере, не в самом начале).

Я тоже смотрел на другие рамки. Поскольку Lumen, Slim и некоторые другие микро-фреймворки не поддерживают все модули, в которых нуждается моя игра, я думаю, что Laravel - хороший выбор. Но я действительно боюсь за ориентиры, которые я вижу. Laravel там выглядит не очень хорошо по сравнению с другими фреймворками: он медленный, потребляет много памяти и не может обрабатывать много запросов.

Итак, мой вопрос: является ли Laravel хорошим выбором для тяжелого веб-сайта с браузерной игрой с потенциалом тысяч одновременно работающих пользователей? Кэширование и Homestead наверняка помогут, но действительно ли Laravel - хороший выбор или есть действительно лучшая структура?

1 ответ

Решение

Это меньше о фреймворке, а больше о том, как вы пишете свой код.

Следуйте рекомендациям, планируйте масштабирование, и Laravel может быть для вас очень эффективным решением. Я слышал, что некоторые используют Laravel с миллионами запросов в день.

Мы запустили большое производственное приложение с Laravel, балансировку нагрузки между несколькими веб-серверами, отдельные резервные серверы баз данных, кэширование Redis и т. Д. У нас было много проблем с масштабированием, но, что интересно, ни одно из них не было связано с платформой. Ваши главные узкие места будут в другом месте.

Люди слишком сильно беспокоятся о производительности еще до начала проекта (преждевременная оптимизация и все такое). Выберите лучший инструмент для работы с точки зрения того, что он делает для вас. Затем создайте свое приложение с учетом масштабирования.

Если Laravel предоставляет необходимую вам функциональность и вам нравится, как она работает, используйте ее!

Другие вопросы по тегам