jd-opensource / jd-opensource/joyqueue
批量写的建议
Đang mở
question
- Ngôn ngữ chính
- Java
- Star
- 383
- Fork
- 139
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
1. PartitionGroupStoreManager.write 方法可以同时写多条消息,但为什么每处理一条消息后都会唤醒刷新进程一次,而不是把这批消息处理完成后统一唤醒一次。
2. 当前性能的瓶颈在于频繁的刷新上,而消息分组处理在ProduceManager.writeMessagesAsync, 如果可以把这部分工作后移到PartitionGroupStoreManager.write里面,那么同一分组上可以同时处理的消息会更多,它会减少flush次数,提升系统性能。
Hướng dẫn đóng góp
Hướng nghiên cứu
Start by tracing PartitionGroupStoreManager.write and ProduceManager.writeMessagesAsync to understand when each message wakes the flush process. Compare the current per-message behavior with batching the wake-up after all messages in a partition group are processed; done means fewer flushes while preserving batch writes and message processing.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- backend, distributed-systems, performance
- Loại issue
- Tái cấu trúc
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100