`
seanwon
  • 浏览: 66094 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在高多并发应用内存和硬盘之争

阅读更多

“内存是新的硬盘,硬盘是新的磁带”。实时Web应用不断涌现,达到海量规模的系统越来越多,这种后浪推前浪的发展模式对软硬件又有何影响?以RAM和网络为中心的硬件结构的优势,可以用这种硬件建立比磁盘集群速度更快的RAM集群。

对于数据的随机访问,内存的速度比硬盘高几个数量级(即使是最高端的磁盘存储系统也只是勉强达到1,000次寻道/秒)。其次, 随着数据中心的网络速度提高,访问内存的成本更进一步降低。

对于随机访问,硬盘慢得不可忍受;但如果你把硬盘当成磁带来用,它吞吐连续数据的速率令人震惊;它天生适合用来给以RAM为主的应用做日志。

“如果一个设计只是简单地反映了问题描述,你去实现它就会落入磁盘 I/O的地狱。不管你用Ruby on Rails、Cobol on Cogs、C++还是手写汇编都一样,读写负载照样会害死你。”换言之,应该把随机操作推给RAM,只给硬盘留下顺序操作。

用数据库集群和分区来解决性能和可伸缩性的局限:数据库复制和数据库分区都存在相同的基本问题,它们都依赖于文件系统/硬盘 的性能,建立数据库集群也非常复杂。方案是转向In-Memory Data Grid(IMDG),用Hibernate二级缓存或者GigaSpaces Spring DAO之类的技术作支撑,将持久化作为服务(Persistence as a Service)提供给应用程序。

IMDG相比直接RDBMS访问的优势列举如下:

  • 位于内存中,速度和并发能力都比文件系统优越得多
  • 数据可通过引用访问
  • 直接对内存中的对象执行数据操作
  • 减少数据的争用
  • 并行的聚合查询
  • 进程内(In-process)的局部缓存
  • 免除了对象-关系映射(ORM)
分享到:
评论

相关推荐

    Linux系统下Sybase数据库内存配置的优化.pdf

    在Dell服务器Pentium 350MHz Z、128MB内存和SCSI硬盘的环境中,可以通过插入大量数据并执行特定查询来模拟实际工作负载,对比不同内存配置下的性能表现。 在Linux操作系统下,优化Sybase数据库内存配置是一个持续的...

    Oracle9i数据库性能调整与优化.pdf

    首先,数据库性能调整是数据库管理工作中的核心环节,尤其在处理大规模数据和大量并发用户时,性能问题显得尤为突出。提升硬件设备和网络带宽虽然可以暂时缓解性能压力,但成本较高,且无法根本解决所有问题。相比之...

    sql2000提示挂起

    1. **优化系统资源管理**:确保服务器有足够的CPU和内存资源,合理配置SQL Server的最大内存和工作线程数,避免资源争用。 2. **检查和修复配置错误**:审查SQL Server的配置参数,包括最大内存、锁和事务隔离级别...

    操作系统填空、名词解释、简答题试题库.doc

    在多道程序系统中,进程数量和状态会动态变化,就绪进程最多为n-1个,最少为0个。 8. 设备管理:绝对号和相对号用于设备识别。绝对号是系统分配的唯一编号,相对号是用户指定的设备标识。 9. 作业和作业步:作业是...

    第一章操作系统概述PPT文档.pptx

    * 复杂的操作系统:多个应用程序共享计算机操作系统必须管理多个应用程序,和多个用户之间的交互CPU,内存,I/O设备:硬盘,打印机,…操作系统管理所有这些资源,提供标准服务库 * 更复杂的操作系统:多个CPU,多个...

    数据库性能问题定位

    数据库性能问题是许多IT系统面临的常见挑战,特别是在大数据量和高并发环境下。性能问题可能导致系统响应时间变慢,用户体验下降,甚至可能影响业务的正常运行。本文将深入探讨如何有效地定位数据库性能问题,以便...

    操作系统概念.docx

    ### 操作系统概念详解 #### 一、操作系统概述 **操作系统**是一种系统软件,它作为用户与计算机硬件系统之间的桥梁,...随着技术的不断进步,操作系统的设计和实现也在不断发展和完善,以满足日益增长的应用需求。

    性能测试方案模板

    - **并发测试**:检测多用户同时访问系统时是否存在资源争用问题。 - **配置测试**:研究不同软硬件配置对系统性能的影响。 **4.2 测试目标** - **并发数**:系统能够同时处理的用户数量。 - **吞吐率**:系统每秒...

    数据库性能调优.原理与技术

    例如,InnoDB引擎支持行级锁和事务处理,适合高并发事务型应用,而MyISAM则对全文索引支持较好。表的设计,包括字段类型选择、主键定义等,也会影响数据库的性能。在设计时,应尽量减少字段宽度,合理选择数据类型,...

    dba基础面试题

    - CPU利用率过高:可能是因为并发请求过多或者执行计划不佳导致的计算密集型任务。 - 内存不足:可能导致频繁的页面交换,降低性能。 - 硬盘I/O繁忙:数据读写速度慢,尤其是在大量数据读取操作时更为明显。 2. *...

    oracle 10g优化

    在企业级应用环境中,Oracle 数据库的性能直接影响到系统的响应速度和稳定性。Oracle 10g 版本作为一款成熟且广泛应用的企业级数据库管理系统,其性能优化是维护和管理过程中不可或缺的一环。本篇将基于提供的信息,...

Global site tag (gtag.js) - Google Analytics