[keycloak-user] Performance lag in client role creation and retrieval
Padmaka Wijaygoonawardena
teknodjs at gmail.com
Thu Dec 8 01:31:00 EST 2016
Hi,
I've tried Keycloak 2.4.0.Final with the same setup as above regarding the
performance issue. For creating a role and assign role there is a good
performance improvement.
However, after the 2.4.0 upgrade, for the 'get client role by role name'
endpoint it is taking around 15s on average. Earlier there wasn't this much
of a performance lag. In the database I have around 30000 client roles and
around 10000 roles per client.
Please note that I have a MySQL DB, and a two node cluster.
Any advice or fix would be highly appreciated. Thanks in advance.
I have commented on the related ticket as well [1]
[1] - https://issues.jboss.org/browse/KEYCLOAK-3863
On Fri, Nov 4, 2016 at 3:48 PM, Padmaka Wijaygoonawardena <
teknodjs at gmail.com> wrote:
> Hi,
>
> Thanks for replying I created a ticket here [1].
>
> Cheers,
> Padmaka
>
> [1] - https://issues.jboss.org/browse/KEYCLOAK-3863
>
> On Fri, Nov 4, 2016 at 11:01 AM, Stian Thorgersen <sthorger at redhat.com>
> wrote:
>
>> We're actually currently looking at some issues around this. Please
>> create a JIRA and we'll make sure your case is checked as well.
>>
>> Hopefully this will be solved in the upcoming 2.4 release.
>>
>> On 3 November 2016 at 12:16, Padmaka Wijaygoonawardena <
>> teknodjs at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I'm currently using Keycloak 2.2.1 with a MySQL database. The setup I'm
>>> using has 2 Keycloak nodes and around 4000 client roles for one client.
>>> the
>>> process I go through for adding is as follows:
>>>
>>>
>>> 1. GET call to check whether the role already exists. (takes around
>>> 2000ms)
>>> 2. POST call to create the new client role. (takes around 10000ms)
>>> 3. GET call to get the newly created client role(Since the create role
>>> call doesn't send the full client role in the response body). (takes
>>> around
>>> 10000ms)
>>>
>>> The Keycloak version I used earlier was 1.9.0 with that version this
>>> process worked fine with one call taking around 700ms on average.
>>>
>>> So as shown above this is a huge performance lag. With further
>>> investigation I found the following points
>>>
>>>
>>> 1. When using only one Keycloak node this problem doesn't appear.
>>> Therefore it should be some issue with infinispan cache.
>>> 2. When I remove the get calls and only send the create calls then the
>>> calls return in 2000ms in average.
>>> 3. This lag only appears when executing a get role call soon after
>>> creating a client role.
>>>
>>> I double checked the changes for 2.3.0 [1] since there is nothing said
>>> about cache or related issues I raised this issue.
>>>
>>> Any advice or fix would be highly appreciated. Thanks in advance.
>>>
>>> [1] - http://blog.keycloak.org/2016/10/keycloak-230cr1-released.html
>>>
>>> Cheers,
>>> Padmaka.
>>> _______________________________________________
>>> keycloak-user mailing list
>>> keycloak-user at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/keycloak-user
>>>
>>
>>
>
More information about the keycloak-user
mailing list