¿Cómo diseñar la arquitectura técnica del sitio web del portal?
Participé en el diseño de un sitio web de portal industrial y sentí que podría resolver una serie de problemas y desafíos que enfrentan los sitios web grandes, como el alto acceso concurrente, el procesamiento masivo de datos y la operación de alta confiabilidad. En la práctica, propuse muchas soluciones para lograr diversos objetivos de arquitectura técnica, como alto rendimiento, alta disponibilidad, fácil escalabilidad, extensibilidad y seguridad del sitio web. Estas soluciones son reutilizadas por más sitios web, formando gradualmente un modelo de arquitectura de sitios web a gran escala. A continuación hablaré principalmente sobre diseño distribuido:
1. Aplicaciones y servicios distribuidos: la implementación distribuida de módulos de servicios y aplicaciones divididos y en capas no solo puede mejorar el rendimiento y la concurrencia del sitio web, además de acelerar el desarrollo y el lanzamiento. Al reducir el consumo de recursos de conexión de bases de datos, también puede permitir que diferentes aplicaciones reutilicen los mismos servicios para facilitar la expansión de las funciones comerciales.
2. Recursos estáticos distribuidos: los recursos estáticos del sitio web, como JS, CSS, imágenes de logotipos y otros recursos, se implementan y distribuyen de forma independiente y adoptan nombres de dominio independientes, que es lo que la gente suele llamar. la separación de recursos estáticos y dinámicos. La implementación distribuida de recursos estáticos puede reducir la presión de carga en el servidor de aplicaciones; acelerar la carga concurrente del navegador mediante el uso de nombres de dominio independientes por parte de un equipo responsable de la experiencia del usuario, lo que favorece la división del trabajo y la cooperación del sitio web; diferentes industrias técnicas para especializarse.
3. Almacenamiento y datos distribuidos: los sitios web grandes necesitan procesar cantidades masivas de datos en unidades de P. Una sola computadora no puede proporcionar un espacio de almacenamiento tan grande y estos datos requieren almacenamiento distribuido. Además de la implementación distribuida de bases de datos relacionales tradicionales, casi todos se distribuyen varios productos NoSQL para aplicaciones de sitios web.
4. Computación distribuida: Estrictamente hablando, las aplicaciones, los servicios y el procesamiento de datos en tiempo real son todos informática. Además de procesar estos negocios en línea, los sitios web también tienen que procesar una gran cantidad de negocios backend que los usuarios. No tengo una comprensión intuitiva de, incluida la construcción de índices de los motores de búsqueda, el análisis de datos y las estadísticas del almacén de datos, etc. La escala informática de estas empresas es muy grande. Actualmente, los sitios web generalmente utilizan Hadoop y su marco informático distribuido MapReduce para dichos cálculos por lotes. Se caracteriza por la informática móvil en lugar de los datos móviles. acelerar el cálculo y la computación distribuida.
En resumen, existen muchas ideas de diseño distribuido y también existen configuraciones distribuidas que pueden admitir actualizaciones en tiempo real de las configuraciones del servidor en línea del sitio web para lograr concurrencia y colaboración en un entorno distribuido; almacenamiento que admita el sistema de archivos, etc.
1 Idea de diseño
2 Estructura del sistema
3 Planificación de la red y cálculo del rendimiento
3.1 Arquitectura de la red
3.2 Descripción de la arquitectura de red
3.2.1 Utilice firewalls duales y conmutadores duales para redundancia de red para garantizar los servicios de plataforma
3.2.2 Utilice equilibradores de carga de dispositivos de hardware para lograr el equilibrio de carga del tráfico de red
3.3 Cálculo del sistema
3.3.1 Requisitos de capacidad de procesamiento del sistema
3.3.2 Requisitos de capacidad de procesamiento empresarial
3.3.3 Servicio de conversación del sistema modelo
3.4 Contabilidad de configuración
3.4.1 Contabilidad del rendimiento del servidor de base de datos
3.4.2 Contabilidad del rendimiento del clúster del servidor WEB
3.4. Cálculo del rendimiento de la memoria del clúster del servidor WEB
3.4.4 Ancho de banda de la red
4 Prueba de simulación de rendimiento y estimación del rendimiento
4.1 Entorno de prueba
4.2 Resultados de la prueba
4.2.1 1 cliente simula diferentes líneas y resultados de solicitudes simultáneas
4.2.2 10 solicitudes de clientes
4.3 Análisis de resultados
4.4 Inferencia basada en resultados de pruebas
4.5 Lista de equipos
4.5.1 Lista de configuración de equipos de hardware
4.5.2 Especificaciones técnicas de los equipos
p>
4.6 Sugerencias para la expansión de la plataforma