Laravel 5 Event Broadcasting(事件廣播)進階篇 – Redis

上一篇:Laravel 5 Event 事件 談到如何使用 Laravel 的 Event(事件),接著我們就要實作比較深入的 Event 功能 – Broadcasting(廣播)

此篇教學會以兩種 Laravel 5.2 所提供的 broadcaster 來當作範例

  1. Redis
  2. Pusher

Redis – 大致上的架構圖

螢幕快照 2016-06-17 下午7.54.13

 

讓我們以使用者發送訊息的角度來看這個架構圖

 

  1. Client(使用者)透過 Ajax 發送訊息給 Laravel 執行 Event (Server 發送訊息) 與新增訊息到 Database。
  2. Laravel 使用 Event 將資料以頻道方式送給 Redis。
  3. 當 Node.js 監聽到新的事件,執行以 Node Express 所搭建的 Socket.IO Server ,並廣播訊息。
  4. Client 收到廣播於前端並添加訊息。

 

安裝環境:

  • Laravel 5.1+
    • Predis  – composer require predis/predis
  • Redis http://redis.io/and follow the instructions to download and install.
  • Node https://nodejs.org/and click install
    • Socket.io – npm install socket.io
    • Express – npm install express
    • Ioredis – npm install ioredis

或著你可以使用 Laravel Homestead , 因為他已經幫你將 Redis and Node 安裝好

 

參考:http://blog.nedex.io/laravel-5-1-broadcasting-events-using-redis-driver-socket-io/

4 thoughts on “Laravel 5 Event Broadcasting(事件廣播)進階篇 – Redis

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *