Como funcionam os servidores de MMO's?
Enviado: Sex Mar 24, 2017 9:35 pm
Boa noite, há um certo tempo tenho um projeto em mente de um MMO, venho tirando duvidas e estudando para um dia começar a desenvolver já pelo caminho certo, mas ainda me restam muitas duvidas de como funciona um jogo online com milhares de jogadores online ao mesmo tempo.
Sei bem como funciona uma arquitetura cliente-servidor, sei como funcionam as trocas de dados entre os mesmos, entendo bastante de banco de dados e sei usar o networking do Game Maker Studio. Meu servidor será desenvolvido em Java e vou usar bancos de dados Mysql, vou contratar servidores VPS para serem os servidores do meu jogo.
Digamos que tenho um game online com 10mil jogadores, e cada servidor suporta 1mil jogadores então eu devo ter 10 ou 11 servidores para atender a demanda, até ai tudo bem.
Mas minha principal duvida é, como é feita a distribuição desses servidores? (estou completamente perdido nesse sentido, vou tentar explicar minha duvida).
Cada jogador é associado a um servidor especifico ao se cadastrar no jogo e toda vez que ele entrar no jogo ele se conecta a apenas aquele servidor?
Ou cada vez que o jogador se conecta no jogo ele é redirecionado para um servidor aleatório? Caso seja dessa forma tem que ter um servidor principal que se comunica com todos os outros servidores, onde todo jogador ao fazer loguin passa por esse servidor principal e é redirecionado para outro servidor que tenha vagas?
Sobre a base de dados, o banco de dados deve ficar em um servidor separado onde todos os outros servidores podem acessa-lo e fazer requisições de dados? Se não for dessa forma, então como funciona o controle de base de dados nos servidores dos jogos MMO?
Estou meio perdido até com relação a como descrever minhas duvidas, pesquisei bastante sobre o assunto mas não encontrei nada que pudesse responde-las.
Eu agradeço muito a quem puder dar dicas ou mandar links para estudos! Obrigado!
Sei bem como funciona uma arquitetura cliente-servidor, sei como funcionam as trocas de dados entre os mesmos, entendo bastante de banco de dados e sei usar o networking do Game Maker Studio. Meu servidor será desenvolvido em Java e vou usar bancos de dados Mysql, vou contratar servidores VPS para serem os servidores do meu jogo.
Digamos que tenho um game online com 10mil jogadores, e cada servidor suporta 1mil jogadores então eu devo ter 10 ou 11 servidores para atender a demanda, até ai tudo bem.
Mas minha principal duvida é, como é feita a distribuição desses servidores? (estou completamente perdido nesse sentido, vou tentar explicar minha duvida).
Cada jogador é associado a um servidor especifico ao se cadastrar no jogo e toda vez que ele entrar no jogo ele se conecta a apenas aquele servidor?
Ou cada vez que o jogador se conecta no jogo ele é redirecionado para um servidor aleatório? Caso seja dessa forma tem que ter um servidor principal que se comunica com todos os outros servidores, onde todo jogador ao fazer loguin passa por esse servidor principal e é redirecionado para outro servidor que tenha vagas?
Sobre a base de dados, o banco de dados deve ficar em um servidor separado onde todos os outros servidores podem acessa-lo e fazer requisições de dados? Se não for dessa forma, então como funciona o controle de base de dados nos servidores dos jogos MMO?
Estou meio perdido até com relação a como descrever minhas duvidas, pesquisei bastante sobre o assunto mas não encontrei nada que pudesse responde-las.
Eu agradeço muito a quem puder dar dicas ou mandar links para estudos! Obrigado!