【问题标题】:Can SQL server 2008 handle 300 transactions a second?SQL Server 2008 可以每秒处理 300 个事务吗?
【发布时间】:2009-10-22 12:09:35
【问题描述】:

在我当前的项目中,数据库是 SQL 2005,负载约为 35 个事务/秒。客户期待更多业务,并计划每秒进行 300 次交易。目前,即使有良好的基础设施,DB 也存在性能问题。一个典型的事务将至少有一个更新/插入和几个选择。

你们是否曾在 SQL 2005 或 2008 上运行处理超过 300 txn/s 的任何系统上工作过,如果是的话,你们使用了什么样的基础架构,交易的复杂程度如何?请分享你的经验。有人已经建议使用 Teradata,我想知道这是否真的需要。不完全是我的工作,但很好奇 SQL 可以处理多少。

【问题讨论】:

标签: sql-server capacity


【解决方案1】:

如果不进行性能测试就无法判断 - 它在很大程度上取决于您的环境(表中的数据、硬件、正在运行的查询)。

【讨论】:

  • 可能值得指出的是,是的,理论上,SQL Server 2008 每秒可以处理数千个事务。
【解决方案2】:

根据tcp.org,SQL Server 2005 每秒可能获得 1,379 个事务。 Here is a link 到完成它的系统。 (该站点上有基于 SQL Server 的系统,它们的事务要多得多……我链接的那个只是我看到的第一个)。

当然,正如克拉根所说,你是否能取得这些成绩,这里的任何人都无法说。

【讨论】:

【解决方案3】:

高性能 SQL Server 的基础架构需求可能与您当前的结构大不相同。

但是,如果您目前遇到问题,则问题的主要部分很可能在于糟糕的数据库设计和糟糕的查询设计。有很多方法可以编写性能不佳的查询。在高交易系统中,你买不起任何一个。没有 select *,没有游标,没有相关的子查询,没有性能不佳的函数,没有不可 sargeable 和 on 的 where 子句。

我建议的第一件事是给自己买几本关于 SQl Server 性能调优的书并阅读它们。然后您将知道您的系统问题可能出在哪里以及如何实际确定问题。

一篇有趣的文章: http://sqlblog.com/blogs/paul_nielsen/archive/2007/12/12/10-lessons-from-35k-tps.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-28
    • 1970-01-01
    相关资源
    最近更新 更多