Nats + Redis PubSub cluster updates replacing Gossip protocol

This commit is contained in:
mdecimus
2025-05-14 19:43:47 +02:00
parent 7ec5701af8
commit 839b7189fa
65 changed files with 1807 additions and 1350 deletions

View File

@@ -13,7 +13,7 @@ use http::HttpSessionManager;
use imap::core::ImapSessionManager;
use managesieve::core::ManageSieveSessionManager;
use pop3::Pop3SessionManager;
use services::{StartServices, gossip::spawn::GossiperBuilder};
use services::{StartServices, broadcast::subscriber::spawn_broadcast_subscriber};
use smtp::{StartQueueManager, core::SmtpSessionManager};
use trc::Collector;
use utils::wait_for_shutdown;
@@ -33,7 +33,6 @@ async fn main() -> std::io::Result<()> {
// Init services
init.start_services().await;
init.start_queue_manager();
let gossiper = GossiperBuilder::try_parse(&mut init.config);
// Log configuration errors
init.config.log_errors();
@@ -83,10 +82,8 @@ async fn main() -> std::io::Result<()> {
};
});
// Spawn gossip
if let Some(gossiper) = gossiper {
gossiper.spawn(init.inner, shutdown_rx.clone()).await;
}
// Start broadcast subscriber
spawn_broadcast_subscriber(init.inner, shutdown_rx);
// Wait for shutdown signal
wait_for_shutdown().await;