https://www.rabbitmq.com/dlx.html Tại sao lại cần thuộc tính này. Tôi sẽ lấy ví dụ: về overflow, hoặc message Time to live, hoặc consumer reject hoặc nack Ví dụ bạn có 1 cái queue mà maximum length của queue là 10 phần tử, hiểu theo cách khác là độ dài của queue là 10 Khi đó nếu phần tử thứ 11 được đẩy vào thì làm sao--> sẽ có 1 phần tử bị drop,-> phần tử đầu queue hay cuối queue sẽ bị drop ==> tùy thuộc vào cách bạn setup policcy cho Queue Overflow behavior can be set by supplying the x-overflow queue declaration argument with a string value. Possible values are drop-head (default) or reject-publish ==> Để tránh miss messages khi bị tràn queue => cần phải chỉ rõ thuộc tính này khi khởi tạo queue Map<String, Object> args = new HashMap<String, Object>(); args.put("x-dead-letter-exchange", "some.exchange.name"); channel.queueDeclare("myqueue", false, false, false, args); Tiếp theo là sau khi message được đẩy vào exchange mới rồ...