網路程式設計3

2021-10-19 08:25:14 字數 896 閱讀 2697

短連線

長連線inetaddress類 --> 只表示位址(主機)

inetsocketaddress類 --> 主機名+埠

netoworkinte***ce類

服務端、客戶端、通訊程式設計關注的三件事

提供服務的稱為服務端

連線服務的稱為客戶端

某個類有server、serversocket,那麼這個類往往是給服務端使用的

serversocket只是個容器,容納網路服務用的

某個類只有socket,一般是負責具體的網路讀寫

網路程式設計中一定要關注的點

之前上述三個服務全是單執行緒執行,當呼叫服務的使用者數很大時,就不能充分發揮併發程式設計的高效,因此考慮將三個服務拆分,都分別由單獨的執行緒來執行

進一步把不同的服務部署到不同的伺服器上,而且每個服務是通過伺服器集群的形式來部署,從而形成了分布式的架構

客戶端存根–server stub

服務端存根–client stub

總結rpc究竟在上面協議分層的哪一層?

**問題

序列化問題

服務例項化

測試1測試2smsrpcserver

sendsmsimpl—具體的服務實現類啟動服務端

客戶端測試方法registercenter

測試使用服務註冊中心

修改響應的服務提供者

registerservicewithregcenter

修改rpcserverframe

provider: 暴露服務的服務提供方。

consumer: 呼叫遠端服務的服務消費方。

registry: 服務註冊與發現的註冊中心。

monitor: 統計服務的呼叫次調和呼叫時間的監控中心。

container: 服務執行容器。

網路程式設計總結 3

iphone的cfnetwork程式設計比較艱深。我選擇使用asyncsocket開源庫來開發,下面介紹一些簡單的使用,並給出我寫的乙個簡單的實現模板,只要新增自己的處理 就可以使用了。官方 一.專案新增asyncsocket 2.把asyncsocket庫原始碼加入專案 3.在專案增加cfnetw...

網路程式設計3要素

a ip位址 標示我們計算機在網際網路上的位置 b 埠號 標示我們的計算機中的應用程式的 c 協議 資料的傳輸規則 ip位址的由來,我們都計算機只能識別二進位制資料,那麼ip位址應該 也是乙個二進位制資料,它是乙個32的二進位制資料 比如 00000100 00000110 00000111 000...

C 網路程式設計(3)

重點內容 epolloneshot模式 即使我們使用et模式,乙個socket上的某個事件還是可能被觸發多次。這在併發程式中就會引起乙個問題。比如乙個執行緒 或程序,下同 在讀取完某個socket上的資料後開始處理這些資料,而在資料的處理過程中該socket上又有新資料可讀 epollin再次被觸發...