Robert
08/11/2012, 00:06
Que es este post?
Muchos de ustedes estan acostumbrados al periodo de estabilidad de la 1.2.5, bueno, bienvenidos a la realidad del minecraft.
Cada vez que se pasa de version el server hay un periodo de inestabilidad, hay muchos problemas diversos y me cuesta un tiempo hasta que logro solucionarlos (por lo general no mas de 1 o 2 semanas) y no hay otra forma de probarlos que con el servidor andando, que como ya habran visto la mayoria se origina cuando hay muchos usuarios (yo testeo las cosas antes de pasar de version lo mas que puedo). Pero esta version es una excepcion.
En este post voy a intentar explicar porque el servidor tiene tantos problemas y porque es tan dificil solucionarlos, para que ustedes entiendan, no me odien a mi (si no a la gente que es responsable de esto), y en parte dejen de crear posts acerca de este tema!
Porque la version 1.3.2 funciona tan mal?
Para los que estan al tanto sabran que y quienes son Bukkit y que es lo que desarrollan, para los que no les cuento. Bukkit es una comunidad de servidores de Minecraft, en el cual desarrollan un servidor alterno al oficial (que anda mucho mejor que el oficial) y plugins para el mismo. Basicamente todo servidor medianamente serio esta basado en Bukkit.
Lo que paso fue que antes que fuese a salir la version 1.2.5, el equipo de Bukkit fue contratado por Mojang para trabajar para ellos, ellos hicieron un monton de cambios para la 1.3.2 (es por eso que se tardaron tanto) y programaron un servidor nuevo oficial (que sigue sin andar bien), el problema es que Bukkit se quedo sin sus desarrolladores principales y es por eso que la nueva version 1.3.2 es tan mala.
Cuando salio la version, se que tardan 2 semanas en tener algo medianamente estable, y me iba fijando semana a semana los comentarios en el foro de Bukkit los cuales eran horrendos, alternativamente me fijaba en el foro de Spout, dado que ahi hacen versiones alternas optimizadas del servidor de Bukkit para ver si habia una mejora, pero el panorama en ambas comunidades el mismo. Tardaron 1 mes y pico hasta que mas o menos habia una version buena dando vueltas (que tampoco era tan buena) y pase de version cuando basicamente no tuve mas opcion (porque la gente se estaba yendo).
Que problemas tiene el server?
El problema de esta version, es que a diferencia de la 1.2.5 que podia estar 24hs sin caerse, sin lag, y sin crashes, la version 1.3.2 no se banca la misma cantidad de gente y tampoco se banca el mismo tiempo! Por lo que pude ver esta semana lo maximo que se banca son 8 horas seguidas, y encima por momentos hay lag. Para sumarle mas complejidad al tema esta version crashea "cada tanto", es decir puede colgarse a la hora o puede colgarse a las 10 horas o no puede colgarse, igualmente la mayoria de las veces se colgo por la misma razon.
La razon del lag, por lo que lei, esta relacionada a los mobs. La version que usamos en el server hace despawnear los mobs para prevenir esto lo maximo posible (es por eso que hay tan pocos mobs). Por lo que lei las versiones mas nuevas no lo hacen mas y estan trayendo problemas de lag.
La razon de los cuelges es el anti-xray, una solucion facil seria sacarlo, pero no es una solucion viable, porque si lo saco es muy destructivo lo que pueden hacer sin el anti-xray.
Que estas haciendo para solucionarlos?
Con el lag estuve haciendo "profiling" del server. Que es profiling? Es medir los tiempos que tarda cada uno de los plugins en hacer sus cosas y encontrar sus cuellos de botellas. Paradojicamente, el plugin que esta dando lag tambien es el anti-xray, por eso implemente unas medidas con el mismo que hizo que diera menos lag y ademas implemente 3 restarts automaticos cada 7 horas. Con esto el problema del lag podria decirse que esta casi solucionado, no de la mejor forma que me gustaria, pero de lo mas prolija posible.
Con los cuelgues cada vez que se cuelga estoy inspeccionando los logs y de esa forma pude encontrar el factor comun en todos los cuelgues que era el anti-xray. Estoy hablando con el desarrollador del plugin para encontrar el problema y ademas probando distintas opciones en la configuracion del mismo para intentar que no cuelgue mas el server.
Porque tardas tanto en encontrar los motivos de los problemas?
Es muy dificil encontrar lo que ocasiona los problemas dado que no es algo que anda o no anda, el problema con este tipo de cosas es que los problemas se presentan en cualquier momento de estar corriendo el servidor y no a los pocos minutos. Como sucede esto es muy dificil probar que es lo que no esta andando bien, dado que cuando cambio algo tengo que esperar a ver si se cae o si crashea para ver si anda bien.
Porque no podes arreglar vos los problemas?
Y esta pregunta esta relacionada con la de arriba, en parte cuesta tanto y no puedo solucionar los problemas porque la fraccion que programe yo en el servidor es muy poca. Yo hago modificiaciones a plugins existentes pero la mayoria de los plugins no los programo yo! Ni tampoco programo el server! Por lo tanto no se como funcionan las cosas en detalle y por ende tampoco puedo solucionarlos de forma facil. Lo unico que me queda es "toquetear" las opciones de configuracion y deshabilitar ingeniosamente las mismas para poder probar distintos sectores y encontrar el problema.
Que vas a hacer de ahora en mas para solucionarlos?
Si el servidor sigue colgandose supongo que intentare cambiar el plugin de anti-xray por otro mas simple (que no me gusta mucho) pero que promete aflojar con los problemas. Otra de las opciones que tengo en mente es usar la 1.3.2 oficial de bukkit para ver si deja de crashear (aunque seguramente haya mas lag) o en ultima instancia pasar a la version 1.4.2 y probar desde ahi, dado que para que ande mal en esta version prefiero pasar a la version mas nueva y solucionar los problemas desde ahi. Igualmente todavia es muy temprano para pasar a la 1.4.2 dado que no hay ningun build estable (no entiendo como es que hay tantos servidores 1.4.2, se ve que no cuidan a sus jugadores o no les importan que usen hacks).
Ademas voy a implementar una rutina que a la noche limpie el mapa de items (dado que los items y los bichos estan dando problemas tambien) (los animales de genubi no se borran si no tienen mas de 50 en un mismo plot).
Ultimas palabras.
Si es que llegaron hasta aca es porque realmente les interesa el servidor y se los agradezo, como ven estoy haciendo cosas y no estoy de brazos cruzados. Ademas consideren que aparte de atender el servidor tengo una vida: Voy a la facultad, tengo que estudiar, tengo los tps de la facultad y tengo una novia. Cuando no estoy haciendo ninguna de esas cosas estoy viendo como mejorar o solucionar los problemas del server o haciendo sistemas para que los moderadores puedan encargarse de atenderlos a ustedes (hice un sistema para que ellos puedan ver el log), para asi el tiempo que le dedico a atender el servidor (que es bastante) esta mas centrado en mejorar el mismo y no en atender las denuncias o quejas.
En parte tambien por eso hice este post, para que todos puedan entender que es lo que esta pasando con el servidor, sean mas tolerantes, no desesperen y para que no creen temas que me disgusten a mi y por lo tanto los disgusten a ustedes con mis respuestas.
Pido disculpas si me dirigi fuertemente hacia alguno de ustedes, alguno de sus comentarios habra sido un poco fuerte tambien y por las razones que deje explicadas en este post y por el esfuerzo que le pongo, es bastante logico que me afecte. Ademas que esta comunidad y el servidor es totalmente independiente de cualquiera, y es por eso que todo el peso de lo que ocurre aca en ultima instancia recae en mi.
Dejo el tema abierto para que pregunten las dudas que tengan de lo que acabo de decir o lo que crean necesario para saciar sus inquetudes, porfavor mantengan el orden.
Un saludo.
Muchos de ustedes estan acostumbrados al periodo de estabilidad de la 1.2.5, bueno, bienvenidos a la realidad del minecraft.
Cada vez que se pasa de version el server hay un periodo de inestabilidad, hay muchos problemas diversos y me cuesta un tiempo hasta que logro solucionarlos (por lo general no mas de 1 o 2 semanas) y no hay otra forma de probarlos que con el servidor andando, que como ya habran visto la mayoria se origina cuando hay muchos usuarios (yo testeo las cosas antes de pasar de version lo mas que puedo). Pero esta version es una excepcion.
En este post voy a intentar explicar porque el servidor tiene tantos problemas y porque es tan dificil solucionarlos, para que ustedes entiendan, no me odien a mi (si no a la gente que es responsable de esto), y en parte dejen de crear posts acerca de este tema!
Porque la version 1.3.2 funciona tan mal?
Para los que estan al tanto sabran que y quienes son Bukkit y que es lo que desarrollan, para los que no les cuento. Bukkit es una comunidad de servidores de Minecraft, en el cual desarrollan un servidor alterno al oficial (que anda mucho mejor que el oficial) y plugins para el mismo. Basicamente todo servidor medianamente serio esta basado en Bukkit.
Lo que paso fue que antes que fuese a salir la version 1.2.5, el equipo de Bukkit fue contratado por Mojang para trabajar para ellos, ellos hicieron un monton de cambios para la 1.3.2 (es por eso que se tardaron tanto) y programaron un servidor nuevo oficial (que sigue sin andar bien), el problema es que Bukkit se quedo sin sus desarrolladores principales y es por eso que la nueva version 1.3.2 es tan mala.
Cuando salio la version, se que tardan 2 semanas en tener algo medianamente estable, y me iba fijando semana a semana los comentarios en el foro de Bukkit los cuales eran horrendos, alternativamente me fijaba en el foro de Spout, dado que ahi hacen versiones alternas optimizadas del servidor de Bukkit para ver si habia una mejora, pero el panorama en ambas comunidades el mismo. Tardaron 1 mes y pico hasta que mas o menos habia una version buena dando vueltas (que tampoco era tan buena) y pase de version cuando basicamente no tuve mas opcion (porque la gente se estaba yendo).
Que problemas tiene el server?
El problema de esta version, es que a diferencia de la 1.2.5 que podia estar 24hs sin caerse, sin lag, y sin crashes, la version 1.3.2 no se banca la misma cantidad de gente y tampoco se banca el mismo tiempo! Por lo que pude ver esta semana lo maximo que se banca son 8 horas seguidas, y encima por momentos hay lag. Para sumarle mas complejidad al tema esta version crashea "cada tanto", es decir puede colgarse a la hora o puede colgarse a las 10 horas o no puede colgarse, igualmente la mayoria de las veces se colgo por la misma razon.
La razon del lag, por lo que lei, esta relacionada a los mobs. La version que usamos en el server hace despawnear los mobs para prevenir esto lo maximo posible (es por eso que hay tan pocos mobs). Por lo que lei las versiones mas nuevas no lo hacen mas y estan trayendo problemas de lag.
La razon de los cuelges es el anti-xray, una solucion facil seria sacarlo, pero no es una solucion viable, porque si lo saco es muy destructivo lo que pueden hacer sin el anti-xray.
Que estas haciendo para solucionarlos?
Con el lag estuve haciendo "profiling" del server. Que es profiling? Es medir los tiempos que tarda cada uno de los plugins en hacer sus cosas y encontrar sus cuellos de botellas. Paradojicamente, el plugin que esta dando lag tambien es el anti-xray, por eso implemente unas medidas con el mismo que hizo que diera menos lag y ademas implemente 3 restarts automaticos cada 7 horas. Con esto el problema del lag podria decirse que esta casi solucionado, no de la mejor forma que me gustaria, pero de lo mas prolija posible.
Con los cuelgues cada vez que se cuelga estoy inspeccionando los logs y de esa forma pude encontrar el factor comun en todos los cuelgues que era el anti-xray. Estoy hablando con el desarrollador del plugin para encontrar el problema y ademas probando distintas opciones en la configuracion del mismo para intentar que no cuelgue mas el server.
Porque tardas tanto en encontrar los motivos de los problemas?
Es muy dificil encontrar lo que ocasiona los problemas dado que no es algo que anda o no anda, el problema con este tipo de cosas es que los problemas se presentan en cualquier momento de estar corriendo el servidor y no a los pocos minutos. Como sucede esto es muy dificil probar que es lo que no esta andando bien, dado que cuando cambio algo tengo que esperar a ver si se cae o si crashea para ver si anda bien.
Porque no podes arreglar vos los problemas?
Y esta pregunta esta relacionada con la de arriba, en parte cuesta tanto y no puedo solucionar los problemas porque la fraccion que programe yo en el servidor es muy poca. Yo hago modificiaciones a plugins existentes pero la mayoria de los plugins no los programo yo! Ni tampoco programo el server! Por lo tanto no se como funcionan las cosas en detalle y por ende tampoco puedo solucionarlos de forma facil. Lo unico que me queda es "toquetear" las opciones de configuracion y deshabilitar ingeniosamente las mismas para poder probar distintos sectores y encontrar el problema.
Que vas a hacer de ahora en mas para solucionarlos?
Si el servidor sigue colgandose supongo que intentare cambiar el plugin de anti-xray por otro mas simple (que no me gusta mucho) pero que promete aflojar con los problemas. Otra de las opciones que tengo en mente es usar la 1.3.2 oficial de bukkit para ver si deja de crashear (aunque seguramente haya mas lag) o en ultima instancia pasar a la version 1.4.2 y probar desde ahi, dado que para que ande mal en esta version prefiero pasar a la version mas nueva y solucionar los problemas desde ahi. Igualmente todavia es muy temprano para pasar a la 1.4.2 dado que no hay ningun build estable (no entiendo como es que hay tantos servidores 1.4.2, se ve que no cuidan a sus jugadores o no les importan que usen hacks).
Ademas voy a implementar una rutina que a la noche limpie el mapa de items (dado que los items y los bichos estan dando problemas tambien) (los animales de genubi no se borran si no tienen mas de 50 en un mismo plot).
Ultimas palabras.
Si es que llegaron hasta aca es porque realmente les interesa el servidor y se los agradezo, como ven estoy haciendo cosas y no estoy de brazos cruzados. Ademas consideren que aparte de atender el servidor tengo una vida: Voy a la facultad, tengo que estudiar, tengo los tps de la facultad y tengo una novia. Cuando no estoy haciendo ninguna de esas cosas estoy viendo como mejorar o solucionar los problemas del server o haciendo sistemas para que los moderadores puedan encargarse de atenderlos a ustedes (hice un sistema para que ellos puedan ver el log), para asi el tiempo que le dedico a atender el servidor (que es bastante) esta mas centrado en mejorar el mismo y no en atender las denuncias o quejas.
En parte tambien por eso hice este post, para que todos puedan entender que es lo que esta pasando con el servidor, sean mas tolerantes, no desesperen y para que no creen temas que me disgusten a mi y por lo tanto los disgusten a ustedes con mis respuestas.
Pido disculpas si me dirigi fuertemente hacia alguno de ustedes, alguno de sus comentarios habra sido un poco fuerte tambien y por las razones que deje explicadas en este post y por el esfuerzo que le pongo, es bastante logico que me afecte. Ademas que esta comunidad y el servidor es totalmente independiente de cualquiera, y es por eso que todo el peso de lo que ocurre aca en ultima instancia recae en mi.
Dejo el tema abierto para que pregunten las dudas que tengan de lo que acabo de decir o lo que crean necesario para saciar sus inquetudes, porfavor mantengan el orden.
Un saludo.