none
Desempenho .Net Framework para um emulador(servidor)

    Question

  • Olá pessoal!

    Eu estou iniciando um projeto de um servidor emulado em C# para um jogo no estilo MMORPG. Eu estava falando com um amigo meu e ele disse que não seria uma boa rodar um servidor em C#, por ser uma linguagem interpretada, e por isso o desempenho do servidor iria cair muito, digo isso na forma de lentidão para os jogadores, aquele famoso "LAG" nos jogos.

    Então ele me aconselhou a fazer esse projeto em C++, por ser uma linguagem compilada, com isso o servidor iria ter muito mais desempenho.

    Eu queria uma opinião de vocês quanto a isso, esse desempenho de C# para C++ seria muito visivel? Considerando a "lógica" do programa igual nas duas linguagens.

    C# vai me dar muitos beneficios para isso, a IDE oferece muito "suporte" e é muito mais rapido de programar, já C++ é muito dificil e demorado para programar, e levaria muito tempo para programar o emulador.

    Lembrando que a finalidade do programa é trabalhar com sockets e banco de dados.

    Deem sua opinião, por favor. Obrigado!
    Friday, October 16, 2009 6:26 PM

All replies

  • Bom, talvez você conheça um dos mais antigos MMORPG, o Ultima Online. Existem os servidores oficiais (conhecidos como OSI) e os servidores extra-oficiais, que emulam o OSI.
    Um dos emuladores mais populares é o RunUO, criado totalmente na linguagem C#. Ele é extremamente aplaudido pela comunidade, já que é muito estável e tem uma maior confiabilidade.
    Para efeito de comparação, temos outros emuladores de UO, como o Sphere e o POL, que não são construídos em C#. Quando à velocidade, eu não saberia dizer, mas quando falamos de confiabilidade, o RunUO dá um ____ nos outros emuladores.

    Enfim, leve em conta não somente a performance (que especialmente no caso do uso da internet não depende tanto assim do .NET), mas principalmente a facilidade e confiabilidade que o .NET oferece.
    Em outras palavras, minha opinião é: use C#.
    Friday, October 16, 2009 6:39 PM
  • Isso é verdade, foi um dos principais motivos para mim ter começado a estudar C# para esse tipo de projeto. O .Net oferece muito "suporte". Outra saida é o JAVA, mas como sou fã da Microsoft, então é C# mesmo, além do .Net oferecer muito mais recurso para os programadores.

    Irei dar uma olhada no RunUO. Obrigado.

    Friday, October 16, 2009 7:38 PM