Ответы пользователя по тегу Разработка игр
  • Как правильно организовать базу данных многопользовательской MMORPG?

    @UA3MQJ
    Начните с проектирования архитектуры! БД там на 3-4 уровне будет.
    А у меня вот со временем свое мнение выродилось по этому поводу. Много читал, думал. Много программировал. И когда начали писать свою ММОРПГ, моя задача была - сервер, я выбрал лучшее, из того, что я знал - Erlang. Почему? Это тема отдельного длинного монолога. Для общего развития рекомендую почитать про Erlang. Потом про что-то другое, но там потребуется MQ (RabbitMQ)для кластера, чтобы обмениваться сообщениями между нодами. Какие нибудь Boost.io для быстрой работы с сетевым ядром системы. Какой-нибудь Redis для очередей сообщений. Какой-нибудь Memcache для nosql быстрой работой с данными. И какой-нибудь sql для хранения на постоянку. Потом ответить на вопрос, а нужен ли этот весь огород, если есть Erlang. Если этого будет недостаточно, то почитать про возможности по обеспечению надежности Erlang сервисов и по обновлению кода без остановки серверов.
    Причем я еще могу понять, когда проект на Python или Java. Когда работает полхо, но деплоится быстро. Но есть упоротые по беспределу (либо горячая молодежь, либо закоренелые наСИльники), которые пытаются делать это на сях, считая, что так быстрее/лучше etc.

    В итоге получается:
    Десятое правило Гринспена: Любая достаточно сложная программа на Си или Фортране содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Common Lisp.
    Дополнение об Эрланге: Любая достаточно сложная распределённая программа содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Erlang.

    Но решать нужно самостоятельно, и самому себе обоснованно. Если будет выбрано направление Erlang, то могу подкинуть еще ссылок. Но хочу сразу сказать, что наш проект в жизнь не вышел, но в силу других , не технологических причин. В нашем экономически обоснованном мире, побеждают, не всегда самые лучшие технические решения.
    Ответ написан
    Комментировать