一直以來對php的即時通訊都很好奇,其實是不知道應該怎麼來實作,後來了解到了swoole和workerman這兩個神器,他們都可以實作即時通信的功能,其中swoole是C語言編寫的php擴充,其配置起來比較麻煩,但是性能還是很強悍的這些可以自己去官網上面搜,還有一個就是workerman架構啦!它确實是使用php寫出來的架構而且使用的就是php socket中的東西。如果是将項目項目布置到linux伺服器的話我覺的兩者都可以,但是如果你是使用的windows伺服器的話那就面臨着一個困難———swoole不支援windows環境,當然如果非要布置的話使用docker應該也可以,但是總覺的有些不倫不類的感覺(不是說docker不倫不類,docker确實強悍),那麼我們怎麼辦呢??這個時候就凸顯出workerman的優勢啦!它可以在windows系統運作下載下傳這個聊天室項目
workerman聊天室 http://www.workerman.net/workerman-chat
點選 start_for_win.bat 會出現一個黑視窗 在浏覽器中浏覽http://127.0.0.1:55151就可以看到聊天室頁面啦!但是當我們關閉黑視窗的時候會發現在浏覽端口55151時什麼都沒有啦!當項目真正部署是我想這樣是很不安全的,是以我們要找到一種方法來實作守護程序,将這個 bat檔案當做windows服務來運作,下面我找到了nssm,用nssm來将bat轉化為服務
先下載下傳 nssm軟體,這個在百度上直接搜尋一個就可以啦!下載下傳下來之後是一個壓縮包解壓找到對應你自己系統的32/64位nssm(在cmd視窗中找到該路徑下的nssm)執行 nssm install <服務名> 例如: nssm install workerman
然後回車出現nssm的配置界面 在界面中填寫你的 項目中的bat檔案位址,例如
點選 install service ,如圖
當顯示successfully的時候說明服務已經安裝成功啦!我們可以點選我的電腦-》管理-》服務 檢視一下是不是存在這個服務,如圖我的已經可以看到服務名為workerman的服務啦!
但是這個時候浏覽 http://127.0.0.1:55151還是不能正常浏覽,因為我們還沒有将服務打開,接下來點選左上角的啟動按鈕,當服務啟動後在浏覽http://127.0.0.1:55151就可以正常浏覽啦!再也沒有煩人的黑視窗啦!!大功告成!!!!