進程間通信(IPC,Inter-Process Communication)
進程是計算機分配資源的最小單位
RPC 和 rest 區別:
REST是一種設計風格。
RPC的思想是把本地函數映射到API,也就是說一個API對應的是一個function,我本地有一個getAllUsers,遠程也能通過某種約定的協議來調用這個getAllUsers。至於這個協議是Socket、是HTTP還是別的什麼都無關緊要;
RPC中的主體都是動作,表示我要做什麼。
而REST,它的URL主體是資源。而且也僅支持HTTP協議,規定了使用HTTP Method表達本次要做的動作,類型一般也不超過那四五種。這些動作表達了對資源僅有的幾種轉化方式。
RPC的根本問題是耦合。RPC客戶端以多種方式與服務實現緊密耦合,並且很難在不中斷客戶端的情況下更改服務實現。RPC更偏向內部調用,REST更偏向外部調用。
SOA: 理論模型,也是一個設計思想。服務治理中心 將多個系統集中化消息規範進行統一治理 (ESB爲典型事例,阿里的dubbo)
soa 對服務治理拆分的不夠徹底,跟服務上可能有依賴,當一個服務節點掛調,可能影響整個系統運行。
有序 、複用、高效
將各系統無序的數據變成有序的,系統的服務化、 業務的服務化
這裏說一句微服務和SOA的區別,微服務架構和SOA理念正好相反
微服務架構以組件化爲理念將高耦合進行解藕