kjthorpe18 commented on PR #410:
URL: 
https://github.com/apache/directory-scimple/pull/410#issuecomment-1804273632

   Since I think it was my email that opened up this conversation, let me 
describe what I was facing. 
   
   For each of these requests, SCIMple uses the `IGroupService.get(id)` method 
to fetch the group and apply updates to the group's attributes and members, 
essentially a `GET /Groups/<id>` request for each membership change. This is 
then passed to the `IGroupService.update(updateRequest)` method.
   
   Azure sends group membership updates via the Group PATCH endpoint one-by-one 
for each user in a group. So, for each user added to a group, we're seeing a 
query to fetch every member of the group, resulting in latency, DB CPU 
utilization spiking, etc. For large groups (we did a test with 90k users each 
for multiple groups assigned to a SCIM application), this means 90k queries for 
members of a group, each increasing in time as the group grows... not great.
   
   Ideally, Azure would batch group updates together so this did not have to be 
done _for each user in a group_, but I don't expect them to change that quickly.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to