La lentitud de la consola generalmente da la impresión de que el servidor está bajo una carga alta y, por lo tanto, los comandos se ejecutan con un gran retraso, pero no siempre es así.
Existen otras causas de la lenta respuesta de la consola al ejecutar comandos básicos, como top, ping, iostat.
Para determinar la causa exacta del retraso, utilizaremos el comando strace.
1. Instalación
apt install strace
2. Ejemplo de uso
2.1 Mostrar todo
strace -r top -n 1
2.2 Resumir el resultado
strace -r top -c 1
Como la salida contiene demasiada información, se puede utilizar una variante más compacta:
strace -r -e trace=connect,poll,openat,stat -o top_small.log top -n 1
3. Análisis de la salida
0.000231 poll([{fd=3, events=POLLIN}], 1, 5000) = 0 (Timeout)
5.003045 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}])
La llamada al sistema poll con un tiempo de espera de 5000 ms no recibió respuesta del servidor DNS (8.8.8.8). Esto tomó exactamente 5 segundos.
5.005113 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}])
Inmediatamente después de la primera, top intenta hacer la solicitud nuevamente, usando el mismo servidor DNS, y vuelve a esperar 5 segundos.
4. Conclusión
El retraso de 10 segundos en la ejecución del comando no está relacionado con la carga del servidor, sino con la larga espera de la respuesta del servidor DNS especificado en /etc/resolv.conf.
Si utiliza el DNS global de Google, este simplemente puede estar bloqueado en algunos países, como fue en nuestro caso. Simplemente cámbielo por otro que se encuentre en su país.

