[python-ldap] ldap.OPT_DESC, async ops and paged search controls

Michael Ströder michael at stroeder.com
Tue Jan 27 22:56:48 CET 2015


Mark R Bannister wrote:
> So if I have just one thread reading results and dispatching results, I have a
> bottleneck don't I?  If that thread is busy reading a large result set for one
> request, and there is also a large amount of data waiting for another ten
> separate requests, there will be a delay in processing the others.  Whereas if
> I have ten separate workers reading their own data, I am spreading the load
> and improving the performance.  It is a more scalable solution with
> performance that is directly proportional to the number of requests, not
> exponential.

After all your LDAP server will be also limited, especially when you really
want to enumerate all objects in your maps.

If enumeration is really crucial in your environment, then consider
maintaining a local maps cache database. With this you can query the LDAP
server with syncrepl or (modifyTimestamp=>) to keep LDAP result sets small
during normal update operation. sssd is doing a lot like this. But it's
complex and error-prone.

Personally I don't think that enumeration is really needed. BTDT, but YMMV
since the OS platforms out there are quite different.

Ciao, Michael.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4252 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mail.python.org/pipermail/python-ldap/attachments/20150127/28cad3a3/attachment-0001.bin>


More information about the python-ldap mailing list