>  기사  >  백엔드 개발  >  PHP는 응답 요청 작성 방법에 관계없이 요청만 보냅니다.

PHP는 응답 요청 작성 방법에 관계없이 요청만 보냅니다.

WBOY
WBOY원래의
2016-10-11 14:23:351286검색

작은 요구 사항이 있습니다. 프로그램에서는 요청만 보내고 다른 사항은 신경 쓰지 않습니다.

답글 내용:

작은 요구 사항이 있습니다. 프로그램에서는 요청만 보내고 다른 사항은 신경 쓰지 않습니다.

cURL 사용
cURL은 일부 매개변수를 지정된 경로에 게시할 수 있습니다. 특정 예를 들어 PHP cURL 함수를 매개변수화할 수 있습니다

file_get_contents('http://baidu.com')를 사용하는 것이 가장 쉽습니다. 더 복잡하다면 컬이나 fsockopen을 사용할 수 있습니다

실제로 원하는 것은 요청을 보낼 때 현재 프로세스가 차단되지 않는 것입니다.

Baidu PHP 비동기 작업으로 시작
일반적인 솔루션에는 Redis 게시/구독, Gearmand 등이 포함됩니다.

제가 만든 것은 더 복잡합니다. PHP는 고속 통신(nodejs에게 수행할 작업을 알려줌)을 위해 소켓과 Nodejs를 사용하고, Nodejs는 RabbitMQ와 통신하는 소비자 역할을 하므로 명확하게 말씀드릴 수 없습니다.

원칙은 현재 PHP가 Http 요청 시작을 담당하지 않고 수행할 작업을 알리고 특수 프로그램이 요청 작업을 수행하도록 하는 역할만 담당한다는 것입니다.

<code>do_something();

// 告知后台执行请求任务, 几乎不占用时间就立马执行 next();
do_backend("send_request", "http://www.baidu.com"); 

// 接着做其它东西
next();</code>

작업자 측(작업 실행 측, PHP 프로그램 또는 다른 언어의 프로그램일 수 있음)

<code>// 异步监听任务
subscribe("send_request", function($url){
    file_get_contents($url); // 或 curl
});</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.