UNIX/Linux 下socket 编程处理客户端的请求,使用进程还是线程?
socket 编程处理客户端的请求,使用进程还是线程?
------解决方案--------------------服务器起来的时候,肯定是有一个进程和一个线程的, 如果简单的程序, IO处理和逻辑处理,直接用主线程就行了,如果想增加承载人数, 需要把IO处理独立出来,变成一个或者多个IO线程 + 一个逻辑线程的模式
------解决方案--------------------
看具体需求吧!
可能是开进程处理, 也可以开线程处理!
------解决方案--------------------开进程与开线程对逻辑处理没什么影响,结构都是一样的。只是逻辑处理的包来自哪里,个人更倾向于进程
------解决方案--------------------大多数应该是进程吧,线程主要用来数据共享的,但是每个客户端之间应该不需要联系的吧。最重要的是,unix没有真正的线程的,只是变种的进程而已,所以开销都差不多大。
------解决方案--------------------用线程还是进程要看具体服务吧,另外据说服务较多的话用线程池或者进程池效率能提高不少