Project Darkstar fue el tema de la reunión mensual JavaSIG en las oficinas de Google en Nueva York anoche. Para aquellos que no conocen (probablemente a todos), Project Darkstar es un marco para los juegos multijugador en línea masivos que intenta hacerse cargo de todas las "cosas difíciles". La idea básica es que usted escriba la lógica de su servidor de juego de tal manera que todas las operaciones se dividan en pequeñas tareas. Transfiere estas tareas al marco Project Darkstar, que maneja la distribución a un nodo específico en el clúster, cualquier problema de concurrencia y finalmente persiste la información.¿El proyecto Darkstar es realista?
Al parecer, hacer este tipo de cosas es un problema muy diferente para los videojuegos que para las aplicaciones empresariales. Jim Waldo, quien dio la conferencia, afirma que los juegos MMO tienen una proporción de lectura/escritura de DB de 50/50, mientras que las aplicaciones empresariales son más como 90% de lectura, 10% de escritura. También afirma que la mayoría de los MMO existentes guardan todo en memoria de forma exclusiva, y solo se vuelcan a un DB cada 6 horas. Esto significa que si un servidor se cae, usted perdería todo el trabajo desde el último volcado de DB.
Ahora, el proyecto en sí parece realmente genial, pero no creo que la industria lo acepte. Primero, debes escribir tu código de servidor en Java. El código del cliente se puede escribir en cualquier cosa (Jim afirma que ActionScript 3 es el más popular, seguido por C++), pero el material del servidor tiene que ser Java. Me parece bien, pero realmente tengo la impresión de que todos en la industria de los juegos odian Java.
En segundo lugar, a diferencia de otras industrias en las que los desarrolladores prefieren utilizar marcos y bibliotecas existentes, a los chicos de la industria de los juegos les gusta escribir todo ellos mismos. No solo eso, les gusta reescribir todo para cada nuevo juego que producen. Las cosas están empezando a cambiar donde los desarrolladores están usando Havok para física, Unreal Engine 3 como su plataforma, etc., pero en su mayor parte parece que todo sigue siendo propiedad.
Entonces, ¿los chicos del Proyecto Darkstar están perdiendo el tiempo? ¿Puede un marco general como este realmente funcionar para juegos complejos con el rendimiento que se requiere? Incluso si funciona, ¿las compañías de juegos están dispuestas a usarlo?
¡Gracias por el esfuerzo! –
Interesante e informativo – Andy
Informativo: El proyecto Darkstar ha sido cerrado por Oracle, sin embargo, hay un fork operado por algunos miembros del equipo de desarrollo original llamado Red Dwarf Server que se puede encontrar en http://www.reddwarfserver.org/. – Kynth