JavaScript で非同期処理を実現する Promise という機構はご存知でしょうか? 今回は「Promise の考え方を PHP で実装した Guzzle Promise」を使って、大量の API コールを高速化したときの経験についてお話してみたいと思います。 Talked: - …
![Guzzle Promiseを使った
非同期処理によるAPIコールの高速化](https://cdn-ak-scissors.b.st-hatena.com/image/square/8176e20c7ed68ce66dd21c552108648c33f9dc02/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Fd7ee70a07079447f9bc153d04a38d00a%2Fslide_0.jpg%3F6326851)
JavaScript で非同期処理を実現する Promise という機構はご存知でしょうか? 今回は「Promise の考え方を PHP で実装した Guzzle Promise」を使って、大量の API コールを高速化したときの経験についてお話してみたいと思います。 Talked: - …
Guzzle 5 で Promise による非同期通信がサポートされるようになった。Composer によるセットアップは次のとおり。 composer require guzzlehttp/guzzle:* POST リクエストを送信してみよう。 require 'vendor/autoload.php'; $client = new GuzzleHttp\Client(); $client ->post( 'http://httpbin.org/post', [ 'future' => true, 'body' => 'foo=bar' ] ) ->then(function ($response) { var_dump( $response->getStatusCode(), $response->getHeader('Content-Type'), (string) $respon
PHPで最近注目のHTTPクライアントライブラリにGuzzleがあります。日本での知名度はまだまだという印象ですが、かなり高機能かつ真面目にメンテナンスされている印象で、今後のデファクトスタンダードになりうるライブラリと言えるでしょう。 本稿ではこのGuzzleを使ってWebサーバから並行にダウンロードする方法を紹介します。Webブラウザのように同時に複数コネクションを管理しながらKeep-Aliveでコネクションを使い回しますので、下手なコードで実現するより接続先Webサーバにも優しいはずです。 Guzzleの特徴 まずは、Guzzleについて僕が特徴的だと思う点を紹介します。 パッと見でわかりやすいインターフェース cURLは必須ではないがデフォルトでcURLを使う cURLの無い環境がありうるので、cURL無しでも動くのは嬉しい cURLのわかりにくいインターフェースを隠してくれるの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く