《实验三知识要点 linux服务器模型选择》由会员分享,可在线阅读,更多相关《实验三知识要点 linux服务器模型选择(14页珍藏版)》请在金锄头文库上搜索。
实验三知识要点服务器模型选择1第14章 服务器模型选择l循环服务器l使用循环的方法逐个处理客户端的连接,处理完 一个连接后再处理另一个连接。l并发服务器模型l使用进程池进行客户端请求处理的框架和方法l使用线程池进行客户端请求处理的框架和方法2UDP循环服务器3TCP循环服务器4简单并发服务器的模型5简单UDP并发服务器6简单TCP并发服务器7僵尸进程的 避免8僵尸进程的避免#include #include pid_t wait(int pid_t waitpid( pid_t pid, int *stat_loc, int options);9TCP的高级并发服务器模型l按照accept()分类的多进程和多线程并发 服务器的模型和程序设计框架。10单客户端单进程,统一accept()11单客户端单线程,统一accept()12单客户端单线程,各线程独自accept(), 使用互斥锁l预先分配线程,而不是进程的模型。在线程的 accept()函数中,多个线程都可以使用此函数,处 理客户端的连接。为了防止冲突,使用了线程互斥 锁。在调用函数之前锁定,调用函数accept()之后 ,释放锁。的数据进行。为了防止冲突,各个线程 在调用函数accept()的时候,要调用一个线程互斥 锁。13单客户端单线 程,各线程独 自accept(), 使用互斥锁14