node 叢集與穩定

來源:互聯網
上載者:User

標籤:node   靜態   叢集   情況下   重啟   情況   第一個   發送   標準輸入   

node叢集搭建好之後,還需要考慮一些細節問題。

  • 效能問題
  • 多個背景工作處理序的存活狀態管理
  • 背景工作處理序的平滑重啟
  • 配置或者待用資料的動態重新載入
  • 其它細節
1 進程事件

Node子進程對象除了send()方法和messge事件外,還有如下事件:

  • error: 當子進程無法被複製建立、無法被殺死、無法發送訊息時會觸發改事件。
  • exit:子進程退出時觸發改事件,子進程如果是正常退出,這個事件的第一個參數為退出碼,否則為null。如果進程是通過kill方法被殺死的,會得到第二個參數,它表示殺死進程時
    的訊號。
  • close:在子進程的標準輸入輸出資料流中止時觸發該事件,參數與exit相同。
  • disconnect:在父進程或子進程中調用disconnect()方法時觸發該事件,在調用該方法時將關閉監聽IPC通道。

上述這些事件是在父進程能監聽到的與子進程相關的事件。除了send()外,還能通過kill()方法給子進程發送訊息。kill()方法並不能真正的將通過IPC相連的子進程殺死,它只是給子進程發送
了一個系統訊號。預設情況下,父進程將通過kill()方法給子進程發送一個SIGTERM訊號。它與進程預設的kill()方法類似。

// 子進程child.kill([signal]);// 當前進程process.kill(pid, [signal]);
2 自動重啟

有了父子進程之間的相關事件後,就可以在這些關係之間建立出需要的機機制了。監聽子進程的exit事件來獲知其退出的資訊,並在主進程中加入一些子進程管理的機制,比如重新啟用一個

新的背景工作處理序來繼續服務。

node 叢集與穩定

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.