如何解决最好编写单线程事件服务器等
| 什么时候编写单线程事件或多线程或fork服务器更好?哪种方法更适合: 提供静态信息的Web服务器 提供静态信息和对其他http服务器的代理请求的Web服务器 以前的服务器加上此服务器在C语言中进行了一些逻辑处理,而无需使用硬盘或网络 以前的加号对MysqL提出了一些要求? 例如,语言是C / C ++。我非常想理解这个问题。谢谢。解决方法
鉴于现代处理器是多核的,因此您应该始终在某些时候假设它是多线程的前提下编写代码(在任何可能和不可能的地方都采用可重入的代码,请使用易于插入实现必要的锁定)。
如果每秒查询(qps)的数量很少,那么您也许可以摆脱单线程事件服务器的困扰。我仍然建议以允许多线程的方式编写代码,但是,如果您增加了qps并需要处理更多事件,则该代码是可以的。
单线程服务器可以通过将其转换为分支服务器来扩展。但是,分叉服务器会使用更多资源-使用分叉服务器时,所有请求共有的任何内存最终都会在内存中重复,而在一台多线程服务器中仅需要此数据的一个副本。同样,如果多线程服务器利用了真正的并行性,则可以提供较低的延迟,并且实际上可以并行执行单个请求处理的多个部分。
,在joelonsoftware上对单线程与多线程服务器进行了很好的讨论,
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。