diff options
| author | Alexandre Flament <alex@al-f.net> | 2021-01-13 15:46:48 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-13 15:46:48 +0100 |
| commit | 484dc99580a4cfdbba022209cbe896cd69b3e8b2 (patch) | |
| tree | 0dc84bbe549fac71ead7ee4e4fafeb0d3f3021c2 /searx/shared/__init__.py | |
| parent | f7e11fd7222363a72a8fa33cf69190f64a3880bd (diff) | |
| parent | 912c7e975c3943db798d748fa48d460467b66d30 (diff) | |
Merge pull request #2419 from dalf/checker
[enh] add checker
Diffstat (limited to 'searx/shared/__init__.py')
| -rw-r--r-- | searx/shared/__init__.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/searx/shared/__init__.py b/searx/shared/__init__.py new file mode 100644 index 000000000..cbe24d239 --- /dev/null +++ b/searx/shared/__init__.py @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later + +import logging + +logger = logging.getLogger('searx.shared') + +try: + import uwsgi +except: + # no uwsgi + from .shared_simple import SimpleSharedDict as SharedDict, schedule + logger.info('Use shared_simple implementation') +else: + try: + uwsgi.cache_update('dummy', b'dummy') + if uwsgi.cache_get('dummy') != b'dummy': + raise Exception() + except: + # uwsgi.ini configuration problem: disable all scheduling + logger.error('uwsgi.ini configuration error, add this line to your uwsgi.ini\n' + 'cache2 = name=searxcache,items=2000,blocks=2000,blocksize=4096,bitmap=1') + from .shared_simple import SimpleSharedDict as SharedDict + + def schedule(delay, func, *args): + return False + else: + # uwsgi + from .shared_uwsgi import UwsgiCacheSharedDict as SharedDict, schedule + logger.info('Use shared_uwsgi implementation') + +storage = SharedDict() |