회사 배경:
회사는 10억 위안을 조달하고 B2B 신선식품 사업 부문을 매각하여 독립 회사로 운영했습니다. 일부 핵심 제품 관리자, 운영, 조달 역할 외에도, 연구개발팀이 재조직되었고, 대규모 사업 확장을 지원하기 위해 완전한 공급망 플랫폼이 재구축되었습니다. 전국에 약 70개의 창고(프론트엔드 창고, 운송 창고, 물리적 창고 포함)가 있으며, 실제로 100억 사업 규모(매출)를 달성했으며 앞으로 1,000억 사업 규모에 이를 것으로 예상됩니다.
R&D 스케일
연구개발팀 규모는 초기(약 6개월 이내)에 약 100명으로 계획되어 있으며, 후반에는 거의 180명으로 성장할 예정입니다;
연구개발 조직은 재무 그룹, 공장 그룹, 창고 그룹, 구매 그룹, 빅 B 영업 사업 그룹, 소규모 B 영업 사업 그룹, 데이터 분석 그룹, 아키텍처 그룹 등 매트릭스 구조 관리를 채택합니다.
제품 이사: 모든 제품 인력의 관리를 책임지고 조정하며, 전체 제품, 프로세스, 사용 및 경험을 책임집니다;
프로젝트 매니저: 모든 프로젝트 일정과 R&D 인력 배분을 조정하며, 전체 제품의 R&D 진행 상황과 납품에 책임을 집니다.
수석 아키텍트: 모든 기술 아키텍처를 조정하고, 모든 프로젝트 기술과 비즈니스 사용을 지원하며, 기술 중간 사무소를 구축하고 기술 진화 및 운영·관리(O&M)를 지원하며, 전체 제품의 안정성을 책임집니다.
데이터 관리자: 모든 데이터 및 비즈니스 보고서를 조정하고, 데이터 센터를 구축하며, 지능형 데이터 운영을 지원하고, 비즈니스 및 고위 경영진 의사결정에 데이터 지원을 제공합니다.
애플리케이션 아키텍처
비즈니스 아키텍처
기술 아키텍처
기술 아키텍처의 진화
연구개발 인프라
운영 자동화
데이터베이스 O&M
분산 인프라
1. 분산 작업 스케줄링 플랫폼
xxl-job은 백그라운드/비동기 작업과 같은 작업을 마운트하는 데 사용되며, 일부 시간이 많이 소요되고 자원이 많이 소요되며 타이밍이 필요한 작업을 API와 분리하고 프론트엔드 API의 안정성을 보장합니다.
2. 분산 서비스 센터
Eureka-server는 서비스 등록, 부하 분산, 장애 조치, 건강 감지 및 기타 서비스의 통합 관리를 위한 것입니다.
3. 분산 메시지 큐
rocketmq는 서비스의 비동기 분리, 업스트림 및 다운스트림 메시지 전달, 그리고 이기종 서비스의 비동기 통신에 사용됩니다.
4. 분산 로그 센터
ELK, 애플리케이션 로그, 쿼리, 통계 등의 통합 관리를 위한 도구입니다.
5. 분산 파일 서비스
Qiniu 파일 서비스는 파일 업로드, 다운로드, 파일 수명 주기 관리, 이미지 동적 크기 조정 등을 위해 사용됩니다.
6. 캐나다
텐센트 CDN, CDN 네트워크 가속 지원, 이미지, 스크립트, CSS 및 기타 파일로 프론트엔드 리소스의 다운로드 속도를 높였습니다.
7. 분산 구성 센터
Apollo는 모든 프로젝트의 구성 분류, 추상화, 그레이스케일 릴리스 등 관리를 위해 사용됩니다.
8. 데이터베이스 및 테이블 세분화용 미들웨어
샤딩-JDBC는 데이터베이스 샤딩과 테이블 샤딩을 비즈니스 개발자로부터 보호하고, 마스터-슬레이브 읽기/쓰기 분리 세부 사항을 분리하는 데 사용됩니다.
9. 서비스 검색
ElasticSearch는 전체 텍스트 검색, 유사성 문서(데이터) 비즈니스 쿼리를 지원합니다.
10. 분산 캐싱
Redis는 비즈니스의 분산 캐시에 사용되어 쿼리 속도를 빠르게 합니다.
분산 모니터링 시스템
1. 통화 연결 모니터링
핀포인트는 CPU, 메모리, 시간 등 모든 서비스의 통화 관계를 모니터링하고 분석하는 데 사용됩니다. 앞으로는 스카이워킹으로 전환될 예정입니다.
2. 로그 모니터링
ELK, 애플리케이션 로그, 쿼리, 통계 등의 통합 관리를 위한 도구입니다.
3. 서버 모니터링
Zabbix는 모든 리눅스 서버의 시스템 수준에서 성능 모니터링을 위한 것입니다.
4. DB 모니터링
PMM은 모든 온라인 MySQL 데이터베이스의 성능 모니터링 기록, 느린 쿼리 및 기타 분석에 사용됩니다.
5. 애플리케이션 모니터링(성능 분석)
CAT는 모든 온라인 순방향 및 역방향 통화 링크 분석, 데이터베이스 및 URL의 시간 소모 성능 분석, 서비스 및 서버의 성능 분석 보고서, BSF가 자체 개발한 모니터링 보고서 등에 사용됩니다.
분산 프레임워크 BSF
목표: 비즈니스 개발을 더 잘 지원하기 위해, 개발자들이 미들웨어에서 벗어나 비즈니스 본사에 집중하여 개발 효율성을 높일 수 있도록 하는 것입니다. 동시에 기본 프레임워크는 미들웨어의 서비스와 사용을 중앙집중화하고 최적화하여 개발자에게 고성능과 더 편리한 기본 서비스 인터페이스와 도구를 제공하며, 실용적인 과정을 통해 효율성을 10배 높일 수 있습니다.
오픈 소스 주소:하이퍼링크 로그인이 보입니다.
기본 프레임워크인 BSF와 비즈니스 프레임워크 비즈니스는 분리되어 있어, 일반 기본 프레임워크에서 실제 공공 비즈니스 라이브러리를 분리할 수 있습니다. BSF와 비즈니스를 기반으로 신속한 프로젝트 서비스를 구축할 수 있는 표준 프로젝트 스캐폴딩 csx-b2b-demo를 정의합니다.
비즈니스 기본 서비스 구축
기존 서비스 시장 아키텍처를 비교하세요
기술 아키텍처
비즈니스 아키텍처
미래
- 비즈니스 서비스 분할 구조가 재구성되었습니다
- 빅데이터와 읽기/쓰기 분리
- 비즈니스 AI
- BSF의 JDK17 및 21 지원
- 폼 엔진과 공정 엔진
체 장이 지음
2023-5-6
Java R&D 팀 내부 아키텍처 노트 공유
원문 언어:하이퍼링크 로그인이 보입니다.
|