Swooleで学ぶPHP非同期処理
~並行処理/並列処理の基礎から実践的な開発手法まで一気にわかる

[表紙]Swooleで学ぶPHP非同期処理 ~並行処理/並列処理の基礎から実践的な開発手法まで一気にわかる

紙版発売
電子版発売

B5変形判/272ページ

定価3,740円(本体3,400円+税10%)

ISBN 978-4-297-13358-0

電子版

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

近年,Web開発においてネットワーク経由での入出力を必要とするケースが増え,非同期処理を利用したWebアプリケーションの実装がごく一般的になりつつあります。その一方で,Webサービス開発に使われることの多いPHPは,その言語仕様ゆえに,非同期処理の実装を苦手としてきました。そのため,苦手意識を持っている人もいるでしょう。

そんな人にお勧めなのが非同期処理実装に特化したエンジンである「Swoole」です。Swooleは強力な機能を備えており,制約や考慮すべきことが多く存在しているPHPでも簡単に非同期処理を実装できます。

本書では,並行処理/並列処理の基礎から,Swooleを使って実際に非同期処理に動くアプリケーションを実装するところまで解説します。Swooleの強力さと便利さを体験してみてください。

こんな方におすすめ

  • 初級~中級のPHPユーザー/Webプログラマー

本書のサンプル

本書の一部ページを,PDFで確認することができます。

本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。

サンプル画像1

サンプル画像2

目次

第1章 並行処理/並列処理の概念

  • 1.1 並行処理とは
  • 1.2 並列処理とは
  • 1.3 並行処理/並列処理の注意点

第2章 同期処理/非同期処理の概念

  • 2.1 同期処理とは
  • 2.2 排他制御とは
  • 2.3 非同期処理とは
  • 2.4 第2章のまとめ:PHPで非同期処理を実装するために

第3章 PHPでマルチプロセス/マルチスレッドを実装する

  • 3.1 マルチタスク,マルチプロセスとは
  • 3.2 マルチスレッドとは
  • 3.3 PHPと並列処理の歴史
  • 3.4 PHPでマルチプロセスを実装する
  • 3.5 PHPでマルチスレッドを実装する
  • 3.6 第3章のまとめ

第4章 PHPの拡張機能「Swoole」入門

  • 4.1 イベント駆動型プログラミングとは
  • 4.2 Swooleとは
  • 4.3 Swooleの基本的な使い方
  • 4.4 第4章のまとめ

第5章 Swooleで非同期処理を実装する

  • 5.1 第5章の概要
  • 5.2 ビルトイン(組み込み)の非同期処理を利用する
  • 5.3 コルーチンを利用する
  • 5.4 第5章のまとめ

第6章 SwooleでHTTPサーバー/WebSocketサーバーを構築する

  • 6.1 サーバーとRFC
  • 6.2 HTTPサーバーをコルーチンで実装する
  • 6.3 WebSocketサーバーをコルーチンで実装する
  • 6.4 第6章のまとめ

第7章 Swooleを利用してリアルタイムチャットサービスを作る

  • 7.1 チャットサービスの開発に挑戦
  • 7.2 チャットサービスの要件
  • 7.3 HTTPサーバーを実装する
  • 7.4 開発における注意と準備
  • 7.5 ページを実装する
  • 7.6 WebSocketサーバーを実装する
  • 7.7 第7章のまとめ:Swooleのさらなる活用に向けて

著者プロフィール

めもりー

1994年生まれ。大学の情報系学部でネットワーク・コンピューター工学を専攻するも,実務への関心が高まり,高校時代Webエンジニアとしてアルバイトをしていた会社にそのまま入社。その後,複数のベンチャー企業やスタートアップ企業,GameWithやBASEといった上場企業でソフトウェアエンジニアとしてサービス開発を担う。2020年4月に現職株式会社トラーナにエンジニア正社員1人目として入社。組織・プロダクト・オペレーションプロセスのエンジニアリングを担う。2022年に執行役員CTOに就任。同年4月時点でエンジニア20人ほどの組織を作り上げる。

趣味では,OSS活動に勤しんだり,PHPでJVMを実装したり,PHP FFIを用いてNFCリーダーを実装したりしている。PHPカンファレンスやPHPerKaigiなどで「PHPにおける並列処理と非同期処理入門」や「PHPでJVMを実装してHello Worldを出力するまで」といった内容で登壇。その他に『みんなのPHP』(技術評論社,2019年)や『Software Design』等に寄稿。