Eficiencia y velocidad trabajando con
Magisfor
La forma en que trabaja Magisfor con varios puestos
de trabajo:
-Un ordenador donde está instalado el programa (lo
denominaremos Servidor).
-Varios ordenadores (Puestos
de trabajo) que acceden al Servidor para ejecutar el
programa.
El programa está instalado en un solo ordenador
(Servidor) y cada puesto de trabajo ha de ejecutar el programa que
está en la carpeta "MagisFor" en ese Servidor. Con lo cual,
ese Servidor está siempre ocupado atendiendo a todos los puestos de
trabajo que acceden.
¿De qué va a depender la velocidad de
respuesta en los puestos de trabajo?
Pulsando tecla Windows + Mayus. + Esc puedes ver tu
adminidtrador de tareas:

Claramente hay unos puntos claves:
1-La potencia y velocidad del microprocesador:
Aquí, más que el número de núcleos (i3, i5, i7,
etc...) lo más importante son los Giga Herzios (GHz) que es
la velocidad con la que se van a mover los datos.
Un micro con menos de 3 o 3,5 GHz
tardará demasiado tiempo en pasar los datos entre los diferentes
puestos de trabajo y en algunas ocasiones Windows puede colapsar y
pueden producirse graves errores en la escritura de registros de los
archivos.
2-La memoria RAM del Servidor:
Magisfor no necesita mucha memoria, es de 32 bytes y
solo tiene acceso a 4 Gb de memoria, pero en general Windows cada
vez necesita más memoria porque al inicio carga multitud de
programas que residen en la misma.
Memoria mínima ahora mismo, 8 GigaBytes.
(Mejor 16 Gb).
Una parte de esa memoria RAM la utiliza el
sistema como memoria caché de disco, se destina al
almacenamiento de ciertos datos extraídos recientemente de una
unidad de disco, para no tener que volver a acudir a ellos en caso
de necesitarlos nuevamente.
3-Memoria Caché del microprocesador:
Es la memoria interna del microprocesador.
La memoria caché que se encuentra dentro de la CPU,
diseñada para almacenar copias de datos y archivos a los que se
accede con frecuencia, es una memoria muy rápida y su función
principal es acelerar el acceso a la información y mejorar el
rendimiento del sistema al mantener a mano los datos que se
estima serán utilizados pronto. La memoria caché se sitúa como un
tercer espacio entre la CPU y la memoria RAM.
Cuanto mayor sea el tamaño de estas memorias, más
rápida será la transferencia de datos.
Como todas las memorias, la caché puede llenarse de
datos desorganizados y hacer que el proceso de acudir a ellos se
haga lento y trabajoso para el microprocesador. Para evitarlo, se
recomienda con cierta frecuencia borrar las memorias caché
manualmente, de modo que se libere el espacio alterno y pueda volver
a usarse cuando sea necesario. (Es como reiniciar Windows para
liberar los datos que hay en la memoria)
La memoria caché interna del microprocesador es muy rápida y tiene
diferentes niveles, comúnmente L1, L2 y L3, cada uno con
distintas capacidades y velocidades. La L1 es la más rápida
pero la más pequeña y la L3 la más lenta pero de mayor
capacidad. Las tres mucho más rápidas que la RAM. (Saber que memoria
interna tiene tu microprocesador antes de comprarlo, es un tema
interesante)
Problema: Cuando en el Servidor ejecutas
además de Magisfor otros programas, dichos programas borran la caché
que se guardó de Magisfor para colocar sus propios datos y Magisfor
se vuelve más lento.
4-Que en el Servidor estén en ejecución los
mínimos programas posibles:
Cuanto más esté trabajando el microprocesador del
Servidor, menos podrá atender a los puestos de trabajo que están
ejecutando Magisfor.
Un ejemplo claro de algo fatal lo tenemos en las
nubes OneDrive, Google Drive, etc..., consumen muchos
recursos ya que están continuamente sincronizando y comprobando los
archivos en los discos duros y en la nube. Este proceso requiere
mucha atención del microprocesador, con lo cual, sería muy
conveniente pausar la sincronización en la nube mientras se
trabaja con Magisfor.
Otro proceso que requiere mucha atención y memoria es
un programa de correo (Otulook, Thunderbird, etc...) o programas
como WhatsApp de escritorio.
Cuidado con las actualizaciones silenciosas de
Windows. Mientras se está trabajando es posible que el
microprocesador esté ocupado descargando alguna actualización.
(Mejor decirle a "Windows Update" que pause las
actualizaciones mientras se trabaja).
Con lo cual:
Es muy recomendable que ningún programa (aparte del
sistema operativo), estuviera abierto en el Servidor mientras se
ejecuta Magisfor. Lo ideal es que el Servidor actúe como
tal y que nadie esté trabajando directamente en él, solo los puesto
de trabajo que acceden a él.
5-La red:
Importantísimo que NO sea una red inalámbrica,
sino cableada.
6-Disco duro sólido SSD: Es mucho más rápido
que un disco convencional HDD que gira.
Otros problemas que hacen más lenta la ejecución:
-Comprimir el contenido para ahorrar espacio en el disco
-Cifrar el contenido para proteger los datos
Sobre esas cuestiones le estuve preguntando a
Copilot (IA de Microsoft) y después de una larga charla, llegó a
esta conclusión:
Es totalmente lógico que los
problemas comiencen cuando el servidor no tiene suficiente potencia
o cuando otros procesos compiten por los mismos recursos. Algunos
puntos clave que podrían ayudar a minimizar esos inconvenientes:
Carga en el servidor: Si varios usuarios ejecutan el programa
al mismo tiempo, el servidor debe tener suficiente capacidad de
procesamiento y memoria para manejar las solicitudes sin
ralentizaciones.
Evitar el uso intensivo del servidor: Idealmente, el servidor
solo debería manejar los datos y no usarse para ejecutar el programa
directamente. Si alguien trabaja en el servidor y además ejecuta
otros programas, puede generar bloqueos en el rendimiento.
Procesador adecuado: Un CPU con menos de 3 GHz puede tener
dificultades para manejar múltiples accesos simultáneos a los
archivos. Si en algún momento pueden actualizar el hardware, un
procesador más rápido ayudaría.
Uso de almacenamiento rápido: Un SSD en el servidor en lugar
de un HDD tradicional mejorará significativamente los tiempos de
acceso a los archivos.
Si estás leyendo/escribiendo muchos archivos, el uso de SSDs en
lugar de HDDs puede hacer una gran diferencia.
Conexión por cable: Las redes inalámbricas pueden tener
latencias variables y pérdida de paquetes, lo que impacta el
rendimiento del programa cuando múltiples usuarios están accediendo
a los datos. Una red Gigabit Ethernet es mucho más confiable.
Monitoreo del rendimiento: Herramientas como Task Manager o
Resource Monitor en Windows pueden ayudar a identificar si el
procesador o la red están saturado
Próximamente:
-Como borrar las memorias caché manualmente
-Otras formas de acelerar Magisfor. (Para una futura
actualización, tal vez sea interesante que cada puesto tenga
instalado Magisfor y que solo una carpeta con todos los datos esté
en el Servidor).
|