首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >高性能High服务器设计

高性能High服务器设计
EN

Stack Overflow用户
提问于 2013-07-19 14:06:53
回答 1查看 707关注 0票数 2

问题的简单形式:

为了向大量客户端提供大量静态内容,是否最好让http服务器服务于文件系统中的内容,其中每个主键都存储在一个文件中(Inodes!)或者实现一个“真实”的数据库?“更好”指的是性能、机器负载、内存使用等方面。

问题的更详细版本:

我们目前正在重新设计具有以下要求的数据库服务器:

  • SSL
  • 数以千计的客户(1-30.000)
  • 客户端请求在2分钟内被序列化,每次一个,大约100个条目。
  • 客户端将在超时后断开连接。
  • 一些客户端稍后将重新连接并执行更多(1-10)请求。
  • 数据库将包含> 100.000主键。
  • 数据库内容是静态的(或多或少)
  • 请求大小通常小于80个字节
  • 响应大小通常小于30个字节

虽然我们的协议目前不是http,但我考虑使用Apache或另一个http服务器,并修改我们的协议以适应http。但是接下来的问题是是使用“真实”数据库(例如couchdb),还是仅仅使用文件系统作为数据库,因为超过95%的请求将是对静态内容的请求。性能和缩放是这里的一个问题。例如,如果1.000个客户端将在上午8时整接通电源,那么这1.000台机器可能会同时连接并执行各自的100个请求。都在两分钟内,都有建立ssl连接的开销。这可能会使任何服务器都达到极限。

有什么暗示吗?

EN

回答 1

Stack Overflow用户

发布于 2013-07-20 06:34:02

  • 由于主键后面的数据很小(一些字节),文件系统将不是一个有效的解决方案,请考虑使用一些缓存系统作为Redis作为数据库。
  • Nginx作为webserver似乎比apache更适合您的需要(小请求和很多人)
  • 如果你所有的数据(~100 B*100 k~10 If ?)适应内存,没有大的计算,你不应该遇到困难的性能问题。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17748162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档