Contesto aziendale:
L'azienda ha raccolto 1 miliardo di yuan e ha ceduto il segmento B2B degli alimenti freschi per operare come società indipendente. Oltre ad alcuni ruoli chiave di product manager, operazioni e approvvigionamento, il team R&D è stato riorganizzato e un set completo di piattaforme di supply chain è stato ricostruito per supportare l'espansione aziendale su larga scala. Ci sono circa 70 magazzini in tutto il paese (inclusi magazzini front-end, magazzini di trasporto e magazzini fisici), che hanno effettivamente raggiunto una scala di business di 10 miliardi (fatturato) e si prevede raggiungeranno una scala di 100 miliardi.
Scala R&D
La dimensione del team di R&S è prevista per circa 100 persone nella fase iniziale (entro circa 6 mesi), e crescerà fino a quasi 180 persone nella fase successiva;
L'organizzazione R&S adotta la gestione della struttura matriciale, che include gruppo finanziario, gruppo fabbrica, gruppo magazzino, gruppo acquisti, gruppo business vendite Big B, gruppo business vendite B piccole, gruppo analisi dati e gruppo architettura.
Direttore di Prodotto: Responsabile e coordinando la gestione di tutto il personale di prodotto, responsabile dell'intero prodotto, del processo, dell'uso e dell'esperienza;
Project Manager: Coordinare tutti i calendari del progetto e l'allocazione delle risorse del personale di R&S, ed essere responsabile del progresso della R&D e della consegna dell'intero prodotto.
Chief Architect: Coordinare tutte le architetture tecniche, supportare tutte le tecnologie di progetto e l'uso aziendale, costruire un middle office tecnico e supportare l'evoluzione tecnologica e l'O&M, e essere responsabile della stabilità dell'intero prodotto.
Data Manager: Coordinare tutti i dati e i report aziendali, costruire un data center, supportare operazioni dati intelligenti e fornire supporto dati per decisioni aziendali e di alta gestione.
Architettura applicativa
Architettura aziendale
Architettura tecnica
L'architettura tecnologica evolve
Infrastruttura di ricerca e sviluppo
Automazione delle operazioni
Database O&M
Infrastruttura distribuita
1. Piattaforma distribuita per la pianificazione delle attività
xxl-job viene utilizzato per montare compiti come quelli in background/asincroni, assicurando che alcune attività che richiedono tempo, risorse e tempizzanti siano separate dalle API, e garantendo la stabilità delle API front-end.
2. Centri di servizio distribuiti
Eureka-Server per la gestione unificata della registrazione dei servizi, bilanciamento del carico, failover, rilevamento della salute e altri servizi.
3. Code di messaggi distribuiti
Rocketmq è utilizzato per il disaccoppiamento asincrono dei servizi, l'inoltro di messaggi a monte e a valle e la comunicazione asincrona di servizi eterogenei.
4. Centro di registro distribuito
ELK, per la gestione unificata dei log delle applicazioni, delle query, delle statistiche, ecc.
5. Servizi file distribuiti
Qiniu File Service, per il caricamento, il download, la gestione del ciclo di vita dei file, la scalatura dinamica delle immagini, ecc.
6. CDN
Tencent CDN, accelerazione di rete CDN per immagini, script, CSS e altri file, accelerando la velocità di download delle risorse front-end.
7. Centro di configurazione distribuito
Apollo, per la classificazione delle configurazioni, astrazione, rilascio in scala di grigi, ecc. gestione di tutti i progetti.
8. Middleware per suddivisione di database e tabelle
Lo sharding-JDBC viene utilizzato per proteggere lo sharding di database e quello di tabella dagli sviluppatori aziendali, e per suddividere i dettagli della separazione lettura/scrittura master-slave.
9. Ricerca di servizi
elasticsearch, per la ricerca a testo completo, documenti di similarità (dati) query aziendali.
10. Cache distribuita
Redis, che viene utilizzato per la cache distribuita dell'azienda, accelerando così la velocità di query dell'azienda.
Sistema di monitoraggio distribuito
1. Monitoraggio della catena delle chiamate
pinpoint, che viene utilizzato per monitorare e analizzare la relazione di chiamata di tutti i servizi, inclusi (CPU, memoria, tempo), performance, ecc. In futuro, sarà migrato al skywalking.
2. Monitoraggio dei log
ELK, per la gestione unificata dei log delle applicazioni, delle query, delle statistiche, ecc.
3. Monitoraggio del server
Zabbix, per il monitoraggio delle prestazioni a livello di sistema di tutti i server Linux.
4. DB monitoraggio
Il PMM è utilizzato per il monitoraggio delle prestazioni, query lente e altre analisi di tutti i database MySQL online.
5. Monitoraggio delle applicazioni (analisi delle prestazioni)
CAT, utilizzato per l'analisi di tutti i link di chiamata diretta e inversa online, l'analisi delle prestazioni dispendiosa in termini di tempo di database e URL, i rapporti di analisi delle prestazioni di servizi e server, i rapporti di monitoraggio auto-sviluppati BSF, ecc.
Framework distribuito BSF
Obiettivo: Supportare meglio lo sviluppo del business, permettere agli sviluppatori di liberarsi dal middleware e concentrarsi sul business per migliorare l'efficienza dello sviluppo. Allo stesso tempo, il framework di base centralizza e ottimizza i servizi e l'uso del middleware, offrendo agli sviluppatori interfacce e strumenti di base ad alte prestazioni e più comodi, e il processo pratico può aumentare l'efficienza di 10 volte.
Indirizzo Open Source:Il login del link ipertestuale è visibile.
Il framework sottostante BSF e il business framework business sono separati, così che il framework generale di base può essere spogliato dalla reale biblioteca pubblica aziendale. Basandosi su BSF e Business, definisci un impalcatura standard di progetto csx-b2b-demo per costruire rapidamente servizi di progetto.
Costruzione di servizi di base per l'azienda
Confronta le architetture di mercato dei servizi esistenti
Architettura tecnica
Architettura aziendale
futuro
- La struttura di divisione dei servizi aziendali viene ricostruita
- Big data e separazione lettura/scrittura
- IA per il business
- Supporto BSF per JDK17 e 21
- Motore di forma e motore di processo
di Che Jiang Yi
2023-5-6
Architettura interna del team di R&S Java condivide note
Originale:Il login del link ipertestuale è visibile.
|