Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[Enhancement] Enhance the send delayed message interface to include a message send timeout.

Đang mở
#676 1 bình luận 35 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
55/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
java
Lĩnh vực
backend-api-design

Hướng nghiên cứu

Bắt đầu bằng cách xác định RocketMQTemplate và các overload của syncSendDelayTimeSeconds, sau đó đọc phương thức private syncSend được nêu trong issue để hiểu timeout và chế độ delay được truyền như thế nào. Kiểm tra hành vi gửi bị trì hoãn hiện có và các test liên quan nếu có. Công việc được hoàn tất khi các caller của message bị trì hoãn có thể cung cấp send timeout tùy chỉnh thông qua public interface, và cách tiếp cận API được chọn được ghi nhận bằng các test.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Before Creating the Enhancement Request
  • I have confirmed that this should be classified as an enhancement rather than a bug/feature.
Summary

Multiple overloaded methods of RocketMQTemplate#syncSendDelayTimeSeconds do not support a custom timeout parameter.

The RocketMQTemplate#syncSend method that supports custom configurations is private.

/**
 * Same to {@link #syncSend(String, Message)} with send timeout and delay time specified in addition.
 * This function is only valid when the broker version is 5.0 or above
 *
 * @param destination formats: `topicName:tags`
 * @param message {@link org.springframework.messaging.Message}
 * @param timeout send timeout with millis
 * @param delayTime delay time for message
 * @return {@link SendResult}
 */
private SendResult syncSend(String destination, Message<?> message, long timeout, long delayTime, DelayMode mode) {
    // ......
}
Motivation

Hope to include a custom timeout parameter when sending any delayed messages.

Describe the Solution You'd Like

Add an additional overloaded method for RocketMQTemplate#syncSendDelayTimeSeconds, or change the visibility of the RocketMQTemplate#syncSend method to public.

If you agree with this enhancement, I can submit a PR.

Describe Alternatives You've Considered

Add an additional overloaded method for RocketMQTemplate#syncSendDelayTimeSeconds, or change the visibility of the RocketMQTemplate#syncSend method to public.

If you agree with this enhancement, I can submit a PR.

Additional Context

No response

Ngôn ngữ chính
Java
Star
2.3k
Fork
941
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

  • Không có Dockerfile hay tệp Docker Compose
  • Có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/rocketmq-spring

Tất cả issue của apache/rocketmq-spring

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.