This article is a mirror article of machine translation, please click here to jump to the original article.

View: 3587|Reply: 0

【Turn】100-person R&D team 10 billion sales scale technical architecture practice sharing

[Copy link]
Posted on 5/13/2023 12:20:44 PM | | | |
Company Background:

The company raised 1 billion yuan and divested the B2B fresh food business segment to operate as an independent company. In addition to some core product managers, operations, and procurement roles, the R&D team has been reorganized, and a complete set of supply chain platforms has been rebuilt to support large-scale business expansion. There are about 70 warehouses across the country (including front-end warehouses, transit warehouses and physical warehouses), which have actually reached 10 billion business scale (revenue) and are expected to reach 100 billion business scale.

R&D scale

The size of the R&D team is planned to be about 100 people in the early stage (within about 6 months), and it will grow to nearly 180 people in the later stage;

The R&D organization adopts matrix structure management, including finance group, factory group, warehousing group, purchasing group, big B sales business group, small B sales business group, data analysis group, and architecture group.




Product Director: Responsible for and coordinating the management of all product personnel, responsible for the entire product, process, use and experience;

Project Manager: Coordinate all project schedules and R&D personnel resource allocation, and be responsible for the R&D progress and delivery of the entire product.

Chief Architect: Coordinate all technical architectures, support all project technologies and business use, build a technical middle office and support technology evolution and O&M, and be responsible for the stability of the entire product.

Data Manager: Coordinate all data and business reports, build a data center, support intelligent data operations, and provide data support for business and senior management decisions.

Application architecture




Business architecture



Technical architecture



Technology architecture evolves



R&D infrastructure



Operations automation



Database O&M




Distributed infrastructure

1. Distributed task scheduling platform

xxl-job is used to mount tasks such as background/asynchronous tasks, ensuring that some time-consuming, resource-consuming, and timing tasks are separated from APIs, and ensuring the stability of front-end APIs.

2. Distributed service centers

eureka-server for unified management of service registration, load balancing, failover, health detection, and other services.

3. Distributed message queues

rocketmq is used for asynchronous decoupling of services, forwarding of upstream and downstream messages, and asynchronous communication of heterogeneous services.

4. Distributed log center

elk, for unified management of application logs, query, statistics, etc.

5. Distributed file services

Qiniu File Service, for file uploading, downloading, file lifecycle management, dynamic scaling of images, etc.

6. CDN

Tencent CDN, CDN network acceleration for images, scripts, CSS, and other files, speeding up the download speed of front-end resources.

7. Distributed configuration center

Apollo, for configuration classification, abstraction, grayscale release, etc. management of all projects.

8. Middleware for database and table subdivision

sharding-jdbc is used to shield database sharding and table sharding from business developers, and splitting details of master-slave read/write separation.

9. Search for services

elasticsearch, for full-text search, similarity documents (data) business queries.

10. Distributed caching

redis, which is used for the distributed cache of the business, thereby speeding up the query speed of the business.

Distributed monitoring system



1. Call chain monitoring

pinpoint, which is used to monitor and analyze the call relationship of all services, including (CPU, memory, time) performance, etc. In the future, it will be migrated to skywalking.

2. Log monitoring

elk, for unified management of application logs, query, statistics, etc.

3. Server monitoring

Zabbix, for performance monitoring at the system level of all Linux servers.

4. DB monitoring

PMM is used for performance monitoring records, slow queries, and other analysis of all online MySQL databases.

5. Application Monitoring (Performance Analysis)

CAT, which is used for the analysis of all online forward and reverse call links, time-consuming performance analysis of databases and URLs, performance analysis reports of services and servers, BSF self-developed monitoring reports, etc.

Distributed framework BSF

Goal: To better support business development, let developers free themselves from middleware and focus on the business to improve development efficiency. At the same time, the basic framework centralizes and optimizes the services and use of middleware, providing developers with high-performance and more convenient basic service interfaces and tools, and the practical process can increase efficiency by 10 times.

Open Source Address:The hyperlink login is visible.

The underlying framework BSF and the business framework business are separated, so that the general underlying framework can be stripped of the actual public business library. Based on BSF and Business, define a standard project scaffolding csx-b2b-demo for quickly building project services.

Business basic service construction





Compare existing service market architectures

Technical architecture




Business architecture




future

  • The business service split structure is reconstructed
  • Big data and read/write separation
  • AI for business
  • BSF support for JDK17 and 21
  • Form engine and process engine




by Che Jiang Yi

2023-5-6

Java R&D team internal architecture sharing notes


Original:The hyperlink login is visible.




Previous:[Actual combat]. NET/C# offline IP address (home) locator library
Next:VS merges .NET Framework (dll) assemblies using ILmerge
Disclaimer:
All software, programming materials or articles published by Code Farmer Network are only for learning and research purposes; The above content shall not be used for commercial or illegal purposes, otherwise, users shall bear all consequences. The information on this site comes from the Internet, and copyright disputes have nothing to do with this site. You must completely delete the above content from your computer within 24 hours of downloading. If you like the program, please support genuine software, purchase registration, and get better genuine services. If there is any infringement, please contact us by email.

Mail To:help@itsvse.com