Anonymous
Sergey
Sergey
И посчитать количество сообщений - простейший count по логину
Sergey
Sergey
Anonymous
Cap
Cap
Sergey
Cap
Sergey
Почему ?
Пр любой причине: лаг сети, база упала или что-то ещё
Igor
если база упала, наверное, есть причины для беспокойства поважнее, чем рассинхрон счетчиков, не?)
Sergey
А если щарды, то запись вообще может быть в разные primary
Sergey
Cap
Anonymous
Пользуюсь счётчиками, брат жив, зависимости нет.
Anonymous
Делаю переиндексацию раз в месяц, когда мне больше делать нечего.
Anonymous
Рассинхрон бывает редко.
Anonymous
Sergey
Anonymous
С очередью ещё одна проблема появляется)
Это так. В моём случае счётчики не содержат важную величину (деньги или ещё что-то такое), поэтому я могу позволить себе небольшую погрешность. Правда, как я уже говорил, рассинхрон бывает очень редко.
Sergey
Sergey
Ну база может и не упадёт, но дц, где находится мастер, вполне может отвалится
Cap
Cap
ну понятно, просто это счётчики, если у одного из пользователей он нарушится на 1, за два года работы и то если сильно не повезёт.
То в этом нет ничего страшного.
Если они важны реализуй транзакции. Но имхо это лишнее
Cap
Соотноси ценность инфы и затраты
Sergey
Sergey
Сессии на стороне браузера? А как синхронизация происходит?
Cap
У меня сессионная игра.
Сессия на сервере
Sergey
И один бекенд?
Cap
Когда игрок заходит - загружается его сессия (профиль и вся инфа). Далее все обновления вносятся вначале в сессию а затем сессия дёргает бд и записывает в базу.
Cap
Пока один сервер, который при нагрузочном тестировании держал 60к CCU. Пока это гораздо больше чем игроков )
А потом возможно будем масштабировать
Cap
Пошаговая сессионка, мобильная игра, типа HeartStone
Sergey
Ну если сервер один, то да - проблем в синхронизации нет
Cap
А если 2
Cap
Просто половина игроков будут направлены на другой бэкенд и всё тоже самое
Sergey
Если два, то эти сессии уже надо как-то синхронизировать
Cap
ненада
Igor
игрок же не может одновременно дважды из-под одного акка зайти?
Cap
Cap
Sergey
Cap
ну это не синхронизация а роутинг
т.е. есть load balancer который один на кластер, и который распределяет по серверам игроков, и знает кто где сидит (по Id) и переправляет запросы
Это имеется ввиду ?
При традиционном подходе как то так делается.
Но с Akka проще. Во первых акторы поддерживают location transparency. (т.е. акторы можно разнести по машинам и они также будут работать как и на одной, при этом код их не поменяется.
А также в Akka Cluster есть готовые примитивы, для построения распределённых систем. Типа Cluster Singleton, различные балансеры, которые раскидывают работу в зависимости от нагрузки на ноду, или по каким либо другим правилам ...
Sergey
Sergey
Ну если akka такая крутая и все делает за разработчика, то ок. Я хз что это, первый раз слышу.
redbeard
это ббилиотека для работы с акторами
redbeard
есть и для скалы, и для C#
Cap
Да, её использует Ebay , Blizzard, CISCO, BBC и другие никому неизвестные компании
redbeard
what'sapp все равно написан на erlang :)
redbeard
а вот вопрос: подписка на что в кластере требуется? что отлавливаем?
Cap
да это Erlang тоже акторы, похож на Akka
Sergey
redbeard
Cap
redbeard
redbeard
2 Сергея пишут, пойду желание загадывать
Cap
Sergey
redbeard
redbeard
Скала - то еще чудо
Cap
Я в проекте использую Java + Akka + MongoDB
yopp
Ребят, вернитесь к монге.
Cap
да давайте
Roman
Всем привет, есть ли тут кто-нибудь из страдальцев php/mongodb?
Cap
Cap
Так все печально с php?
Sergey
Краем уха слышал, что в пхп есть какой-то новый драйвер в котором все ок.