私は、メッセージキューの複製を持つスケーラブルなアーキテクチャを実現するために、MoscaまたはMosquittoブローカを使用することを計画していました(オープンソースのため)。ブローカの最終的な障害ではまだブローカによって配信されなかったメッセージを失いません。
私が読んだとおり、モスキートは成熟した非常に安定したソリューションで、ブリッジを使った水平スケーラビリティを備えています。しかし、データベース(すべてのブローカーに共通)にメッセージを書き込むためのプラグインを見つけることができませんでした。つまり、2つのブローカーの負荷が均衡し、そのうちの1つが死んでしまうと、ブローカは、ブローカが回復するまで配信できません。 一方、MoscaはRedisを使用してスケールすることができます。ブローカ1が死んでも、共通データベースに格納されているため、ブローカ2は依然としてメッセージを配信できます。そして、そのようにして、私はredisのマスタースレーブ設定を使用して、単一障害点を回避することができます。MosquittoとMoscaの水平スケーラビリティと復元力
だから私の質問は以下のとおりです。
1)生産のための良い選択モスカますか?
2)redisを使用してメッセージキューをモスキートに割り当てることはできますか?