Qué significan en realidad 2 núcleos en un VPS y qué cabe en ellos
«2 vCPU» en la descripción de un plan no son dos núcleos físicos del procesador. Son dos procesadores virtuales que el hipervisor va colocando por turnos sobre los hilos del servidor real. Cuánta potencia de cálculo hay detrás depende del modelo de procesador, de la política del proveedor y de los vecinos del nodo. Por eso dos planes con la misma línea «2 núcleos» pueden diferir en velocidad varias veces.
Núcleo, hilo y vCPU
Un procesador de servidor moderno suele ejecutar dos hilos por cada núcleo físico (Hyper-Threading en Intel, SMT en AMD). Los proveedores casi siempre cuentan los vCPU por hilos. Es decir, tus 2 vCPU son, en el mejor de los casos, dos hilos de un mismo núcleo físico, y lo más habitual es que sean hilos de núcleos distintos que otros clientes también necesitan a la vez. Dos hilos de un mismo núcleo comparten sus unidades de cálculo y su caché, así que rinden bastante menos que dos núcleos completos.
Desde dentro del sistema no siempre se ve: nproc mostrará 2, y lscpu mostrará el modelo de procesador y la topología que el proveedor haya decidido enseñar al invitado. En una máquina virtual la topología puede ser convencional, así que la imagen real la dan las pruebas y la observación de la carga.
Núcleos compartidos y dedicados, steal time
- vCPU compartidos (shared): el estándar de los planes masivos. A cada hilo físico le corresponden varios procesadores virtuales de distintos clientes. Mientras los vecinos duermen, obtienes la velocidad completa; en horas punta, menos.
- vCPU dedicados (dedicated): están asignados a tu máquina y los vecinos no compiten por ellos. Cuestan más, pero el rendimiento es predecible.
- Límite por fracción de núcleo. Algunos planes limitan el uso de forma explícita, por ejemplo «hasta el 50 % de cada núcleo» o «picos breves». Búscalo en la letra pequeña de la descripción y en las normas del proveedor: una carga constante al 100 % en un plan así puede acabar en ralentización o en un aviso.
El principal indicador de un nodo sobrecargado es el steal time: la fracción del tiempo en que tu vCPU está listo para trabajar, pero el hipervisor le da el procesador físico a otro. Mira la columna st en top o en vmstat 1. Unas pocas unidades porcentuales bajo carga son normales; un 10 % o más de forma estable significa que por dos núcleos en realidad recibes menos. Para comparar planes entre sí, es práctico ejecutar sysbench cpu --threads=2 run a distintas horas del día y comparar el resultado con una ejecución de un solo hilo: con dos núcleos honestos, la diferencia se acerca al doble.
Qué cabe en dos núcleos
Dos vCPU son un mínimo cómodo para un servidor que hace más de una cosa. Escenarios típicos:
- Una web o una tienda pequeña con nginx, PHP-FPM y MySQL y unos pocos miles de visitantes al día, si la caché está activada.
- Varios contenedores Docker: aplicación, base de datos, proxy inverso y monitorización. Más sobre los requisitos en VPS para Docker.
- Bots y tareas en segundo plano: un par de bots, una cola de tareas y un planificador se reparten dos núcleos sin problema.
- Una VPN corporativa para un equipo pequeño o una red privada entre oficinas: el cifrado de WireGuard carga el procesador de forma moderada.
- Compilación y pruebas de proyectos pequeños, si no hay prisa: el CI en dos núcleos funciona, pero despacio.
Se queda corto al compilar proyectos grandes, con una base de datos cargada con muchas consultas simultáneas, con servidores de juegos de decenas de jugadores y con servicios en Windows. En esos casos mira los planes con 4 núcleos. Ten en cuenta también lo contrario: a los programas de un solo hilo (una aplicación Node.js, muchos servidores de juegos, parte de los scripts) el segundo núcleo apenas les ayuda; les importa más la frecuencia. Para ellos está la selección VPS con procesador de alta frecuencia.
Con qué combinar dos núcleos
El procesador rara vez limita un servidor por sí solo. Para dos vCPU, la pareja razonable es de 2 a 4 GB de memoria: con menos, el sistema empezará a tirar de swap antes de cargar el procesador; sobre lo que cabe en ese volumen se habla en detalle en la página VPS con 2 GB de RAM. Para una base de datos importa más un disco NVMe rápido que un núcleo de más: PostgreSQL y MySQL en un disco lento se quedan esperando la entrada/salida, y se ve por un valor alto de wa en el mismo top con el procesador casi libre. Antes de comprar, comprueba si se indica el modelo de procesador: dos núcleos de una generación reciente suelen ser más rápidos que cuatro de un chip de servidor antiguo, y se nota en una prueba de un solo hilo durante los primeros días de alquiler.