¿Cuál es el valor de varios servidores? ¿Cuál es la diferencia con un clúster distribuido?

En pocas palabras, los servidores multicanal deben mejorar el rendimiento del servidor. La CPU es la principal responsable de las funciones informáticas. Una CPU más, naturalmente, tendrá un rendimiento más fuerte.

Nosotros comparamos la CPU a un camión de transporte, la carga es la información que se desea calcular, y el cálculo de la CPU es similar a la carga de transporte de camiones . Cuantos más productos se envíen al mismo tiempo, mayor será la potencia de cálculo de la CPU.

El sistema de CPU por sí solo equivale a un camión que corre en un carril. Dado que hay pocos vehículos, la capacidad de transporte es limitada. En el pasado, los fabricantes de CPU han estado aumentando constantemente la capacidad de carga de los camiones, es decir, la frecuencia principal para mejorar sus capacidades de transporte.

Sistema de CPU dual: el precio equivale a dos camiones que circulan por dos carriles que se cruzan. Cada automóvil circula principalmente por su propia carretera, pero ocasionalmente se encuentra y se detiene para evitarlo. Debido a la amplia variedad de vehículos, la capacidad de transporte de CPU dual es la más fuerte.

Así que podemos juzgar simplemente el rendimiento del servidor a partir del número de CPUs. En términos generales, un servidor bidireccional es mejor que un servidor unidireccional. Pero esto no es absoluto.

02. Si desea convertirse en un experto técnico, también debe saber lo siguiente

Alguien podría decir que agregar más servidores de CPU tendrá un mejor rendimiento. Si necesitamos servidores de alto rendimiento, necesitamos agregar algunas CPU más. Si dos no son suficientes, cuatro serán suficientes, o si cuatro no son suficientes, entonces ocho , o incluso cientos de miles. ¿No resuelve esto el problema del rendimiento insuficiente del servidor?

La respuesta es definitivamente no. La CPU solo puede afectar un cierto rendimiento del servidor. El rendimiento del servidor no solo está relacionado con la CPU, sino también con la velocidad de E / S del servidor.

Como todos sabemos, ya sea Xeon o Power, la frecuencia del procesador supera los 1Ghz, es decir, el ciclo de reloj es mucho menor que 1ns, el procesador puede procesar múltiples instrucciones en un ciclo de reloj, y el tiempo promedio de procesamiento para cada instrucción es Es mas corto.

En términos relativos, la velocidad de acceso de E / S es mucho más lenta. El acceso de la CPU a su propia caché debe ser el más rápido, con un retraso de 10 ns, equivalente a docenas de ciclos de reloj; el acceso al retardo de la memoria local se puede controlar en 100 ns, en todos los nodos de la CPU Al acceder a la memoria, la demora está en el nivel de EE. UU.; Si desea acceder a un dispositivo en PCI-E, debe pasar por varios niveles, como VFS, Diver, etc.Incluso si accede a través de DMA, la demora es al menos 10 us.

En las condiciones técnicas actuales, la E / S es el cuello de botella de la mejora del rendimiento del sistema. Si el problema de E / S no se resuelve, el aumento en el número de procesadores no necesariamente traerá una mejora del rendimiento. En casos extremos, se pueden agregar recursos adicionales. Todo consumido por E / S. El simple aumento de la cantidad de CPU no puede mejorar mucho el rendimiento del servidor.

Por lo tanto, cómo establecer un modelo de E / S para minimizar la sobrecarga de E / S en el rendimiento del sistema es una de las cuestiones clave que deben tenerse en cuenta en el diseño de servidores multicanal. En la actualidad, el servidor de cuatro vías ha alcanzado un límite en términos de rendimiento de E / S, y los productos de múltiples vías no pueden lograr el rendimiento deseado debido al impacto de las E / S. Esta es también la razón por la que los productos de servidor de los fabricantes de servidores actuales son básicamente de cuatro vías como máximo.

03. Los clústeres distribuidos tampoco pueden proporcionar un mayor rendimiento, ¿por qué necesitamos varios servidores?

Algunas personas pueden preguntar, ¿no aumenta el servidor multicanal el rendimiento del servidor? ¿Puedo mejorar el rendimiento a través de clústeres distribuidos?

Aunque la comunicación interna del nodo servidor restringirá la mejora del rendimiento del sistema, aún es mucho mejor que la comunicación fuera del nodo El retraso de la comunicación fuera del nodo es generalmente del nivel ms, hasta el segundo nivel. Si se maneja de manera inadecuada, reducirá seriamente el rendimiento del sistema y afectará el negocio real Esta es la razón principal por la que un sistema de procesamiento de transacciones en línea a gran escala debe usar varios servidores.

El procesamiento de transacciones en línea debe basarse en la misma fuente de datos, y los procesadores deben comunicarse con frecuencia para garantizar la coherencia de los datos. Si se adopta la tecnología de clúster, cada núcleo de procesador del servidor pasará más tiempo esperando los datos y este retraso aumentará con los nodos El aumento en el número se dispara y el sistema pronto tendrá un cuello de botella de expansión.

La tecnología distribuida que está siendo ampliamente adoptada por los principales operadores de Internet es en realidad un contraejemplo Muchos usuarios de las industrias tradicionales también creen que la tecnología distribuida puede llevar mejor sus negocios. De hecho, esto es un malentendido Los dos tipos de sistemas son fundamentalmente diferentes en los principios de diseño.

Tomemos como ejemplo a Alibaba, que utiliza una arquitectura completamente distribuida. El backend se ha sometido a la prueba de estrés casi catastrófica de Double Eleven. Sin embargo, muchas personas que compran en Tmall también encontrarán pedidos falsos con éxito, y los pedidos permanecen sin pagar y otros problemas, estos problemas son causados ​​por la inconsistencia de los datos entre varios sistemas. Si Alibaba puede usar múltiples servidores en el sistema clave para convertir la comunicación entre nodos en comunicación entre nodos, reduciendo la presión de interacción interna, el rendimiento del sistema definitivamente será mucho mejor .

Estos problemas son solo un problema de experiencia del cliente para Taobao. Después de Double Eleven, se pueden resolver manualmente o por otros medios. Sin embargo, los usuarios de la banca, las telecomunicaciones y otras industrias tienen dificultades para tolerar estos problemas. En términos de coherencia de datos, Nunca lo discuten, por lo que suelen utilizar tecnología distribuida en sistemas no productivos. Los sistemas de producción utilizan todos los grandes servidores y bases de datos relacionales. Los métodos tradicionales de procesamiento de transacciones siguen siendo insustituibles.

Esta es la razón principal por la que se necesitan varios servidores de alto rendimiento.

Supongo que te gusta

Origin blog.csdn.net/zhaoweiminde/article/details/106516095
Recomendado
Clasificación