问题标签 [sendasynchronousrequest]

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.

0 投票
1 回答
393 浏览

python - 进行异步 API 调用时如何限制 Grequests?

我正在使用 grequests 库传递 ~250000 个 url 以从 api 获取数据。

API 限制为每秒 100 次调用。

如何限制 grequests 每秒只传递 100 个 url?我将大小参数从 5 增加到 100。不确定这是做什么的,但仍然运行到错误“超出最大重试次数”。

到目前为止,这是我的代码:

0 投票
1 回答
676 浏览

python - Tornado 服务器的多个异步 HTTP 连接

我有一个要同步的龙卷风服务器。我有一个客户端,它同时向服务器发出异步请求。它每 5 秒用一次心跳 ping 服务器,其次,它会尽可能地对作业发出 GET 请求。

在服务器端,有一个包含作业的线程安全队列。如果队列为空,它将阻塞 20 秒。我希望它保持连接并阻塞 20 秒,当它返回时,它会向客户端写入“No job”。一旦有作业可用,它应该立即将其写入客户端,因为 queue.get() 会返回。我希望在此请求被阻止时,心跳继续在后台发生。在这里,我从同一个客户端向服务器发出两个异步请求。

这是我构建的一个示例项目,它模拟了我的问题。

服务器:

客户:

问题:

  1. 问题在于,当 queue.get() 阻塞时,心跳也会阻塞 20 秒。这是我不想要的。
  2. 正如您在我的客户端中看到的,我将请求超时设置为 180 秒。但这似乎对龙卷风不起作用。如果将 queue.get() 超时时间增加到 20 秒以上,它会返回错误代码,说明请求超时。
0 投票
0 回答
25 浏览

javascript - 尝试进行异步 Api 请求将响应数据保存为对象的一部分

我正在尝试学习 Javascript 类和异步 XMLHTTPRequests。我不太擅长面向对象编程,因此我正在尝试学习它以扩展我的知识。

我已经设法了解如何使用https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes上的 mozilla 文档定义 Class 属性、方法和 getter 。

同时我也在学习如何向apis发起异步请求来获取数据。请查看下面我的精简代码,它代表了我为发出异步请求所做的工作。

根据代码,我能够发出成功的请求并从 API 请求中检索数据(数据日志到控制台),但是数据没有被保存为我的对象的属性,即即使我已经设置this.responseData = JSON.parse(http.response);,当我尝试访问 的值test.responseData,它返回为undefined

我曾多次尝试在线搜索解决方案,但不幸的是没有成功,因此我发布这个问题是为了询问是否有人可以根据我的代码给我一个解决方案。

我正在尝试的是可能的,还是必须做一个synchronous request。许多在线文章指出使用synchrous requests是不好的做法并影响浏览器渲染?

非常感谢你,我很感激你的帮助。

0 投票
2 回答
299 浏览

siddhi - 无法在 Siddhi 中执行同步请求响应示例

我正在尝试运行WSO2 Siddhi 文档中给出的示例代码。

我已经复制了那里给出的内容。

在 Event Simulator 选项卡中,我传递了示例中给出的值,即:时间戳字段中的 154467847759 和 creditCardNo(STRING) 中的 5555555555554444。

这是即将到来的错误。

0 投票
1 回答
491 浏览

siddhi - SiddhiQL 中的语法错误,输入“@sink”没有可行的替代方案

我正在尝试根据此处的示例在 Siddhi 中使用 http-request (source) 和 http-response (sink) 发送同步请求。

我有一个 API,我可以使用 curl 命令来访问它。这是我的 curl 命令和输出。

我正在尝试使用 Siddhi 做类似的事情。

这是我的代码。

我在@sink 行中遇到的错误是:

我在这里缺少什么吗?

0 投票
1 回答
3551 浏览

python - 如何使用 python 请求进行多个 api 调用

我正在尝试使用 requests 或任何其他允许我执行此操作的库从 django 对外部 API 进行并行调用。

我已经尝试使用 grequests 进行此调用,有时它可以工作,但大多数时候我在客户端收到“NoneType”对象没有属性“json”错误。这是我的代码

视图.py

在服务器端,我收到此错误:

我可以使用请求或任何其他库来执行调用而不会出现这些错误吗?如果是,我如何在我的工作中实现它?

0 投票
0 回答
586 浏览

asynchronous - 如何创建异步 Camel-kafka 消费者?

我有一条从卡夫卡到消费者的骆驼路线。如果传入的消息是 18000 TPS,它正在以 2000 的 TPS 消费和生产。所以消费者话题有消费者滞后。如果我保持 max.poll.recors = 500 我能够达到 2000 TPS。如果我保持生产者设置 requestRequiredAcks=0 我可以达到 4000 TPS。但仍然存在消费滞后。我们知道,当 from->to 完成时,骆驼路线就完成了。从 2 个消费者计数为 2 的分区消费的消费者一直很忙,直到路由完成。

有没有办法让骆驼卡夫卡消费者异步。任何代码示例?

我们还观察到,在此路由中引入线程会重新读取相同的已处理和发送的消息。这个链接是不是说骆驼卡夫卡https://stackoverflow.com/questions/56716812/how-to-commit-offsets-thread-safe-using-camel-kafka

0 投票
1 回答
111 浏览

python - 如何使 send() 调用异步?

服务器运行为nc -l 1234


recv()下面是使用事件循环select()调用时未被阻止的客户端。

客户端.py


事件循环.py


但是self.sock.send(msg)由于不同的原因,通话可能会被阻止:

1)服务器崩溃

localhost2)由于网线损坏,无法访问远程服务器(not )


如何让send()通话不被阻塞?只需抛出消息并继续使用其余功能......不使用asyncio

0 投票
0 回答
147 浏览

python - 如何继续异步请求一组 URL(python)?

我有一组 URL(相同的 http 服务器但不同的请求参数)。我想要实现的是继续异步或并行请求所有这些,直到我杀死它。

我开始使用threading.Thread()为每个 URL 创建一个线程,并while True:在请求函数中执行一个循环。当然,这已经比单线程/单请求更快了。但我想取得更好的成绩。

然后我尝试aiohttp了库来异步运行请求。我的代码是这样的(仅供参考,每个 URL 都由url_baseand组成product.id,每个 URL 都有一个不同的代理用于请求):

观察结果是:1)它没有我预期的那么快。实际上比使用线程慢。2)更重要的是,请求只在运行开始时返回正常,很快几乎所有请求都返回了几个错误,例如:

或者

或者

我在这里做错了什么(尤其是while True循环?如果是这样,我怎样才能正确地实现我的目标?

0 投票
0 回答
11 浏览

node.js - 在 mocha 中,我无法使用不同的参数异步进行多个 API 调用

我必须在每次迭代中使用不同的参数循环调用多个 api。

假设:第一个患者 ID:1->apiCall(1) 第二个患者 ID 2-> apiCall(2) 但每次迭代都需要最后一次读取的患者 ID 来执行 api 调用,即始终执行 apiCall(2)。我应该如何保持执行和输出的顺序?