服务器设计和客户端设计的感悟

来源:互联网 发布:杭州淘宝基地在哪里 编辑:程序博客网 时间:2024/04/29 17:57

服务器程序设计自然都是采用CS模式,而客户端程序设计也可以采用cs模式。考虑一个音频播放功能,Server负责混音各个Client的数据并控制声卡。各个Client和Server属于不同的进程。可采用以下几个模式:

1,Server单开一个进程,不断的select,并对Client处理;

2,Server对每一个Client开启一个线程,每一个线程处理对应Client的数据;

3,Server首先创建一个线程池,有Client到来时,从线程池中取一个线程处理。

第一种方式最简单,缺点不言而喻,都是效率问题;2和3都更加复杂,真正的网络程序设计一般都会用3。然而在播放器设计时,一般都采用的方式1。毕竟,一台终端上不会开启太多的播放器。服务器设计采用了更先进更复杂的模式,更关注效率;客户端设计由于不存在高并发的可能,所有问题都简化了。怪不得服务器开发者工资都高很多。