[OpenSIPS-Users] Dialog module - profile replication not working

John Quick john.quick at smartvox.co.uk
Fri May 12 16:26:47 EDT 2017


Hi Liviu,

The problem was that I had failed to include the /b option.
It is all working now. Thank you for your help.

John Quick
Smartvox Limited


-----Original Message-----
From: Liviu Chircu [mailto:liviu at opensips.org] 
Sent: 12 May 2017 14:21
To: john.quick at smartvox.co.uk
Cc: users at lists.opensips.org
Subject: Re: [OpenSIPS-Users] Dialog module - profile replication not working

For your setup, profile replication between the two boxes should suffice, with the following usage by and large:

* modparam("dialog", "profiles_with_value", "concurrent/b")

* set_dlg_profile("concurrent/b");

* opensipsctl fifo profile_get_values concurrent/b

It should work without problems on 2.2 as well. Please let me know if you run into any sort of issues.

Regards,

Liviu Chircu
OpenSIPS Developer
http://www.opensips-solutions.com

On 12.05.2017 12:01, John Quick wrote:
> Hello Liviu,
>
> Thanks for responding to my query.
>
> The setup we have is active-active.  The cluster size is 2.
> The requirement is to be able to count, and limit, the total number of calls made by each user account.
> So if a particular user is allowed to make a total of 15 concurrent calls, this limit needs to be enforced as soon as the total number of calls through *both* servers exceeds 15.
>
> I have no need to replicate dialogs and can most certainly omit the modparam lines that initiate dialog replication.
>
> However, I now wonder if my method of testing is valid?
> I was thinking that "opensipsctl fifo profile_get_values concurrent" would show me values for both servers as soon as a call was established on either server.
>
> We might be able to upgrade to v2.3 if it is essential, but we had standardised deployment and server builds using debian packages from the repository "deb http://apt.opensips.org jessie 2.2-releases". Version 2.2 was the most up-to-date stable release when we started this project and it is still a supported version. I can see that a complex backport is not desireable for the developers but please can you help us to at least work around the known issues if possible.
>
> Regards
> John Quick
> Smartvox Limited
>
>
>> Hi, John!
>>
>> First of all, this is a known issue [1] with the 2.2 clusterer, where 
>> you cannot use both replication mechanisms of dialog concurrently. 
>> This has been fixed in 2.3 and above, and required a significant code 
>> refactoring, which is unlikely to get backported soon.
>>
>> Secondly, what you are trying to do is unlikely to solve your problem 
>> even with 2.3+, as the dialog replication mechanism __already__ 
>> broadcasts the profiles of each box throughout its cluster.
>> Consequently, reusing the same cluster id to share the profiles 
>> between boxes (yet again) will effectively double the value of each 
>> profile. If I correctly understand your intention, simply enabling 
>> dialog replication (profile included) will solve your problem. Please 
>> correct me if I'm wrong.
>>
>> The documentation could use some improvements in order to reflect the 
>> following (I will take care of this):
>>
>>      * dialog replication allows you to have "hot backups". Profiles are
>>   included. Recommended cluster size: 2
>>
>>      * profile replication is meant to be used in
>>   active-active-...-active setups, in order to easily achieve 
>> whatever platform-wide limitations you may think of. The OpenSIPS 
>> cluster size can grow indefinitely here.
>>
>> Some food for thought: currently in OpenSIPS 2.3+, although merging 
>> the above two concepts will work, the profiles are likely to be 
>> counted more than once, and your limits will hit faster. The 
>> clusterer needs more love in order to support "profile sharing 
>> between highly available clusters".
>>
>> Best regards,
>>
>> [1]: https://github.com/OpenSIPS/opensips/issues/938
>>
>> Liviu Chircu
>> OpenSIPS Developer
>> http://www.opensips-solutions.com




More information about the Users mailing list