1 / 13
文档名称:

【Linux的高级应用编程】网络编程中并发服务器的设计模式.pdf

格式:pdf   页数:13页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

【Linux的高级应用编程】网络编程中并发服务器的设计模式.pdf

上传人:翩仙妙玉 2012/9/15 文件大小:0 KB

下载得到文件列表

【Linux的高级应用编程】网络编程中并发服务器的设计模式.pdf

文档介绍

文档介绍:踏雪无痕
【Linux的高级应用编程】网络编程中并发服务器的设计模式
分类: C++ Linux 2011-11-25 17:00 337人阅读评论(1) 收藏举报
 
 网络编程中并发服务器的设计模式
Sailor_forever sailing_9806@ 转载请注明
http://blog./sailor_8318/archive/2008/12/30/
 
并发服务器有三种设计模式:
多进程:每个进程服务一个客户端。优势是有各自独立的地址空间,可靠性高,但进程调度开销大,无法资源共
享,进程间通信机制复杂。
多线程:每个线程服务一个客户端。优势是开销小,通信机制简单,可共享内存。但共享地址空间,可靠性低,一
个服务器出现问题时可能导致系统崩溃,同时全局共享可能带来竞争,共享资源需要互斥,对编程要求高。
单进程:占有的进程及线程资源少,通信机制简单。但监听服务器及各个子服务器揉和在一起,程序结构复杂不清
晰,编程麻烦。
 
 
1 // File: mult-pr-tcp-
2
3 /*
4
5 多进程并发服务器。该程序等候客户连接,一旦连接则显示客户的地址,
6
7 接着接收该客户的名字并显示。然后接收来自该客户的信息(字符串)。
8 每当收到一个字符串,则显示该字符串,并将字符串反转,再将反转的字
9
10 符发回客户。之后,继续等待接收该客户的信息直至该客户关闭连接。服
11
12 务器具有同时处理多客户的能力。
13
14 */
15
16 #include <>          /* These are the usual header files */
17
18 #include <>          /* for bzero() */
19
20 #include <>         /* for close() */
21 #include <sys/>
22
23 #include <sys/>
24
25 #include </>
26
#include <arpa/>
 
#define PORT 1234   /* Port that will be opened */
#define BACKLOG 2   /* Number of allowed connections */
#define MAXDATASIZE 1000 
void process_cli(int connectfd, struct sockaddr_in client);
 
1
main()
{
        int listenfd, connectfd; /* socket descriptors */
        pid_t pid;
        struct sockaddr_in server; /* server's address information */
        struct sockaddr_in client; /* client's address information */
        int sin_size;
 
        /* Create TCP socket  */
        if ((listenfd = socket(, SOCK_STREAM, 0)) == -1) {
           /* handle exception */
           perror("Creating socket failed.");
           exit(1);
           }
 
        int opt = SO_REUSEADDR;
        setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &opt,
sizeof(opt));
 
        bzero(&server,sizeof(server));
        =;
        =htons(PORT);
&#1

最近更新

2024年湖南怀化住房公积金管理中心事业单位招.. 58页

2024年湖南文联所属事业单位招聘2人历年高频难.. 59页

2024年湖南株洲市食品药品监督管理局下属事业.. 60页

2024年湖南永州市市直医疗卫生事业单位招聘历.. 89页

2024年湖南永州零陵区事业单位招聘工作人员11.. 89页

2024年湖南环境生物职业技术学院单招职业适应.. 56页

2024年湖南益阳文联事业单位招聘文学编辑1人历.. 60页

2024年湖南省娄底市工商行政管理局所属事业单.. 90页

2024年湖南省湘潭市直事业单位招聘98人历年高.. 279页

加纳医疗器械法规概述 26页

2024年湖南省长沙市交通建设质量安全监督管理.. 58页

2024年湖南邵阳工商行政管理系统事业单位招聘.. 89页

2024年湖南郴州市市直事业单位选聘20人历年高.. 58页

2024年湖南郴州汝城县事业单位招聘124人历年高.. 89页

2024年湖南长沙市国土资源局所属事业单位招聘.. 279页

2024年湖南长沙市技术评估论证中心事业单位招.. 279页

2024年湖南长沙市规划监察执法支队招聘驾驶员.. 88页

2024年湖南长沙芙蓉区韭菜园街道办事处招聘5人.. 58页

2024年滨州高新技术产业开发区公开招聘事业单.. 87页

2024年焦作工贸职业学院单招职业适应性测试题.. 55页

加强医学人文素质教育的学生社会实践与实训 30页

2024年甘肃省定西市事业单位招聘68人历年高频.. 271页

2024年甘肃省酒泉市肃州区税务局大厅窗口招聘.. 278页

单位空调维修合同 2页

码头安全生产培训 27页

公租房承诺书 2页

苗木种植反季节施工方案 6页

并联式混合动力汽车的能量管理系统研究-工程硕.. 75页

110kv变电站保护配置及选型 48页

英语人教版八年级下册Hansel and Gretel 27页