Webservice 是經過什麼協議實現的進程之間通訊是怎麼搞的

1、Webservice 是經過什麼協議實現的以及進程之間通訊的協議是什麼

WebService究竟是什麼?數據庫

http://blog.csdn.net/wooshn/article/details/8069087 spa

2、進程之間通訊的方式

爲何要進行進程間的通信(IPC (Inter-process communication)).net

數據傳輸:一個進程須要將它的數據發送給另外一個進程,發送的數據量在一個字節到幾M字節之間blog

共享數據:多個進程想要操做共享數據,一個進程對共享數據的修改,別的進程應該馬上看到。隊列

通知事件:一個進程須要向另外一個或一組進程發送消息,通知它(它們)發生了某種事件(如進程終止時要通知父進程)。進程

資源共享:多個進程之間共享一樣的資源。爲了做到這一點,須要內核提供鎖和同步機制。事件

進程控制:有些進程但願徹底控制另外一個進程的執行(如Debug進程),此時控制進程但願可以攔截另外一個進程的全部陷入和異常,並可以及時知道它的狀態改變。ip

進程間通訊就是在不一樣進程之間傳播或交換信息,那麼不一樣進程之間存在着什麼雙方均可以訪問的介質呢?內存

進程的用戶空間是互相獨立的,通常而言是不能互相訪問的,惟一的例外是共享內存區。可是,系統空間倒是「公共場所」,因此內核顯然能夠提供這樣的條件。除此之外,那就是雙方均可以訪問的外設了。在這個意義上,兩個進程固然也能夠經過磁盤上的普通文件交換信息,或者經過「註冊表」或其它數據庫中的某些表項和記錄交換信息。廣義上這也是進程間通訊的手段,可是通常都不把這算做「進程間通訊」。由於那些通訊手段的效率過低了,而人們對進程間通訊的要求是要有必定的實時性。 資源

進程間通訊主要包括管道, 系統IPC(包括消息隊列,信號量,共享存儲), SOCKET.

管道包括三種:

1)普通管道PIPE, 一般有種限制,一是半雙工,只能單向傳輸;二是隻能在父子進程間使用. 

2)流管道s_pipe: 去除了第一種限制,能夠雙向傳輸. 

3)命名管道:name_pipe, 去除了第二種限制,能夠在許多並不相關的進程之間進行通信.

相關文章
相關標籤/搜索