Achtergrond van het bedrijf:
Het bedrijf haalde 1 miljard yuan op en verkocht het B2B-segment verse voedingsmiddelen om als onafhankelijk bedrijf te opereren. Naast enkele kernfuncties voor productmanagers, operaties en inkoop is het R&D-team gereorganiseerd en is een complete set supply chain-platforms heropgebouwd om grootschalige bedrijfsuitbreiding te ondersteunen. Er zijn ongeveer 70 magazijnen verspreid over het land (inclusief front-end magazijnen, transitmagazijnen en fysieke magazijnen), die daadwerkelijk een bedrijfsomvang van 10 miljard hebben bereikt en naar verwachting 100 miljard bedrijfsschaal zullen bereiken.
R&D-schaal
De omvang van het R&D-team is gepland op ongeveer 100 mensen in de vroege fase (binnen ongeveer 6 maanden), en zal in de latere fase groeien tot bijna 180 mensen;
De R&D-organisatie hanteert matrixstructuurbeheer, waaronder financiële groep, fabrieksgroep, magazijngroep, inkoopgroep, big B-verkoopbusinessgroep, small B-verkoopbusinessgroep, data-analysegroep en architectuurgroep.
Product Director: Verantwoordelijk voor en coördinatie van het beheer van al het productpersoneel, verantwoordelijk voor het gehele product, proces, gebruik en ervaring;
Projectmanager: Coördineer alle projectschema's en de toewijzing van R&D-personeelsmiddelen, en wees verantwoordelijk voor de R&D-voortgang en levering van het gehele product.
Chief Architect: Coördineer alle technische architecturen, ondersteun alle projecttechnologieën en bedrijfsgebruik, bouw een technisch middle office en ondersteun de technologische evolutie en O&M, en wees verantwoordelijk voor de stabiliteit van het gehele product.
Data Manager: Coördineer alle data en bedrijfsrapporten, bouw een datacenter, ondersteun intelligente dataoperaties en bied dataondersteuning voor zakelijke en senior managementbeslissingen.
Applicatiearchitectuur
Bedrijfsarchitectuur
Technische architectuur
Technologiearchitectuur ontwikkelt zich
R&D-infrastructuur
Operationele automatisering
Database O&M
Gedistribueerde infrastructuur
1. Gedistribueerd taakplanningsplatform
xxl-job wordt gebruikt om taken zoals achtergrond-/asynchrone taken te mounten, zodat sommige tijdrovende, resource-inspannende en timingtaken gescheiden zijn van API's, en de stabiliteit van front-end API's wordt gewaarborgd.
2. Gedistribueerde servicecentra
eureka-server voor geünificeerd beheer van serviceregistratie, load balancing, failover, gezondheidsdetectie en andere diensten.
3. Gedistribueerde berichtwachtrijen
RocketMQ wordt gebruikt voor asynchrone ontkoppeling van diensten, het doorsturen van upstream- en downstreamberichten, en asynchrone communicatie van heterogene services.
4. Gedistribueerd logcentrum
ELK, voor uniforme beheersing van applicatielogs, querys, statistieken, enzovoort.
5. Gedistribueerde bestandsdiensten
Qiniu File Service, voor het uploaden en downloaden van bestanden, bestandslevenscyclusbeheer, dynamische schaalverdeling van afbeeldingen, enzovoort.
6. CDN
Tencent CDN, CDN-netwerkversnelling voor afbeeldingen, scripts, CSS en andere bestanden, waardoor de downloadsnelheid van front-end resources wordt versneld.
7. Gedistribueerd configuratiecentrum
Apollo, voor configuratieclassificatie, abstractie, grijstintenrelease, enzovoort beheer van alle projecten.
8. Middleware voor database- en tabelonderverdeling
Sharding-JDBC wordt gebruikt om databasesharding en tabel sharding te beschermen tegen bedrijfsontwikkelaars, en om details van master-slave lees/schrijf-scheiding te splitsen.
9. Zoeken naar diensten
elasticsearch, voor full-text zoekopdrachten, gelijkenisdocumenten, zakelijke zoekopdrachten.
10. Gedistribueerde caching
Redis, dat wordt gebruikt voor de gedistribueerde cache van het bedrijf, waardoor de querysnelheid van het bedrijf wordt versneld.
Gedistribueerd monitoringsysteem
1. Oproepketenmonitoring
pinpoint, die wordt gebruikt om de oproeprelatie van alle diensten te monitoren en te analyseren, inclusief (CPU, geheugen, tijd) prestaties, enzovoort. In de toekomst zal het worden overgestapt op skywalking.
2. Logmonitoring
ELK, voor uniforme beheersing van applicatielogs, querys, statistieken, enzovoort.
3. Servermonitoring
Zabbix, voor prestatiemonitoring op systeemniveau van alle Linux-servers.
4. DB monitoring
PMM wordt gebruikt voor prestatiemonitoringrecords, trage queries en andere analyses van alle online MySQL-databases.
5. Applicatiemonitoring (prestatie-analyse)
CAT, dat wordt gebruikt voor de analyse van alle online forward- en reverse call-links, tijdrovende prestatie-analyse van databases en URL's, prestatie-analyserapporten van diensten en servers, BSF zelf ontwikkelde monitoringrapporten, enzovoort.
Gedistribueerd framework BSF
Doel: Om bedrijfsontwikkeling beter te ondersteunen, kunnen ontwikkelaars zich losmaken van middleware en zich op het bedrijf kunnen richten om de ontwikkelefficiëntie te verbeteren. Tegelijkertijd centraliseert en optimaliseert het basisframework de diensten en het gebruik van middleware, waardoor ontwikkelaars hoogwaardige en handigere basisservice-interfaces en -tools krijgen, en het praktische proces kan de efficiëntie met tien keer verhogen.
Open source adres:De hyperlink-login is zichtbaar.
Het onderliggende framework BSF en het business framework business zijn gescheiden, zodat het algemene onderliggende framework kan worden ontdaan van de daadwerkelijke publieke bedrijfsbibliotheek. Op basis van BSF en Business definieer een standaard projectsteiger csx-b2b-demo voor het snel bouwen van projectdiensten.
Basisbouw van zakelijke dienstverlening
Vergelijk bestaande servicemarktarchitecturen
Technische architectuur
Bedrijfsarchitectuur
toekomst
- De verdeelde structuur van de zakelijke dienstverlening wordt gereconstrueerd
- Big data en lees/schrijf-scheiding
- AI voor het bedrijfsleven
- BSF-ondersteuning voor JDK17 en 21
- Vormmotor en procesmotor
door Che Jiang Yi
2023-5-6
Java R&D-team interne architectuur deelt notities
Origineel:De hyperlink-login is zichtbaar.
|