草庐IT

state_machine

全部标签

python celery : Update django model after state change

我设法找到了2个类似的主题来讨论这个问题,但不幸的是我无法从中得到最好的解决方案:UpdateDjangoModelFieldBasedOnCeleryTaskStatusUpdateDjangoModelFieldBasedOnCeleryTaskStatus我使用Django和Celery(+redis作为消息代理),我想在celery任务状态发生变化(从挂起->成功,挂起->失败)等时更新Django模型我的代码:importtimefromceleryimportshared_task@shared_task(name="run_simulation")defrun_simul

python - Celey + Python 忽略 update_state 调用

我有一个场景,我需要将任务的状态更新为自定义值,然后读取它并根据该值应用一些逻辑。这是我的celery配置:celery=Celery(app.import_name,backend='redis://127.0.0.1:6379/0',broker='redis://127.0.0.1:6379/0')celery.conf.update(CELERY_TASK_SERIALIZER='pickle',CELERY_RESULT_BACKEND='redis://127.0.0.1:6379/0',CELERY_IGNORE_RESULT=False,CELERY_ALWAYS_EA

spring - 无法连接到 10.XX.XX.28 :6379: Unknown error - while accessing from Spring Batch or windows machine 处的 Redis

我已按照链接中的所有步骤进行操作:https://linuxtechlab.com/how-install-redis-server-linux/并使用以下linux版本。uname-aLinuxech-10-XX-XX-282.6.32-696.13.2.el6.x86_64#1SMPThuOct517:03:21PDT2017x86_64x86_64x86_64GNU/Linux这是安装在云上虚拟机和本地Windows机器上的某处我正在尝试访问redis出现以下错误,此处提到:nestedexceptionisredis.clients.jedis.exceptions.Jedis

c - 如何在多个Lua State(多线程)之间传递数据?

我在redis.lua中启动Redis连接池,通过从C调用,我得到了一个redis_lua_state,这个Lua状态是全局启动一次,其他线程只有从中得到。虽然有一个HTTP请求(工作线程),我需要从redis_lua_state获取一个redis连接,然后新建另一个Lua状态来加载其他Lua脚本,这些脚本将使用这个redis连接与Redis通信,该怎么做?或者如何设计我的Lua脚本以使其变得简单?代码示例:/*onmainthread,toinitredispoolconnection*/lua_State*g_ls=NULL;lua_State*init_redis_pool(vo

ruby /Resque/Redis : How to set up workers on different machines?

我一直在研究分布式后台作业的resque。通过演示应用程序,我设法让所有东西都在一台机器上运行。但我不知道如何设置一切,以便worker们在不同的机器上运行。我读到worker必须连接到redis服务器。但我仍然不知道从哪里开始。某处有分步说明吗?我没有找到任何关于此的文档。或者谁能给我解释一下?顺便说一句,我不使用Rails,我使用的是Sinatra。谢谢 最佳答案 是的,你是对的,如果你所有的工作人员都可以访问redis,你可以将它们连接起来,将它们分发到不同的机器上为此,您需要将worker连接到redis(我假设所有work

Redis,SCAN 游标 "state management"是如何工作的?

Redis有一个SCAN命令,可用于迭代匹配模式等的键。RedisSCANdoc您首先将光标值设为0;每次调用都会返回一个新的游标值,您将其传递给下一次SCAN调用。值为0表示迭代已完成。假设不需要服务器或客户端状态(光标值除外)我想知道Redis如何实现扫描算法? 最佳答案 你可以在redis中找到答案dict.c源文件。那我就引用其中的一部分。迭代按以下方式工作:最初,您使用游标(v)值0调用该函数。2)该函数执行一步迭代,并返回您必须在下一次调用中使用的新游标值。当返回的游标为0时,迭代完成。该函数保证在迭代开始和结束之间返回

macos - docker-machine - 尝试对插件服务器进行心跳调用时出错 : connection is shut down

我在MacOS中启动了一个docker-machine,在我ssh进入它并创建了一些容器之后,一切都运行良好。我可以看到一切正常,即使猛击容器仍然可以,启动时没有错误。我的问题后来出现了,因为我在一段时间后将自己ssh留在了机器中,我一遍又一遍地重复出现这个错误。如果我将自己ssh留在docker容器中足够长的时间,甚至会发生这种情况。这是怎么回事?exampleimage临时解决方案:退出并重新ssh进入docker-machine 最佳答案 我也突然收到此错误,直到我重新启动virtualbox实例后才消失docker-mach

macos - docker-machine - 尝试对插件服务器进行心跳调用时出错 : connection is shut down

我在MacOS中启动了一个docker-machine,在我ssh进入它并创建了一些容器之后,一切都运行良好。我可以看到一切正常,即使猛击容器仍然可以,启动时没有错误。我的问题后来出现了,因为我在一段时间后将自己ssh留在了机器中,我一遍又一遍地重复出现这个错误。如果我将自己ssh留在docker容器中足够长的时间,甚至会发生这种情况。这是怎么回事?exampleimage临时解决方案:退出并重新ssh进入docker-machine 最佳答案 我也突然收到此错误,直到我重新启动virtualbox实例后才消失docker-mach

docker - 使用 'localhost' 连接到 docker-machine

有些功能,比如没有https的JavaScript服务worker,只能在localhost上运行,但是当我在docker容器中运行我的应用程序时,使用在docker-machine上运行的docker-compose,我需要连接使用我从获得的地址到它docker-machineipdefault有没有办法将localhost映射到该ip? 最佳答案 您可以添加一个VirtualBox端口转发以将docker主机上的端口映射到您的本地计算机。假设您的docker机器被称为“默认”并且您想将容器中的端口80映射到localhost:8

docker - 使用 'localhost' 连接到 docker-machine

有些功能,比如没有https的JavaScript服务worker,只能在localhost上运行,但是当我在docker容器中运行我的应用程序时,使用在docker-machine上运行的docker-compose,我需要连接使用我从获得的地址到它docker-machineipdefault有没有办法将localhost映射到该ip? 最佳答案 您可以添加一个VirtualBox端口转发以将docker主机上的端口映射到您的本地计算机。假设您的docker机器被称为“默认”并且您想将容器中的端口80映射到localhost:8