簡體   English   中英

異步消息處理的最佳實踐是什么

[英]What's the best practice on async message handling

我正在用 netty 和 java8 實現一個 websocket 消息客戶端。 每條消息都有一個 transactionId,與其響應相關聯。

我需要實現一個發送 API。 所以我有幾個選擇。

  1. 發送(消息,回調);
  2. CompletableFuture 發送(消息);

無論哪種方式,我都想擁有一個事務映射(hashmap),其中包含到回調或 CompletableFuture 映射的事務 ID。 我的問題是哪個是更好的做法? 或者是其他東西? 將 CompletableFuture 放入 Map 可以嗎?

有什么好的設計可以解決類似的問題?

您可以使用 RabbitMQ 或 Apache Kafka。

1) RabbitMQ:處理小數據異步消息。它不可擴展,因為它需要額外的插件。
消息速度:10K/秒

1) Apache Kafka:處理大數據異步消息。它是可擴展的。 消息速度:1000K/秒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM