jjzjj

aioredis

全部标签

python-3.x - 在 aiohttp 应用程序中与 Redis(aioredis) 失去连接

我正在aiohttp中构建一个基于text/event-stream的View,并在aioredis实现中使用Redis的pub-sub。它看起来像:从服务器获取一些数据并发布到chanell的脚本defmain(host,port):server_logger.info('Gotparamsconnectionhost{0},port{1}'.format(host,port))loop=asyncio.get_event_loop()title=Noneredis=loop.run_until_complete(create_redis(('localhost',6379)))wh

python-3.x - 在 aiohttp 应用程序中与 Redis(aioredis) 失去连接

我正在aiohttp中构建一个基于text/event-stream的View,并在aioredis实现中使用Redis的pub-sub。它看起来像:从服务器获取一些数据并发布到chanell的脚本defmain(host,port):server_logger.info('Gotparamsconnectionhost{0},port{1}'.format(host,port))loop=asyncio.get_event_loop()title=Noneredis=loop.run_until_complete(create_redis(('localhost',6379)))wh

python - 如何用aioredis pub/sub实现单生产者多消费者

我有网络应用程序。该应用程序具有将一些对象数据推送到redischannel的端点。另一个端点处理websocket连接,其中数据从channel中获取并通过ws发送到客户端。当我通过ws连接时,消息仅获取第一个连接的客户端。如何使用多个客户端从redischannel读取消息而不创建新订阅?Websocket处理程序。在这里,我订阅了channel,将其保存到应用程序(init_tram_channel)。然后在我收听channel和发送消息的地方运行作业(run_tram_listening)。@routes.get('/tram-state-ws/{tram_id}')async

python - 如何用aioredis pub/sub实现单生产者多消费者

我有网络应用程序。该应用程序具有将一些对象数据推送到redischannel的端点。另一个端点处理websocket连接,其中数据从channel中获取并通过ws发送到客户端。当我通过ws连接时,消息仅获取第一个连接的客户端。如何使用多个客户端从redischannel读取消息而不创建新订阅?Websocket处理程序。在这里,我订阅了channel,将其保存到应用程序(init_tram_channel)。然后在我收听channel和发送消息的地方运行作业(run_tram_listening)。@routes.get('/tram-state-ws/{tram_id}')async

python - 无法从 Redis 订阅中获取数据?

我正在尝试通过在我的客户端应用程序上使用订阅来从Redischannel获取数据。为此,我将python与asyncio和aioredis结合使用。我想使用我的订阅在服务器上发生变化时更新我的​​主应用程序的变量,但我无法将从订阅接收到的数据传递到我的主线程。根据aiorediswebsite,我通过以下方式实现了我的订阅:sub=awaitaioredis.create_redis('redis://localhost')ch1=awaitsub.subscribe('channel:1')assertisinstance(ch1,aioredis.Channel)asyncdefa

python - 无法从 Redis 订阅中获取数据?

我正在尝试通过在我的客户端应用程序上使用订阅来从Redischannel获取数据。为此,我将python与asyncio和aioredis结合使用。我想使用我的订阅在服务器上发生变化时更新我的​​主应用程序的变量,但我无法将从订阅接收到的数据传递到我的主线程。根据aiorediswebsite,我通过以下方式实现了我的订阅:sub=awaitaioredis.create_redis('redis://localhost')ch1=awaitsub.subscribe('channel:1')assertisinstance(ch1,aioredis.Channel)asyncdefa

python-3.x - Tornado + aioredis : why are my redis calls blocking?

我尝试在Tornado和Redis上构建一个具有两个API端点的简单系统:API从Redis读取一个值,或者等待这个值存在(使用BRPOP:value=yieldfromredis.brpop("test"))写入此值的API(使用LPUSH:redis.lpush("test","thevalue"))。所以我希望能够以任何顺序调用这些API。事实上,如果我调用2.then1.,它会按预期工作,对1.的调用会立即返回值。问题是,如果我先调用1.然后调用2.,那么两个请求都会被阻止而永远不会返回。同时,在请求阻塞时,我仍然可以直接在Redis中使用LPUSH/BRPOP,即使是同一个键

python-3.x - Tornado + aioredis : why are my redis calls blocking?

我尝试在Tornado和Redis上构建一个具有两个API端点的简单系统:API从Redis读取一个值,或者等待这个值存在(使用BRPOP:value=yieldfromredis.brpop("test"))写入此值的API(使用LPUSH:redis.lpush("test","thevalue"))。所以我希望能够以任何顺序调用这些API。事实上,如果我调用2.then1.,它会按预期工作,对1.的调用会立即返回值。问题是,如果我先调用1.然后调用2.,那么两个请求都会被阻止而永远不会返回。同时,在请求阻塞时,我仍然可以直接在Redis中使用LPUSH/BRPOP,即使是同一个键