九 多程序伺服器端

2021-08-20 08:51:56 字數 581 閱讀 4380

併發伺服器端的實現方法

併發伺服器可同時向發起請求的客戶端提供服務,以提高平均滿意度和有效利用cpu

。實現模型和方法:

多程序伺服器 ,多路復用伺服器 ,多執行緒伺服器。

理解程序

程序:占用記憶體空間的的正在執行的程式。

如果父程序終止,處於殭屍狀態的子程序將同時銷毀。

父程序往往與子程序一樣繁忙,因此不能只呼叫waitpid

函式以等待子程序終止。

可利用訊號處理技術消滅殭屍程序,子程序終止時將產生sigchld

訊號。基於程序的併發伺服器模型

一:伺服器端(父程序)通過呼叫accept

函式受理連線請求

二:此時獲取的套接字檔案描述符建立並傳遞給子程序。

三:子程序利用傳遞來的檔案描述符提供服務

分割tcp

的i/o

程式客戶端的父程序負責接收資料,額外建立的子程序負責傳送資料。

這樣,無論客戶端是否從伺服器端接收完整資料都可以進行傳輸。

多程序伺服器端

多程序服務端 利用訊號 子程序例子 利用子程序結束後向父程序傳送sigchld訊號來 子程序 include 子程序結束訊號 void read childproc int signo int main int argc,char ar else else 主程序 return0 通過多個程序來實現...

多程序伺服器

基於tcp實現多程序伺服器 伺服器端 1 建立套接字 include include int socket int domain,int type,int protocol domain 乙個位址描述。目前僅支援af inet格式,也就是說arpa internet位址格式。type 指定socke...

多程序伺服器

注意 包含了 wrap.c 和 wrap.h 檔案在上篇部落格中 server.c include include include in.h include include include include include include wrap.h define maxline 8192 defi...