對於進程模式,有兩種可選的消息發出方案:
1.每個Service進程都獨立加載一份dispatcher
2.所有Service進程不加載dispachter,只內核加載一份dispatcher,消息發出時,總是需要通過內核
方案一優點:
1.高效,因爲少了從Service進程到內核進程的拷貝
方案一缺點:
1.多佔用了內存,因爲每個Service進程都得加載一份dispatcher
2.出口多不統一,每個Service的出口都是獨立的
方案二優點:
1.出口統一,統一由內核發出,Service進程與網絡無關
方案二缺點:
1.性能稍低,因爲消息需要從Service進程拷貝到內核進程後,才能通過dispatcher發出
個人傾向:
選擇方案二