问题标签 [amphp]

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 回答
824 浏览

amp-html - 如何在提交到另一个页面时重定向 amp 表单?

下面提到的代码是我的表单代码

下面提到的代码是我上面表格的 php 代码。

我面临的基本问题是,在提交表单时,页面应该重定向到另一个不会发生的页面。我希望提交时的表单被重定向到另一个页面,但页面保持原样。我正在收到已在表格中输入的详细信息。将页面重定向到另一个页面所需的代码已经存在,但它仍然不起作用。任何成员的任何帮助对我来说都是非常有成果的。感谢您阅读到最后。感谢您提前提出任何建议。

0 投票
0 回答
86 浏览

php - Google API PHP 库 files.get 并行

我想运行 files.list 以获取用户驱动器上的文件列表,然后并行运行 files.get 以下载文件。问题是,当并行操作之前是对 API 的单个请求(files.list 或 files.get)时,Google 客户端会因 /vendor/guzzlehttp/guzzle/src/Handler/CurlFactory 中的“不支持的操作数类型”而中断.php 第 140 行。

我正在使用官方的 Google PHP 客户端Amphp 的 parallelMap()

我的代码如下所示:

似乎第一个请求在 Google 客户端内部做了一些事情,然后并行请求停止工作。如果我只运行 downloadFiles(),它运行顺利。即使这样也有效:

  1. 为什么 Google 客户端库在并行运行时会中断?
  2. 在 PHP+Laravel 上并行运行 Drive 下载的最佳实践是什么?我遵循 Google 的最佳实践,分别处理它们的异常和每个错误代码。

我正在运行 PHP 7.2.11

0 投票
0 回答
43 浏览

php - 将amphp目录放在哪里?

我使用composer下载了amphp,它会自动将它下载到C:\Users\<myusername>它打算使用的地方,还是我需要将它复制到我的本地服务器目录或htdocs

0 投票
2 回答
713 浏览

php - 使用 php 进行异步 http 调用

我有一种情况,我有一个循环,将从文件中读取数据块,将这些数据块发送到休息 api,然后继续直到 EOF,但我希望它在循环内是异步的,所以,我不必等到 API 响应读取下一个块。我一直在研究 Amphp 和 ReactPHP,因为我找不到解决方案,或者我不明白应该如何使用这些库。这是我正在做的伪。

带有 amphp 的示例

在这种情况下,我希望(如果读取块比从 api 获得响应更快)是这样的,不要拿这个文学作品,我试图为你说明它。

读取下一个块

读取下一个块

已处理的块

读取下一个块

已处理的块

已处理的块

0 投票
1 回答
52 浏览

laravel - 从 HttpKernel 获取对 url 的响应,并行化

我正在使用https://github.com/JosephSilber/page-cache来缓存页面。为了事先准备好页面(大约 100,000 个),我曾经通过 GuzzleHttp 并行运行 8 个 http 请求。它工作,但很慢,因为开销。

我正在寻找一种Illuminate\Http\Request直接通过应用程序实例处理实例的方法,以防止真正的 http 请求。我注意到,这要快得多。但是,将其与https://github.com/amphp/parallel-functions并行会带来一些问题。

基本代码是这样的:

我尝试了几种变体来处理请求。

1.

在这种情况下,app()返回 的实例Illuminate\Container\Container,而不是 app 的实例。所以它没有方法handle()等等。

2.

这里唯一的区别:变量$app被注入到闭包中。它的值是app()闭包外调用的正确返回值。是应用程序,但是amp失败,因为Application实例中包含的PDO连接不能被序列化。

3.

这在短时间内有效。但是随着应用程序的每次实例化,一个或两个 mysql 连接开始在“睡眠”状态下徘徊。它们只有在脚本结束时才会关闭。重要提示:这与并行化无关。我实际上用顺序循环尝试了同样的方法,并注意到了同样的效果。对我来说,这看起来像是框架中的一个错误,因为人们应该期望 Application 实例在它被销毁时会关闭所有连接。或者我可以手动执行此操作吗?这将是让这件事发挥作用的一种方法。

有任何想法吗?

0 投票
1 回答
638 浏览

multithreading - PHP 放大器/并行。请给我一个关于池并行函数的例子

我一直被困在关于并行运行函数的任务中。我已经从 krakjoe 尝试了这个库多线程pthreads,但我对 ubuntu 中的安装了解有限。我已经尝试过这个amp/parallel和其他amphp。github中的示例运行良好,但我无法按照我的风格实现。

如果在这个 amp/parallel 中有很多例子要做,我不熟悉任何语义。我会很高兴的。

问题

我需要并行运行一个函数,我想从 excel 文件中读取报告,并将所有行批量插入到数据库中,这个过程需要两个小时才能完成。我想以并行方式重复这些功能。如何批量插入和读取文件 Excel 我知道这样做。

请给我一些例子,无论何时来自博客、网站或 github 关于 php7.2 中的并行函数或多线程。

0 投票
0 回答
28 浏览

php - 如何使用 amphp/artax 使用 web 服务?

我是 amphp/artax 的新手

我需要并行使用多个 Web 服务,并将答案加入到一起。

我实现了几个页面的请求:

如何获取调用 Web 服务的示例?

此致

0 投票
1 回答
182 浏览

php - amphp/paralell 中的多原因异常

我正在尝试向某些 Web 服务调用多个请求。我不知道该怎么做。

我收到此错误:

Amp\MultiReasonException
遇到多个错误

我正在尝试这种结构:

我正在使用 Yii 框架运行它。

如果我取消注释Yii::info(...),我会收到错误消息。

因为我需要使用网络服务,所以在“//---- desde aca ----”和“//---- hasta aca ----”之间添加了这个...

它有效,$url_wsdl经过验证,但是当我尝试使用另一个功能时,我再次收到错误..

功能是:

我不知道在哪里寻找示例(我已经在示例文件夹中查看过)我可以调用 php 的本机函数??

此致

0 投票
1 回答
144 浏览

php - 如何在 PHP 中创建可调用的方法/函数

我正在尝试在 PHP 中实现多任务处理。目前我正在评估AMPHP 框架,特别是并行和并行函数。

但我不知道如何创建一个可调用的方法......

这个想法是我将有一个带有一些方法的类,并且我想实例化多个对象,并为每个对象调用相同的方法,但并行或异步。

我在并行函数文件夹中找到了一个 TestCase,但我不知道在做什么

如果我创建多个实例会发生什么?

我认为我首先需要知道的是如何在 PHP 中创建一个可调用的类/方法/函数...。

重要信息:这应该在 Yii 框架的 web 环境中运行(没有 pThreads !)。

有什么建议么?此致

0 投票
1 回答
1235 浏览

php - 如何使用 amphp/parallel 库进行非阻塞进程

我想将 amphp/parallel 库用于非阻塞进程。我有一个简单的下载文件功能,它对远程图像文件进行 curl 命中并将其保存到本地。我正在通过 REST API 使用这种方法。基本上我想要一个应该在后端完成aysnc下载的过程,可以说是,REST API命中了函数,函数说“嘿,好的,我正在后台下载,你可以继续”。意味着非阻塞和 API 得到响应为 ok ,而不是等待。同时,如果下载时出现网络故障,worker 可以在一段时间后重新启动进程。我该如何开始?

我尝试了以下代码,但没有奏效。

//downloadFile是一个简单的下载函数

我收到此错误:

我有类似的要求,如amphp 如何在后台运行进程中工作。