# ¿Servidor Reiniciando / Matado?

### **Comprensión del Problema: Error de Memoria y Reinicios del Servidor**

En HidenCloud, priorizamos el funcionamiento fluido y la confiabilidad de su servidor. Sin embargo, ocasionalmente puede encontrarse con reinicios del servidor debido a un error de "Sin Memoria" (OOM). Esto está comúnmente relacionado con la forma en que Java, el lenguaje de programación utilizado por muchas aplicaciones, incluido Minecraft, administra la memoria.

<figure><img src="/files/ZZyrg9iygHlFNHRU3U1F" alt=""><figcaption><p>Server -> System -> Audit Logs -> OutOfMemory = true</p></figcaption></figure>

### **El Asesino de OOM**

Un componente crítico del sistema para entender es el Asesino de OOM. Este es un mecanismo en el sistema operativo Linux, que utilizan los servidores de HidenCloud, diseñado para manejar situaciones de poca memoria. Cuando su servidor consume toda la memoria disponible, se activa el Asesino de OOM para liberar recursos. Esto lo hace terminando procesos, lo que desafortunadamente puede incluir su servidor, lo que lleva a reinicios.

**Ajustar Configuraciones de Memoria para Prevenir OOM**

Para mitigar este problema, es esencial configurar correctamente las configuraciones de memoria de su servidor. Java, de forma predeterminada, puede usar toda la memoria disponible, lo que podría activar el Asesino de OOM. Puede ajustar estas configuraciones a través de dos parámetros clave:

* **Xms (Asignación de Memoria Inicial)**: Esta configuración determina la cantidad inicial de memoria que Java asigna al inicio. <mark style="color:red;">(No puede modificar esto)</mark>
* **Xmx (Asignación Máxima de Memoria)**: Esta es la cantidad máxima de memoria que Java puede usar. <mark style="color:green;">(Puede modificar esto)</mark>

<mark style="color:green;">Puede modificar la RAM del servidor (Xmx) a través de: Servidor -> Configuración -> Parámetros de Inicio -> Variable SERVER\_MAX\_RAM.</mark>

<figure><img src="/files/PgKXF6MqgGwlNXfr59c6" alt=""><figcaption><p>Server -> Configuration -> Startup Parameters</p></figcaption></figure>

**Variable SERVER\_MAX\_RAM**

La variable `SERVER_MAX_RAM` en HidenCloud controla la cantidad máxima de RAM asignada a los servidores Java, afectando el rendimiento del **Garbage Collector (GC)**. Por defecto, se establece en "la RAM total del servidor - 512MB" para reservar memoria para procesos del sistema. Configurar un valor demasiado alto puede provocar pausas más largas del GC, mientras que un valor demasiado bajo aumentará la frecuencia del GC, afectando el rendimiento. No debe exceder la RAM asignada a su servidor,  ya que podría activar el **OOM Killer** y detener el servidor.

<mark style="color:orange;">Para establecer esta variable, DEBE SEGUIR EL SIGUIENTE ESQUEMA:</mark> <mark style="color:green;">`-Xmx{RAM_en_megabytes}M`</mark><mark style="color:orange;">. Por ejemplo:</mark> <mark style="color:green;">`-Xmx2048M`</mark><mark style="color:orange;">.</mark>&#x20;

{% hint style="info" %}
Necesita dejar una diferencia mínima de 512 MB o una diferencia óptima de 1500 MB para que Java use como búfer o para la recolección de basura. Por ejemplo, si tiene un servidor con 2 GB de RAM, que equivale a 2048 MB, y configura la variable SERVER\_MAX\_RAM en -Xmx1024M (1 GB), notará que el servidor puede alcanzar hasta 1500 MB de uso. Esto sucede porque Java usa el espacio adicional como búfer. El espacio de búfer permite que Java administre la memoria de manera más eficiente, asignando espacio para datos temporales y procesos de recolección de basura. Este búfer es crucial para el funcionamiento fluido de las aplicaciones de Java, ya que ayuda a prevenir errores de falta de memoria al proporcionar un colchón de memoria disponible que Java puede utilizar para administrar datos temporales y no necesarios.
{% endhint %}

**Configuración Recomendada**

Al configurar estas configuraciones, es crucial asignar menos memoria que la disponible en su servidor. Por ejemplo, si su servidor tiene 8000M de memoria:

* **No Asigne los 8000M Completos a Java**: Esto no deja memoria para otros procesos esenciales del sistema, lo que aumenta el riesgo de una situación de OOM.
* **Asigne Alrededor de 6500M para Java**: Esto crea un búfer de aproximadamente 1500M, asegurando que haya memoria disponible para el sistema operativo y otros procesos.

Esta configuración ayuda a prevenir que el servidor utilice toda la RAM disponible, reduciendo la probabilidad de que se active el Asesino de OOM.

**Si el Problema Persiste**

Si su servidor continúa experimentando reinicios debido a problemas de memoria:

* **Contacte con el Soporte de HidenCloud**: Nuestro equipo puede ayudarlo con más pruebas y configuraciones. [Soporte de HidenCloud.](https://docs.hidencloud.com/v/es/informacion/contacto)
* <mark style="color:green;">**Considere actualizar su plan a uno que tenga mas ram.**</mark>&#x20;
* **Deshabilitar el Asesino de OOM**: Como último recurso, el soporte de HidenCloud puede desactivar el Asesino de OOM para su servidor. Sin embargo, generalmente no se recomienda ya que puede provocar inestabilidad en el sistema.

**Recomendaciones Finales**

* Monitoree regularmente el uso de memoria de su servidor.
* Consulte con el soporte de HidenCloud para obtener configuraciones de memoria óptimas.
* Considere actualizar su plan de servidor si los problemas de memoria persisten.

Siguiendo estas pautas y ajustando las configuraciones de memoria de su servidor, puede reducir significativamente la ocurrencia de errores de "Sin Memoria" y reinicios del servidor, asegurando una experiencia más fluida y confiable en HidenCloud.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hidencloud.com/es/minecraft/servidor-reiniciando-matado.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
