python-asyncio

    5热度

    2回答

    我想用Python的asyncio模块创建一个异步应用程序。但是,我可以在文档中找到的所有实现均基于单个事件循环。 有什么办法启动多个事件循环运行相同的应用程序,这样我就可以实现高可用性和容错?换句话说,我想通过插入新的节点来扩展我的应用程序,这些节点将在负载平衡器后面共享协程的执行。 我知道有异步编程和线程安全的,也许是我心目中甚至是不可能的之间的内在问题。如果是这样,如何在异步架构上避免这种S

    10热度

    2回答

    我想熟悉asyncio,所以我决定编写一个数据库客户端。但是,性能完全匹配同步代码。我相信这是我对一个概念的误解。有人能解释我在做什么? 请参见例如下面的代码:提前 class Connection: def __init__(self, reader, writer, loop): self.futures = deque() # ... sel

    3热度

    1回答

    我有5,00,000个网址。并希望得到每个异步的响应。 import aiohttp import asyncio @asyncio.coroutine def worker(url): response = yield from aiohttp.request('GET', url, connector=aiohttp.TCPConnector(share_cookies=T

    3热度

    1回答

    作为Python新的asyncio模块的实验,我创建了以下片段来处理后台工作程序中的一组长时间运行的动作(作业)。 为了控制同时运行的作业的数量,我在中引入了一个信号量(第56行)。然而,随着信号量的到位,似乎所获得的锁定从未被释放,因为完成后(执行回调),等待的作业不会开始。当我沟通与块,一切都按预期工作。 import asyncio from queue import Queue, Em

    2热度

    2回答

    我观察到一些罕见的行为与asyncio/Python3.4/Windows7其中asyncio.streams.StreamReader.read(byte_count)读取少于byte_count字节。我无法可靠地重现该行为,但具有足够的网络活动(读取1000次),我可能会看到它一次。 的文档read(byte_count)说:Read up to n bytes. 编号:https://doc

    3热度

    1回答

    我已经成功地使用了requests模块上传二进制文件(jpg),具有类似如下: upload_url = 'http:10.1.1.1:8080/api/media/photo' headers = {'Authorization': token_string, 'Content-Type': 'image/jpg'} data = open('photo.JPG', 'rb') param

    3热度

    1回答

    我想利用Python的新asyncio库发送异步HTTP请求。我希望在发送每个请求之前等待几个毫秒(timeout变量) - 但是当然 - 将它们全部异步发送,而不是在发送每个请求之后等待响应。 我做类似如下: @asyncio.coroutine def handle_line(self, line, destination): print("Inside! line {} dest

    8热度

    2回答

    我想实现从标准输入传递数据给协程的一个简单的想法: import asyncio import sys event = asyncio.Event() def handle_stdin(): data = sys.stdin.readline() event.data = data # NOTE: data assigned to the event object

    5热度

    2回答

    我使用Asyncio和Requests来测试一系列HTTP请求。 出于某种原因,使用Asyncio稍慢于直接请求。任何想法为什么?我是否错误地使用了Asyncio? import asyncio import functools import requests import time ts = time.time() for i in range(10): @asyncio.

    2热度

    1回答

    >>> import asyncio >>> help(asyncio.wait) .. Help on function wait in module asyncio.tasks: wait(fs, *, loop=None, timeout=None, return_when='ALL_COMPLETED') Wait for the Futures and corouti