问题标签 [redis-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
redis - 更改目录后无法启动redis服务器
我使用安装了redis
默认数据目录是/var/lib/redis/,但是当我在文件:sudo gedit /etc/redis/redis.conf中切换到另一个目录/some path/redisDB时,我无法再次启动redis服务器。我收到一个错误
python - 在 Python 中设置 celery 任务后端的麻烦
我按照 [ http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html ] 中给出的所有步骤进行操作 这是代码:
当我使用以下命令运行 celery worker
我收到设置后端的语法错误。这是错误消息:
[2018-07-10 16:37:21,970: CRITICAL/MainProcess] 不可恢复的错误:SyntaxError('invalid syntax', ('c:\users\user_\appdata\local\programs\python\python37-32\lib\site -packages\celery\backends\redis.py', 22, 19, 'from . import async, base\n')) Traceback(最近一次调用最后):文件“c:\users\user_\appdata\local\programs \python\python37-32\lib\site-packages\kombu\utils\objects.py”,第 42 行,在获取 返回 obj 中。dict [自我。姓名] KeyError: 'backend' 在处理上述异常的过程中,又发生了一个异常: Traceback (最近一次调用 last): File "c:\users\user_\appdata\local\programs\python\python37-32\lib\site- packages\celery\worker\worker.py”,第 205 行,在 start self.blueprint.start(self) 文件“c:\users\user_\appdata\local\programs\python\python37-32\lib\site-packages \celery\bootsteps.py”,第 115 行,在 start self.on_start() 文件中“c:\users\user_\appdata\local\programs\python\python37-32\lib\site-packages\celery\apps\worker .py”,第 139 行,在 on_start self.emit_banner() 文件“c:\users\user_\appdata\local\programs\python\python37-32\lib\site-packages\celery\apps\worker.py”中,第 154 行,在 emit_banner '\n',self.startup_info(artlines=not use_image))),文件“c:\users\user_\appdata\local\programs\python\python37-32\lib\site-packages\celery\apps\worker.py",第 217 行,在 startup_info 结果=self.app.backend.as_uri(),文件“c:\users\user_\appdata\local\programs\python\python37-32\lib\site-packages\kombu\utils\objects.py”,第 44 行,在获取 值 = obj。dict [自我。名称] =自我。获取(obj)文件“c:\users\user \appdata\local\programs\python\python37-32\lib\site-packages\celery\app\base.py”,第 1196 行,在后端返回 self。get_backend() 文件“c:\users\user \appdata\local\programs\python\python37-32\lib\site-packages\celery\app\base.py”,第 914 行,在get_backend self.loader) 文件中“ c:\users\user \appdata\local\programs\python\python37-32\lib\site-packages\celery\app\backends.py",第 70 行,在 by_url 返回 by_name(backend, loader),url 文件" c:\用户\用户\appdata\local\programs\python\python37-32\lib\site-packages\celery\app\backends.py”,第 50 行,在 by_name cls = symbol_by_name(backend, aliases) 文件“c:\users\user_\ appdata\local\programs\python\python37-32\lib\site-packages\kombu\utils\imports.py”,第 56 行,在 symbol_by_name 模块 = imp(module_name, package=package, **kwargs) 文件“c: \users\user_\appdata\local\programs\python\python37-32\lib\importlib_ init _.py",第 127 行,在 import_module 中返回 _bootstrap._gcd_import(name[level:], package, level) File "",第 1006 行,在 _gcd_import 文件“”中,第 983 行,在 _find_and_load 文件中“”,第 967 行,在 _find_and_load_unlocked 文件中“”,第 677 行,在 _load_unlocked 文件中“”,第 724 行,在 exec_module 文件中“”,第 860 行,在 get_code 文件“”中,第 791 行,在 source_to_code 文件中“”,第 219 行,在call_with_frames_removed 文件“c:\users\user \appdata\local\programs\python\python37-32\lib\site-packages\celery\backends\redis.py”,第 22 行来自 . 导入异步,基 ^ SyntaxError:无效语法
但是,当我使用注释行时,我没有任何问题,只是结果后端被禁用,我需要将结果后端设置为 redis-server
laravel-5.4 - __construct() 方法调用但 handle() 函数未在 laravel 作业中调用
我正在尝试通过dispatch()
使用方法执行作业
- 拉拉维尔 5.4
- redis 服务器
- 导师
我已经完成了queue
类似的配置'default' => env('QUEUE_DRIVER', 'redis')
。
- 我在我的
app/Services
文件中调用 dispatch() 方法
调度(新的 SavePropertyImages($pid_list));
以下是我的工作文件
/li>app/Jobs
:
当我调用一个dispatch(new SavePropertyImages($pid_list))
方法时,作业的__construct()
方法调用,但它不调用handle()
函数。
你有什么想法?
windows - windows redis 不工作
昨天我从github下载了 zip 格式的 redis。首先,一切似乎都运行良好:redis-server 启动良好,服务的安装也进展顺利。但是一旦我启动 redis-cli.exe 什么都没有发生,我只是得到一个空白的 dos 窗口。我也尝试使用 c# 客户端进行连接,但我根本无法连接。
我没有更改 .conf 文件中的任何内容,因此 redis.windows.conf 与来自 github 的 .conf 文件是同一个文件。
我希望有人可以进一步帮助我。
redis - 如何成功启动`redis-sentinel`服务器
对不起这里的redis新手。
当我跑redis-sentinel
我错过了什么?我需要配置文件吗?如果是这样,我应该在哪里/path/to/sentinel.conf
?
java - Load CSV file in Redis using Redis-cli on Windows
I went through questions like how to import a ".csv " data-file into the Redis database and decided to put a question here after lot of web searching.
I've an employee.csv
file and looking to import that file using the redis-cli
. I am using the Windows version 3.2.100
of Redis server.
employee.csv
I also followed url: https://gist.github.com/arsperger/6f246f21279edf3cd03ba2bee19daaef and https://www.alibabacloud.com/help/doc-detail/26357.htm, but cat will not support to the Windows version.
What can I try next?
django - 芹菜连接到rabbitmq-server而不是redis-server
我有一个 Django 应用程序,我想将它配置为 celery 以运行后台任务。
套餐:
芹菜==4.2.1
Django==2.1.3
蟒蛇==3.5
Redis-服务器==3.0.6
settings.py文件中 celery 的配置为:
和celery.py文件:
当我运行时:celery -A project worker -l info -B -E
它指向 rabmmitmq 服务器,而不是它应该指向 redis-server,如下所示:
同样的情况也发生在生产环境中。在生产中,我已经使用 Gunicorn 和 Nginx 部署了 Django 应用程序,现在我想实现一些方法来运行后台任务,因为django-crontab
包不起作用。
问题:
celery 配置有什么问题?
谁能推荐一种运行定期后台任务的方法?
**注意:我尝试过实现supervisor,但似乎supervisor与python3不兼容,因此无法配置它。
python - 从 Python 设置的 Redis 值未反映在 Redis 客户端中
我已经安装redis
在我的 OS X 上,并尝试从 Python 3.5 客户端在 Redis 中设置和获取一些值。我有 Redis 服务器(通过 command redis-server
)和 redis-client (通过 command 打开redis-cli
)。这就是我在 Python 上尝试的:
bar
这按预期打印。但是,如果我转到我的 redis-client 提示符并尝试get foo
,它会返回nil
. 同样,如果我在 redis-client 本身中设置一个值,例如,在客户端set boo too
中调用会按预期返回,但是,如果我在我的 Python 客户端中运行,我会得到.get boo
too
r.get(boo)
None
有趣的是,它们在自己的实例之间同步。因此,如果我打开另一个 Python 命令提示符并键入r.get("foo")
,它会返回bar
. 同样,如果我打开另一个redis-cli
实例并键入get boo
,我会得到too
. 只是 Python 客户端和 Redis 客户端之间的值没有同步。我什至尝试在bgsave
此处设置值后从 Python 客户端强制执行,它确实在redis-server
正在运行的窗口中触发了保存,但即使在那之后这些值也不会反映在redis-cli
窗口中。
他们一直工作得很好,直到几天前,这已经开始发生在最近的某个时候。
知道如何解决这个问题吗?
java - Java 客户端无法连接到在 localhost 上运行的 Redis Sentinel
我在本地主机中设置了 3 个 Redis 服务器和 3 个 Redis Sentinel 实例。服务器运行在:
哨兵正在运行:
我有一个(Java)客户端,它尝试连接到其中一个哨兵并在 redis 服务器中设置密钥:
最初,我的哨兵配置如下(例如,在 port 上运行的第一个哨兵5000
):
如果我尝试运行我的 (Java) 客户端,我会收到以下错误:
但是,如果我将我的哨兵配置脚本更改为以下脚本:
客户端完美运行。我不明白为什么。
AFAIK,如果requirepass
没有在文件中设置并且在sentinel.conf
文件bind
中被注释sentinel.conf
,那么只有这样protected-mode
才能yes
避免任何客户端连接到除了localhost
. 在我的第一个哨兵配置中,我有bind
命令但它仍然不起作用。
为什么注释掉bind
并明确设置protected-mode
为no
有效?
PS我也试过两者都有bind 127.0.0.1
,protected-mode no
但即使这样也没有用。
redis - 无论是否设置过期,Redis 密钥始终在 ~150 秒内刷新
我在我的 Centos 上安装了 redis-server 并发现我在 PHP 或 redis-cli 中设置的任何键 - 它在 150 秒后被删除。不知道该怎么办。我到处看到redis键没有TTL,但就我而言,似乎某处设置了全局redis TTL。任何想法为什么可以在 150 秒内删除密钥?