Серверная архитектура для многопользовательской игры? [закрытый]

, используя cast вместо recast (примечание 'Frequency' теперь 'value')

df  <- data.frame(Category = c("First","First","First","Second","Third","Third","Second")
                  , value = c(10,15,5,2,14,20,3))

install.packages("reshape")

result<-cast(df, Category ~ . ,fun.aggregate=sum)

, чтобы получить:

Category (all)
First     30
Second    5
Third     34
15
задан Click Upvote 11 March 2009 в 00:10
поделиться

2 ответа

Необходимо разъясниться больше об игре и думать больше об архитектуре, а не определенных деталях реализации.

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

я настоятельно рекомендовал бы выяснение заранее, собираются ли все плееры в той же игре быть размещенными на том же сервере (например, 1000 из 4 соответствий плеера по сравнению с 4 соответствиями 1 000 плееров каждый). Если возможно, пойдите с первым и засуньте всех, кто находится в той же игре под тем же сервером. У Вас будет достаточно трудное время, синхронизируя несколько клиентов с одним сервером, вместо того, чтобы иметь несколько серверов, против которых синхронизируются плееры. Иначе определение непротиворечивости проблематично.

, Если возможно, имейте каждый клиент, связываются с сервером и затем обновлениями распределения сервера клиентов. Таким образом, Вы имеете одно "официальное состояние" и можете сделать множество разрешений конфликтов, фантомов, и т.д. Одноранговый узел одноранговому узлу дает лучшую производительность в более быстрых играх (например, FPSs), но представляет тонны проблем.

я не могу ни за что в жизни видеть убедительные основания, чтобы сделать это и жемчуг или PHP. Ваша игра не веб-, почему запись она в сети ориентировала язык? Используйте старый добрый J2EE для сервера и обменивайтесь данными с Вашими клиентами через XML и Ajax. Если возможно, запускает реальное JAVA-приложение на клиентах, а не сервлетах. Можно тогда извлечь выгоду из использования JMS, который возьмет огромную загрузку от спины путем абстракции большого количества коммуникационных деталей для Вас.

8
ответ дан 1 December 2019 в 04:34
поделиться

Для Вашей серверной архитектуры Вы могли бы взглянуть на код Трех Колец . Они записали много очень масштабируемых игр в Java (и клиент - и серверная сторона).

6
ответ дан 1 December 2019 в 04:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: