Bakgrunn for selskapet:
Selskapet hentet inn 1 milliard yuan og solgte B2B-segmentet for fersk mat for å operere som et selvstendig selskap. I tillegg til noen kjerneroller innen produktledere, drift og innkjøp, har FoU-teamet blitt omorganisert, og et komplett sett med forsyningskjedeplattformer er bygget om for å støtte storskala forretningsutvidelse. Det finnes omtrent 70 lagre over hele landet (inkludert front-end-lager, transittlagre og fysiske lagre), som faktisk har nådd 10 milliarder forretningsomsetninger og forventes å nå 100 milliarder bedrifter.
F&U-skala
Størrelsen på FoU-teamet er planlagt å være rundt 100 personer i den tidlige fasen (innen omtrent 6 måneder), og den vil vokse til nesten 180 personer i den senere fasen;
FoU-organisasjonen benytter matrisestrukturledelse, inkludert finansgruppe, fabrikkgruppe, lagergruppe, innkjøpsgruppe, big B-salgsforretningsgruppe, small B-salgsgruppe, dataanalysegruppe og arkitekturgruppe.
Produktdirektør: Ansvarlig for og koordinering av ledelsen av alt produktpersonell, ansvarlig for hele produktet, prosessen, bruken og opplevelsen;
Prosjektleder: Koordinere alle prosjektplaner og tildeling av FoU-personellressurser, og ha ansvar for FoU-fremdriften og leveransen av hele produktet.
Sjefarkitekt: Koordinere alle tekniske arkitekturer, støtte alle prosjektteknologier og forretningsbruk, bygge et teknisk mellomkontor og støtte teknologiutvikling og O&M, og ha ansvar for stabiliteten til hele produktet.
Dataforvalter: Koordinere alle data og forretningsrapporter, bygge et datasenter, støtte intelligente dataoperasjoner, og gi datastøtte for forretnings- og toppledelsesbeslutninger.
Applikasjonsarkitektur
Forretningsarkitektur
Teknisk arkitektur
Teknologisk arkitektur utvikler seg
FoU-infrastruktur
Driftsautomatisering
Database O&M
Distribuert infrastruktur
1. Distribuert plattform for oppgaveplanlegging
xxl-jobb brukes til å montere oppgaver som bakgrunns-/asynkrone oppgaver, noe som sikrer at noen tidkrevende, ressurskrevende og tidskrevende oppgaver er adskilt fra API-er, og sikrer stabiliteten til front-end API-er.
2. Distribuerte servicesentre
Eureka-server for samlet administrasjon av tjenesteregistrering, lastbalansering, failover, helsedeteksjon og andre tjenester.
3. Distribuerte meldingskøer
RocketMQ brukes til asynkron frakobling av tjenester, videresending av oppstrøms og nedstrøms meldinger, og asynkron kommunikasjon av heterogene tjenester.
4. Distribuert loggsenter
Elk, for enhetlig håndtering av applikasjonslogger, spørringer, statistikk osv.
5. Distribuerte filtjenester
Qiniu File Service, for filopplasting, nedlasting, fillivssyklushåndtering, dynamisk skalering av bilder, osv.
6. CDN
Tencent CDN, CDN-nettverksakselerasjon for bilder, skript, CSS og andre filer, som øker nedlastingshastigheten til front-end ressurser.
7. Distribuert konfigurasjonssenter
Apollo, for konfigurasjonsklassifisering, abstraksjon, gråtoneutgivelse osv. administrasjon av alle prosjekter.
8. Mellomvare for database- og tabellinndeling
Sharding-JDBC brukes for å skjerme database-sharding og tabell-sharding fra forretningsutviklere, samt for å splitte detaljer om master-slave lese/skrive-separasjon.
9. Søk etter tjenester
Elasticsearch, for fulltekstsøk, likhetsdokumenter (data) forretningsspørringer.
10. Distribuert caching
REDIS, som brukes for distribuert cache i virksomheten, og dermed øker spørringshastigheten i virksomheten.
Distribuert overvåkingssystem
1. Overvåking av samtalekjeden
pinpoint, som brukes til å overvåke og analysere samtaleforholdet til alle tjenester, inkludert (CPU, minne, tid) ytelse osv. I fremtiden vil det bli migrert til skywalking.
2. Loggovervåking
Elk, for enhetlig håndtering av applikasjonslogger, spørringer, statistikk osv.
3. Serverovervåking
Zabbix, for ytelsesovervåking på systemnivå for alle Linux-servere.
4. DB overvåking
PMM brukes til ytelsesovervåkingsposter, trege spørringer og annen analyse av alle nettbaserte MySQL-databaser.
5. Applikasjonsovervåking (ytelsesanalyse)
CAT, som brukes til analyse av alle nettbaserte fremover- og reverseringslenker, tidkrevende ytelsesanalyse av databaser og URL-er, ytelsesanalyserapporter for tjenester og servere, BSF selvutviklede overvåkingsrapporter, osv.
Distribuert rammeverk BSF
Mål: For å bedre støtte forretningsutvikling, la utviklere frigjøre seg fra mellomware og fokusere på virksomheten for å forbedre utviklingseffektiviteten. Samtidig sentraliserer og optimaliserer det grunnleggende rammeverket tjenestene og bruken av mellomvare, og gir utviklere høyytelses og mer praktiske grunnleggende tjenestegrensesnitt og verktøy, og den praktiske prosessen kan øke effektiviteten med ti ganger.
Åpen kildekode-adresse:Innloggingen med hyperkoblingen er synlig.
Det underliggende rammeverket BSF og forretningsrammeverket er adskilt, slik at det generelle underliggende rammeverket kan fjernes fra det faktiske offentlige forretningsbiblioteket. Basert på BSF og Business, definer en standard prosjektstillas-csx-b2b-demo for rask bygging av prosjekttjenester.
Grunnleggende konstruksjon av forretningstjenester
Sammenlign eksisterende tjenestemarkedsarkitekturer
Teknisk arkitektur
Forretningsarkitektur
fremtidig
- Forretningstjenestedelingsstrukturen er rekonstruert
- Big data og lese/skrive-separasjon
- KI for næringsliv
- BSF-støtte for JDK17 og 21
- Formmotor og prosessmotor
av Che Jiang Yi
2023-5-6
Java F&U-teamets interne arkitektur deler notater
Original:Innloggingen med hyperkoblingen er synlig.
|