Ajustes de Rendimiento

Sponge provee varias opciones de mejora y ajuste del rendimiento para ayudarle a Ud. a ejecutar un servidor libre de demoras, aún bajo mucha carga.

Nota

Mientras que nosotros tratamos de mejorar el desarrollo de cada servidor, las ganancias de rendimiento dependen de su configuración. Por favor ¡Ejecute algunas pruebas para asegurarse que Ud. configuró su servidor de Sponge para sacar el máximo provecho!

Rango de Activación de la Entidad

Esta configuración alterará el comportamiento de carga de la entidades alrededor de los jugadores. Bajar el valor solo cargará las entidades cercanas, mientras que subirlo también cargará entidades que están lejos del jugador. Disminuya esto para mejorar el rendimiento de su servidor, especialmente con altos recuentos de entidades y jugadores. Para deshabilitar el rango de activación para una entidad específica, establezca su valor en 0.

Truco

Es posible especificar el rango de activación por mob. Ud. puede establecer auto-populate``para ``true y Sponge luego agregará todos los mobs disponibles en la lista de rango de activación, es recomendable deshabilitarlo después de que se complete la lista. Si Ud. agrega nuevos mobs al juego, solo repita el procedimiento y esos nuevos mobs también se agregarán a la lista a continuación.

entity-activation-range {
    # If enabled, newly discovered entities will be added to this config with a default value.
    auto-populate=false
    # Default activation ranges used for all entities unless overridden.
    defaults {
        ambient=32
        aquatic=32
        creature=32
        misc=16
        monster=32
    }
}

Iluminación Async

Esta configuración ejecutará controles de iluminación en un hilo separado para mejorar el rendimiento.

optimizations {
    # Runs lighting updates async.
    async-lighting {
        # If enabled, runs lighting updates async.
        enabled=true
        # The amount of threads to dedicate for async lighting updates. (Default: 2)
        num-threads=2
    }
}

Dueños de Caché Domable

Esta configuración almacenará UUIDs de dueños de entidades domables para hacer menos búsquedas constantes desde el mirador de datos.

optimizations {
    # Caches tameable entities owners to avoid constant lookups against data watchers. If mods cause issue, disable.
    cache-tameable-owners=true
}

Gotas Pre Unión

Esta configuración procesará previamente y potencialmente unirá las caídas de elementos para evitar la generación de entidades adicionales que luego se fusionen después de engendrados.

optimizations {
    # If enabled, block item drops are pre-processed to avoid
    # having to spawn extra entities that will be merged post spawning.
    # Usually, Sponge is smart enough to determine when to attempt an item pre-merge
    # and when not to, however, in certain cases, some mods rely on items not being
    # pre-merged and actually spawned, in which case, the items will flow right through
    # without being merged.
    drops-pre-merge=true
}

Panda Redstone

Un algoritmo de actualización de Redstone alternativo, lleva a menos actualizaciones de bloque cuando cambia Redstone.

optimizations {
    # If enabled, uses Panda4494's Redstone implementation which improves performance.
    # See https://bugs.mojang.com/browse/MC-11193 for more information.
    # Note: This optimization has a few issues which is explained in the bug report. We are not responsible for any issues this may cause.
    panda-redstone=false
}

Ajuste de Intervalo de Auto-Guardado

Vanilla Minecraft por defecto está guardando todos los pedazos cada 900 ticks (45 segundos). Si Ud. desea subir o bajar este intervalo, cámbielo en el archivo ``global.conf``de los servidores:

world {
    # The auto-save tick interval used when saving global player data.
    # Set to 0 to disable. (Default: 900) Note: 20 ticks is equivalent to 1 second.
    auto-player-save-interval=900

    # The auto-save tick interval used to save all loaded chunks in a world.
    # Set to 0 to disable. (Default: 900) Note: 20 ticks is equivalent to 1 second.
    auto-save-interval=900
}

Reducir este intervalo aumenta la carga en el CPU de su servidor y en el almacenamiento, pero reduce la pérdida de datos que podría ocurrir si el servidor se bloquea o falla la energía. Al contrario, aumentar el intervalo de autoguardar reduce la carga en el hardware, pero a expensas de aumentar la cantidad de progreso en el juego que podría perderse en caso de falla del servidor.

Tiempo real

Activando esto sólo mejorará la experiencia de los jugadores cuando la frecuencia de ticks es baja, no mejorará el rendimiento. Un conjunto limitado de entidades, entidades de baldosas, y la hora del mundo usará tiempo real en vez de ticks para actualizarse.

modules {
    # Use real (wall) time instead of ticks as much as possible
    realtime=false
}

Un ejemplo de esto son los animales bebés. Normalmente, ellos tardan 20 minutos en convertirse en adultos. Sin embargo, si el servidor se está rezagando, cada animal recibirá menos ticks, lo que aumentará el tiempo que les toma crecer. Esta configuración actualiza parte de su lógica para usar el tiempo real de reloj transcurrido, en lugar del número de ticks. También se aplicará a la rotura de bloques, así que no más «breaking blocks multiple times».