Utilización de las banderas de Aikar para Minecraft

Modificado por última vez el 13 marzo 2024 en Minecraft
  • 10 min read
  • 3033
  • 0
Spartak Itskovich

Spartak Itskovich

Game Content Writer

Banderas de Aikar

Minecraft title

Se trata de un conjunto de configuraciones que afectan al proceso de lanzamiento de un servidor, diseñadas para optimizar el núcleo de tu servidor Minecraft. Cualquier optimización del juego y del servidor de juego impacta positivamente en su funcionamiento, por lo que con varios programas y funciones disponibles, se pueden utilizar libremente, lo que influirá positivamente en el proceso de juego de tu servidor y su soporte.

CONSEJO

¿Aún no tienes tu propio servidor? Pide tu servidor Minecraft ahora mismo

¿Cómo usar las banderas de Aikar?

Necesitas introducir líneas de comandos específicas (script) en los parámetros de inicio para activar las Banderas de Aikar. Godlike utiliza las banderas de Aikar por defecto, así que para personalizar los parámetros "por ti mismo", ve a la sección Configuración de inicio y a la línea Parámetros de inicio adicionales, situada en el panel de juego de tu servidor:

startup settings setup

Introduce o edita estos comandos:

-XX: UseG1GC -XX: ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX: UnlockExperimentalVMOptions -XX: DisableExplicitGC -XX: AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX: PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true

PRECAUCIÓN

¡No uses todo el RAM de tu servidor para esto! Cuando configures los valores Xms y Xmx, si tienes 8 GB de memoria, es mejor reducir los Xmx y Xms en unos 1000-1500 MB para evitar el agotamiento de la memoria o la caída del servidor. Recomendamos utilizar al menos 6-10, dependiendo de su plan. Si lo desea, aclare todas las dudas con nuestro soporte.

Problemas de uso

Si sus banderas no funcionan debido a que utiliza una versión antigua o diferente de Java, tenemos una solución. Introduzca estas líneas según su versión de Java:

Java 8-10

-Xloggc:gc.log -verbose:gc -XX: PrintGCDetails -XX: PrintGCDateStamps -XX: PrintGCTimeStamps -XX: UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1M

Java 11

-Xlog:gc*:logs/gc.log:time,uptime:filecount=5,filesize=1M

Explicación según el código y su uso

-Xms -Xmx: El parámetro -Xms establece el tamaño inicial de memoria que se asignará cuando se inicie el servidor.
A la inversa, el parámetro -Xmx establece la cantidad máxima de memoria que consumirá el servidor.
UnlockExperimentalVMOptions Parámetro utilizado en la configuración que permite desbloquear opciones que se encuentran en modo experimental. Necesario para algunos de los parámetros listados a continuación.
G1NewSizePercent: Si establece G1NewSizePercent al 5%, significa que durante el arranque de su servidor, el 5% de la memoria total asignada para el funcionamiento de su servidor se asignará para nuevos objetos. Esto ayuda a optimizar el uso de memoria y la gestión de la basura en su servidor, mejorando potencialmente su rendimiento y reduciendo los retrasos operativos.
G1MixedGCLiveThresholdPercent: El parámetro que puede ajustar para determinar cuándo el recolector de basura G1 debe iniciar una recolección de basura mixta (Mixed). Por ejemplo, si G1MixedGCLiveThresholdPercent se establece en 65%, significa que la recolección de basura mixta se iniciará cuando el volumen de datos vivos alcance el 65% del volumen total de memoria. Establecer este parámetro ayuda a equilibrar el rendimiento y el uso de memoria de su servidor, ya que la recolección de basura mixta puede ayudar a reducir la fragmentación de la memoria y disminuir los retrasos durante las operaciones de recolección de basura. (Adecuado para versiones anteriores)
MaxTenuringThreshold=1 El parámetro MaxTenuringThreshold permite determinar cuántas veces un objeto debe "sobrevivir" al proceso de recogida de basura en la generación joven antes de ser movido a la generación vieja. Si MaxTenuringThreshold=1, los objetos se moverán a la generación antigua tras su primer paso por la generación joven. Esto es importante porque algunos objetos que "sobreviven" a muchas rondas de recolección de basura en la generación joven pueden ser objetos de larga vida que continúan siendo utilizados en el servidor. En otras palabras, MaxTenuringThreshold controla el tiempo que los objetos permanecen en la generación joven antes de pasar a la generación vieja.
SurvivorRatio=32: Cada área Survivor se utiliza para almacenar objetos que han "sobrevivido" a una iteración de recogida de basura en la generación joven. Normalmente, la generación joven se divide en dos partes: Superviviente1 y Superviviente2. El área Survivor a la que se mueven los objetos depende del tiempo que hayan vivido en la generación joven. El parámetro SurvivorRatio determina la cantidad de memoria asignada a cada área Survivor en relación con el tamaño total de la generación joven. Por ejemplo, si SurvivorRatio=32, significa que cada área de Supervivencia ocupa 1/32 del tamaño total de la generación joven. Dado que hemos reducido drásticamente MaxTenuringThreshold, reduciremos drásticamente el uso del espacio Survivor.
AlwaysPreTouch: Cuando AlwaysPreTouch está en true, la JVM llena toda la memoria disponible del servidor para asegurar el acceso instantáneo a los objetos. Sin embargo, debe tenerse en cuenta que el uso de este parámetro puede provocar un aumento del tiempo de inicio del servidor, especialmente si éste utiliza una gran cantidad de memoria. Esto también puede requerir recursos adicionales del sistema. Por lo tanto, el uso de este parámetro debe considerarse sólo cuando el acceso instantáneo a la memoria sea muy importante para el rendimiento del servidor. AlwaysPreTouch configura y reserva la memoria al inicio del proceso, asegurando su continuidad y mejorando la eficiencia. Esto mejora la velocidad de acceso a la memoria del sistema operativo. Asegúrese de utilizar Transparent Huge Pages.
+DisableExplicitGC Usar +DisableExplicitGC puede ser útil en casos donde la recolección de basura es llamada muy frecuentemente o en lugares no controlados, lo que puede llevar a un funcionamiento inestable del servidor o a un alto coste de recursos. Permite a la JVM decidir independientemente cuándo y con qué frecuencia realizar la recolección de basura, optimizándola para un mejor rendimiento. Sin embargo, conviene recordar que desactivar las llamadas explícitas a la recolección de basura puede conducir a la acumulación de basura en la memoria, que podría no ser eliminada a tiempo, provocando un desbordamiento de la memoria o un aumento del tiempo necesario para resolver la recolección de basura más adelante. Por lo tanto, se debe considerar cuidadosamente el uso de este parámetro, asegurando una gestión adecuada de la memoria en su servidor.
MaxGCPauseMillis=200 El parámetro MaxGCPauseMillis establece el tiempo máximo de pausa permitido en milisegundos durante la recolección de basura (Garbage Collection). Su objetivo es controlar el tiempo de pausa asignado a las operaciones de recogida de basura para evitar retrasos inaceptables en el funcionamiento del servidor. Cuando MaxGCPauseMillis se establece en un valor, como 200, significa que la JVM intentará mantener el tiempo de pausa durante la recolección de basura en no más de 200 milisegundos. Si la recolección de basura tarda más, la JVM puede tomar medidas adicionales para reducir el tiempo de pausa, como distribuir las operaciones de recolección de basura en intervalos más cortos o utilizar otras estrategias de optimización. Sin embargo, debe tenerse en cuenta que la reducción del tiempo de pausa durante la recolección de basura puede conducir a un aumento de los recursos gastados en la recolección de basura en sí, por lo que es importante seleccionar cuidadosamente el valor de MaxGCPauseMillis, asegurando un equilibrio entre el rendimiento y el uso de recursos.
+ParallelRefProcEnabled: +ParallelRefProcEnabled indica la habilitación del procesamiento paralelo de referencias (Parallel Reference Processing). Este puede ser un parámetro que permita a los servidores de Minecraft utilizar métodos más eficientes para gestionar la memoria y los recursos, lo que puede mejorar el rendimiento y reducir los retrasos en el juego. Activar el procesamiento paralelo de referencias puede ayudar a gestionar mejor los objetos y la memoria utilizada en el juego. Esto es especialmente útil para servidores con un gran número de jugadores o un gran volumen de mundo, donde el uso eficiente de los recursos es clave para un funcionamiento fluido. Sin embargo, habilitar este parámetro puede incrementar el uso de recursos de la CPU, por lo que se recomienda considerar cuidadosamente su uso teniendo en cuenta las capacidades y necesidades de tu servidor.
G1RSetUpdatingPauseTimePercent=5 G1RSetUpdatingPauseTimePercent=5 вказує на те, що відсоток часу зупинки, що витрачається на оновлення RSet (Conjunto Recordado), становить 5% під час використання G1 Garbage Collector (G1 GC).
Використання G1 GC з параметром G1RSetUpdatingPauseTimePercent=5 може допомогти зменшити вплив збірки сміття на продуктивність сервера, контролюючи час зупинки, що витрачається на оновлення RSet. Це може допомогти забезпечити плавну роботу сервера та уникнути неприйнятних затримок для гравців.
G1MixedGCCountTarget=4: Establecer G1MixedGCCountTarget=4 significa que G1 GC pretende realizar cuatro recolecciones de basura mixtas antes de considerar efectivo este modo de recolección de basura. Por defecto - 8. Porque nuestro objetivo es recolectar más lentamente, usando menos de la vieja generación.
G1HeapRegionSize=8M+: G1HeapRegionSize=8M indica el tamaño de cada Heap Region cuando se utiliza el G1 Garbage Collector (G1 GC). Una Heap Region son partes de memoria en las que la JVM divide toda la memoria disponible durante la operación con G1 GC. Especificando G1HeapRegionSize=8M, se establece que cada Heap Region debe tener un tamaño aproximado de 8 megabytes. Establecer el tamaño de la Región Heap en 8 megabytes es bastante común. Este tamaño puede ser óptimo para un equilibrio entre rendimiento y manejabilidad de la memoria, especialmente con un gran número de jugadores y objetos activos simultáneamente en el mundo.
+PerfDisableSharedMem: +PerfDisableSharedMem indica que el uso de memoria compartida para la creación de perfiles en tiempo real (real-time profiling) está desactivado. La desactivación del parámetro PerfDisableSharedMem puede utilizarse para mejorar el rendimiento del servidor, especialmente en los casos en los que no se necesita o no se utiliza la creación de perfiles en tiempo real.

CONSEJO

Usted puede aprender acerca de cómo aumentar RAM y otras características para su servidor

Ahora ya conoces la funcionalidad Flags de Aikar y puedes utilizarla para el funcionamiento de tu servidor Minecraft; ¡nuestro equipo estará encantado de ayudarte con todas tus dudas! Juega con GODLIKE.

Califique el artículo en una escala de 5 puntos

Sea el primero en valorar esta noticia!
¿Encontraste un error? Selecciónalo y presiona Ctrl + Enter para informarnos.
Panel
de juego
Demo
×

Informar de un error

Error de texto

Tu elección