I am being confused about making the load balancing for our SMPP clients.
I have created a project that could handle multiple providers connections and the number of bindings limit according to the requirements but I am stuck at the step to create the load balancing once we would like to increase more nodes.
We have the ConnectionManagers variables as the list of ESMEManager from ProviderManagerClass.
Code: Select all
private IDictionary<int, ESMEManager> ConnectionManagers = new Dictionary<int, ESMEManager>();
Code: Select all
/// <summary>
/// List of receivers
/// </summary>
private List<SMPPConnection> Receivers = new List<SMPPConnection>();
/// <summary>
/// List of transmitters
/// </summary>
private Dictionary<int, SMPPConnection> Transmitters = new Dictionary<int, SMPPConnection>();
/// <summary>
/// List of transceivers
/// </summary>
private Dictionary<int, SMPPConnection> Transceivers = new Dictionary<int, SMPPConnection>();
We would like to use the message broker (RabbitMQ or Kafka instead) to sending the message as well as providing the API interface for creating the client.
We deployed over IIS.
Could you please help me to overcome this stuff or any experience about managing the SMPP clients?