Changes between Version 1 and Version 2 of DirectoryAuthPlugin/CacheManagement


Ignore:
Timestamp:
Mar 22, 2015, 11:32:34 AM (9 years ago)
Author:
figaro
Comment:

Cosmetic changes

Legend:

Unmodified
Added
Removed
Modified
  • DirectoryAuthPlugin/CacheManagement

    v1 v2  
    1 [[PageOutline]]
    2 = Cache Management =
     1[[PageOutline(2-5,Contents,pullout)]]
    32
    4   Because network connections are expensive in time, compute cycles and network bandwidth, a strong caching paradigm (love using that word) was implemented to help lower the use of resources and lower the response time.
     3= Cache Management
    54
    6 == Configuration ==
    7  - the timeout and size can be tweaked as needed to support a particular environment.  The system will send out an INFO alert if it's purging too quickly.
    8  - the memory cache can be completely disabled by setting the size to 0.  This should only be done if you are using a single process, as the database interface *should* be caching results.
    9 == Lookups ==
    10  - Each search to the AD server is through a cached LDAP filehandle.  The restart option has been enabled to allow it to persist.
    11  - When valid data is found .. the data is pickled, and the key hashed and stored in a new table in the database called ad_cache.
     5Because network connections are expensive in time, compute cycles and network bandwidth, a strong caching paradigm was implemented to help lower the use of resources and lower the response time.
     6
     7== Configuration
     8
     9 - The timeout and size can be tweaked as needed to support a particular environment. The system will send out an INFO alert if it's purging too quickly.
     10 - The memory cache can be completely disabled by setting the size to 0. This should only be done if you are using a single process, as the database interface *should* be caching results.
     11
     12== Lookups
     13
     14 - Each search to the ActiveDirectory server is through a cached LDAP filehandle. The restart option has been enabled to allow it to persist.
     15 - When valid data is found, the data is pickled, and the key hashed and stored in a new table in the database called `ad_cache`.
    1216 - It's also stored in a class variable {{{_cache}}} which is a dictionary.
    1317
    14 == Retrieval ==
    15  - the memory cache is checked first
    16  - then the database cache
    17  - lastly the AD server itself is searched
    18  - Any results are then pushed back on the cache(s)
     18== Retrieval
    1919
    20 == Integration ==
    21  - data is cached by 'class' where appropriate to speed up processing,
    22  - all ldap searches are cached using a key which is a hashed combination of ( base_dn, scope, filter )
     20 - The memory cache is checked first.
     21 - Then the database cache.
     22 - Lastly the AD server itself is searched.
     23 - Any results are then pushed back on the cache(s).
     24
     25== Integration
     26
     27 - Data is cached by 'class' where appropriate to speed up processing.
     28 - All ldap searches are cached using a key which is a hashed combination of `( base_dn, scope, filter )`.