Antecedentes de la empresa:
La empresa recaudó 1.000 millones de yuanes y deshizo el segmento B2B de alimentos frescos para operar como una empresa independiente. Además de algunos roles clave de gerentes de producto, operaciones y compras, el equipo de I&D ha sido reorganizado y se ha reconstruido un conjunto completo de plataformas de cadena de suministro para apoyar la expansión empresarial a gran escala. Hay alrededor de 70 almacenes en todo el país (incluyendo almacenes de front-end, almacenes de tránsito y almacenes físicos), que en realidad han alcanzado una escala de negocio de 10.000 millones y se espera que alcancen 100.000 millones de escala de negocio.
Escala de R&D
Se planea que el equipo de I&D sea de unas 100 personas en la fase inicial (en unos 6 meses), y crecerá hasta casi 180 en la fase final;
La organización de I&D adopta la gestión de estructuras matriciales, incluyendo el grupo financiero, el grupo de fábricas, el grupo de almacenes, el grupo de compras, el grupo de ventas Big B, el grupo de ventas de pequeñas B, el grupo de análisis de datos y el grupo de arquitectura.
Director de Producto: Responsable y coordinador de la gestión de todo el personal de producto, responsable de todo el producto, proceso, uso y experiencia;
Gestor de Proyecto: Coordinar todos los calendarios de proyecto y la asignación de recursos del personal de I&D, y ser responsable del progreso de la investigación y desarrollo y la entrega de todo el producto.
Arquitecto Jefe: Coordinar todas las arquitecturas técnicas, apoyar todas las tecnologías de proyectos y el uso empresarial, construir una oficina técnica intermedia y apoyar la evolución tecnológica y la gestión de operaciones, y ser responsable de la estabilidad de todo el producto.
Gestor de Datos: Coordinar todos los datos e informes empresariales, construir un centro de datos, apoyar operaciones inteligentes de datos y proporcionar soporte de datos para decisiones empresariales y de alta dirección.
Arquitectura de aplicaciones
Arquitectura empresarial
Arquitectura técnica
Evolución de la arquitectura tecnológica
Infraestructura de investigación y desarrollo
Automatización de operaciones
Base de Datos O&M
Infraestructura distribuida
1. Plataforma distribuida de planificación de tareas
xxl-job se utiliza para montar tareas como tareas en segundo plano/asincrónicas, asegurando que algunas tareas que consumen tiempo, recursos y de temporización se separen de las APIs, y asegurando la estabilidad de las APIs frontales.
2. Centros de servicios distribuidos
Eureka-Server para la gestión unificada del registro de servicios, balanceo de carga, conmutación por error, detección de salud y otros servicios.
3. Colas de mensajes distribuidas
RocketMQ se utiliza para el desacoplamiento asíncrono de servicios, el reenvío de mensajes aguas arriba y descendente, y la comunicación asíncrona de servicios heterogéneos.
4. Centro de registro distribuido
ELK, para la gestión unificada de registros de aplicaciones, consultas, estadísticas, etc.
5. Servicios de archivos distribuidos
Qiniu File Service, para subir y descargar archivos, gestión del ciclo de vida de archivos, escalado dinámico de imágenes, etc.
6. CDN
CDN de Tencent, aceleración de red CDN para imágenes, scripts, CSS y otros archivos, acelerando la velocidad de descarga de los recursos front-end.
7. Centro de configuración distribuido
Apollo, para clasificación de configuración, abstracción, liberación en escala de grises, etc., gestión de todos los proyectos.
8. Middleware para subdivisión de bases de datos y tablas
El sharding-jdbc se utiliza para proteger el fragmentado de bases de datos y el fragmentado de tablas de desarrolladores empresariales, y para dividir detalles de la separación entre lectura/escritura entre maestro y esclavo.
9. Búsqueda de servicios
Elasticsearch, para búsqueda en texto completo, documentos de similitud (datos) consultas empresariales.
10. Caché distribuida
Redis, que se utiliza para la caché distribuida del negocio, acelerando así la velocidad de consulta del negocio.
Sistema de monitorización distribuida
1. Monitorización de la cadena de llamadas
pinpoint, que se utiliza para monitorizar y analizar la relación de llamadas de todos los servicios, incluyendo (CPU, memoria, tiempo), rendimiento, etc. En el futuro, se migrará al skywalking.
2. Monitorización de registros
ELK, para la gestión unificada de registros de aplicaciones, consultas, estadísticas, etc.
3. Monitorización de servidores
Zabbix, para monitorización del rendimiento a nivel de sistema de todos los servidores Linux.
4. DB Monitorización
El PMM se utiliza para registros de monitorización del rendimiento, consultas lentas y otros análisis de todas las bases de datos MySQL en línea.
5. Monitorización de aplicaciones (análisis de rendimiento)
CAT, que se utiliza para el análisis de todos los enlaces de llamadas directas y reversas en línea, análisis de rendimiento que consume mucho tiempo de bases de datos y URLs, informes de análisis de rendimiento de servicios y servidores, informes de monitorización autodesarrollados por BSF, etc.
Framework distribuido BSF
Objetivo: Para apoyar mejor el desarrollo empresarial, permitir que los desarrolladores se liberen del middleware y centrarse en el negocio para mejorar la eficiencia del desarrollo. Al mismo tiempo, el marco básico centraliza y optimiza los servicios y el uso del middleware, proporcionando a los desarrolladores interfaces y herramientas básicas de servicio más cómodas y de alto rendimiento, y el proceso práctico puede aumentar la eficiencia en 10 veces.
Dirección de código abierto:El inicio de sesión del hipervínculo es visible.
El marco subyacente BSF y el negocio del marco empresarial están separados, de modo que el marco general subyacente puede ser despojado de la biblioteca pública real de negocios. Basándonos en BSF y Negocio, define un andamiaje estándar de proyecto csx-b2b-demo para construir rápidamente servicios de proyecto.
Construcción básica de servicios para negocios
Comparar arquitecturas existentes del mercado de servicios
Arquitectura técnica
Arquitectura empresarial
futuro
- Se reconstruye la estructura de división de servicios empresariales
- Big data y separación entre lectura/escritura
- IA para negocios
- Soporte BSF para JDK17 y 21
- Motor de forma y motor de proceso
por Che Jiang Yi
2023-5-6
Arquitectura interna del equipo de Investigación y Desarrollo de Java compartiendo notas
Texto original en:El inicio de sesión del hipervínculo es visible.
|