实现一个接收和处理客户端请求的服务器(cassandra 作为后端),Python 还是 C++?

Posted

技术标签:

【中文标题】实现一个接收和处理客户端请求的服务器(cassandra 作为后端),Python 还是 C++?【英文标题】:Implement a server that receives and processes client request(cassandra as backend), Python or C++? 【发布时间】:2010-04-06 05:47:08 【问题描述】:

我打算构建一个以cassandra为存储后端的倒排索引搜索系统。但是我需要一些指导来构建一个高效的搜索守护程序服务器。我知道一个用 Python 编写的名为 tornado 的网络服务器,我的问题是:

    Python 是开发此类应用程序的好选择吗? nginx(或 Sphinx)是我可以深入了解其架构以实现高效服务器的好例子吗? 我还应该学习其他什么方法?

谢谢~

【问题讨论】:

【参考方案1】:

Twisted framework 是开发后端服务器的良好起点。它快速且可扩展。

【讨论】:

【参考方案2】:

Python 不太可能让您编写最高效的服务器。然而,它可能只是足够快,因为对于大多数应用程序来说它

因此,您可以采取的一种方法是从 Python 开始。对于原型设计来说,它是一门很棒的语言,在你甚至不确定要采用哪种架构的阶段,它比 C++ 要好得多。完成项目后,您可以查看 Python 是否足够高效。如果不是,并且没有简单的方法让它更快(例如重写一个占用 C 中大部分工作的小例程),您可以使用 Python 原型作为基础在 C++ 中重写它。

【讨论】:

【参考方案3】:

对于搜索,http://github.com/tjake/Lucandra 可能是有趣的现有技术。

【讨论】:

以上是关于实现一个接收和处理客户端请求的服务器(cassandra 作为后端),Python 还是 C++?的主要内容,如果未能解决你的问题,请参考以下文章

golang实现get和post请求的服务端和客户端

002-一般处理程序(HttpHandler)

HTTP状态码

http状态码

Redis实现之服务器

NIO 和BIO