不同于顺序
服务器, 并发服务器 就要能在一个时间为多个
客户端提供服务。 例如,一个 聊天服务器 可能服务一个特定的客户端数小时 不同于顺序服务器, 并发服务器 就要能在一个时间为多个客户端提供服务。 例如,一个 聊天服务器 可能服务一个特定的客户端数小时 ──在停止为这个客户端服务之前服务器不能等待, 除非
是在等待一下个客户端到来之前的间隙才能等待。── 在停止为这个客户端服务之前服务器不能等待, 除非是在等待一下个客户端到来之前的间隙才能等待。 http:/ /cnsnap.cn.freebsd.org/doc/zh_ CN.GB2312/books/developers- handbook/sockets-concurrent- servers.html你要相信一点,现在服务器的瓶颈主要不在语言,而是磁盘IO,网络IO,业务逻辑等等。
对于几乎所有现代语言,对C10K问题都能比较好的解决。
HTTP/2、异步、协程、RESTful等等技术都在一定程度帮我们处理C10K问题,Python世界也有很多开源库帮我们解决这些问题(换成Java也差不多)。
我公司目前使用的方案有:使用Nginx支持HTTP/2,实现简单负载均衡,使用Python Tornado + RabbitMQ异步处理耗时任务,但应用主体还是基于Python FlaskRESTful。
也许使用Java或Go可以提升性能,但我们看中的是Python的工程型、可读性、可维护性,适合快速迭代开发。
评论列表(0条)