주문수입의 편리한 통계 (1)
Basic Java Tutorial 컬럼에서는 주문 수입을 편리하게 계산하는 방법을 보여줍니다.
소개
통계적인 주문 수익은 전자상거래 앱에서 흔히 발생하는 문제입니다. 일반적인 요구 사항은 대략 사용자 수익입니다.日报/月报/年报
.这些报表型的数据对表设计和程序设计有着不小的挑战.常规的聚合查询
수익 테이블 데이터가 증가함에 따라 명세서 쿼리 시간은 점차 늘어납니다. 가변 길이가 커집니다. 이때 손익계산서를 어떻게 효율적으로 조회할 수 있는지 고민해야 합니다. 어떤 디자인이 통계적 소득을 단순화할 수 있을까요?
요구사항
렌더링

특별한 요구사항
소득 유형은 자체 구매 주문 소득, 공유 주문 소득, 유통수입, 활동수입 통계 당일수입, 이달수입 해당 기간의 수입은 필터링된 시간을 기준으로 계산됩니다.
Thinking
Design Ideas
주문표는 꼭 필요합니다. 주문표를 작성하거나 수정할 때 수정된 수입표도 동시에 작성됩니다. 주문은 주문표에 기록되며, 특별 사업의 손익계산서에만 기록됩니다. 그런 다음 사용자 收益日报表
.单行记录写入用户当天收益情况.降低
查询用户日/月/年收益统计时的数据量.以单用户为例,通过拆分用户一个月只会产生最多31
데이터를 생성하는 차원으로 사용합니다. 손익 계산서 데이터의 양은 사용자가 주문한 수와 일대일로 일치하므로 손익 계산서를 계속 사용하십시오. 사용자 수가 증가하기 시작하는 초기 단계에서는 대용량 데이터 통계를 피하기 위해 이 방법을 사용할 수 있습니다. 나중에 사용자 수가 증가하면 일일 보고서의 데이터가 커지면 하위를 고려할 수 있습니다. -테이블.
눈에 보이는 문제
일별 소득 보고서 동기화 타이밍은 원래 주문 작업이 매우 복잡하고 소득의 동기 작성과 일일 소득 데이터의 계산 및 작성이 필요하기 때문에 코드 결합이 손익계산서 이질성을 통해 일일 소득 보고서를 생성하는 방법은 무엇입니까? 일별 보고서에 소득이 기록되지만 렌더링에서 요구하는 효과를 충족하려면 여러 SQL 문이 필요할 수 있습니다. 결과에 영향을 주지 않고 이를 수행할 수 있는 방법이 있습니까? 프로그램 효율성을 유지하면서 집계된 SQL을 최대한 적게 사용하는 것은 어떻습니까?
구현 데이터 수집을 시작했고 마침내 이종 솔루션으로 채택되었습니다.
canal
+RocketMQ
기술 스택
canal: 주요 목적은 MySQL 데이터베이스 증분 로그 분석을 기반으로 증분 데이터 구독 및 소비를 제공하는 것입니다.
RocketMQ: 고가용성 분산 클러스터 기술을 기반으로 하는 오픈 소스 분산 메시징 시스템으로, 낮은 대기 시간 A를 제공합니다. 안정적인 메시지 게시 및 구독 서비스입니다.
注:我用的aliyun的全家桶,MQ和mysql都是阿里云的,如果是自建服务器的可能有区别,我在后面尽量标出
프로젝트 프로세스

손익계산서를 작성하거나 수정하는 동안 운하를 통해 mysql 손익계산서의 binlog 로그를 모니터링하세요. -
운하는 변화를 감지하고 조립합니다. 변경된 JSON 메시지를 전송하고 RocketMQ에 사전 정의된 TOPIC을 보냅니다.
공식 문서를 참조하세요. 압축을 풀면 세 개의 디렉터리가 포함된 운하 폴더가 생성됩니다
위 내용은 주문수입의 편리한 통계 (1)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Java의 Nashorn Engine을 사용하면 Java 앱 내에서 JavaScript 스크립팅이 가능합니다. 주요 단계로는 내슈런 설정, 스크립트 관리 및 성능 최적화가 포함됩니다. 주요 이슈에는 NASHORN의 감가 상기 거점으로 인한 보안, 메모리 관리 및 향후 호환성이 포함됩니다.

Java의 시도는 파일 스트림 또는 데이터베이스 연결과 같은 리소스를 자동으로 닫아 코드 가독성 및 유지 관리 가능성을 향상시켜 자원 관리를 단순화합니다.

Java 열거는 고정 된 값 세트를 나타냅니다. 고정 된 값 세트를 나타냅니다. 맞춤형 방법 및 생성자를 통해 유형 안전, 가독성 및 추가 기능을 제공합니다. 코드 조직을 향상시키고 효율적인 가치 처리를 위해 스위치 문에 사용할 수 있습니다.

이 기사는 JVM (Java Virtual Machine)에 대해 설명하여 다양한 플랫폼에서 Java 프로그램을 실행하는 데있어 역할을 자세히 설명합니다. JVM의 내부 프로세스, 주요 구성 요소, 메모리 관리, 쓰레기 수집 및 성능 Optimizatio를 설명합니다.

이 기사에서는 다양한 Java Garbage Collection 알고리즘 (Serial, Parallel, CMS, G1, ZGC), 성능 영향 및 큰 힙이있는 응용 분야에 대한 적합성에 대해 설명합니다.
