当前,全世界都在进行电力节能,海纳技术咨询通过多年的对国内互联网企业的跟踪调研,发现其实大部分的企业软件系统都在白白的浪费的电能,这种浪费是非常惊人的。
一个好的数据库表设计与坏的数据库表设计,对于同一个项目来说,可能耗费的电能相差几千倍,这绝对不是危言耸听。我们曾经为一个互联网进行过技术咨询,这家公司经常抱怨他们的系统最近很慢,要求我们进行优化。 设计开发一个叫做“好友列表”的模块时总是随着用户的增多而性能低下,请我们帮忙解决,经过研究发现,他们的这个好友表已经存储了2亿条记录。他们对用户id建立了索引,然后每次添加好友都是顺着这个表依次添加。
分析: 系统根据用户id在索引中查询到该id,然后指到对应的磁盘块读取对应的记录。可惜的是记录数的增大和数据存储的无规律特点,系统磁盘指针往往为了读到一个块,进行跳跃式操作,全程下来至少100次io操作。在这个过程中,浪费着无用的电能,也拖累的性能。
解决:经过需求分析,这家公司认为好友的个数不会大于100。我们的新设计开始了,首先,把这个用户id的所有最多100个好友存在一个连续地方,开辟了512*m字节大小作为存储100个好友信息的块大小。这样,在获取好友列表时,只需1次io操作即可全部获得。经过公司的测试部门压力测试验证,性能提高了大约40%,关键的是电能耗费大大降低。
提高后台系统的负载和并发量,优化io存取算法,数据结构等等都是解决之道。当前普遍的情况是,公司能够买大量的服务器作为压力分担,不会或很少考虑对系统进行算法优化。但是别忘了,为网民提供服务和自身盈利之外,为了节约电能,造福全球人类,难道不是一个进行算法优化的合法理由吗?节约电能,预防全球变暖,互联网公司做贡献了时候到了!
http://www.distributed-cluster.com/
分享到:
相关推荐
来自IEEE PES数据库的电能质量扰动数据源,是研究验证电能质量分析方法的重要资源。
基于ssm+mysql的电能计量与客户服务管理系统的实现(本科毕业设计+数据库).zip 基于ssm+mysql的电能计量与客户服务管理系统的实现(本科毕业设计+数据库).zip 基于ssm+mysql的电能计量与客户服务管理系统的实现...
4数据库设计 18 4.1 数据库逻辑结构设计 18 4.2 数据库物理结构设计 19 5 系统的详细设计与实现 21 5.1 系统登录页面 21 5.2 用户列表信息页面 21 5.3 添加用户信息页面 22 5.4 权限管理信息页面 22 5.5 添加角色...
电子式电能表设计毕业论文 .doc
毕业设计:基于SSM的mysql_电能计量与客户服务管理系统vue(源码 + 数据库 + 说明文档) 2 关键技术介绍 6 2.1 VUE简介 6 2.2 MYSQL简介 6 2.3 JAVA语言简介 7 2.4 MyEclipse开发平台 9 2.5 SSM 简介 10 3 需求分析...
电能表的软件设计电能表的软件设计
毕业设计:智能家居系统的移动终端,采用Qt编写,主要实现电能的监控和管理.zip 毕业设计 系统开发 管理系统设计 C++ 数据库 源代码 毕业设计 系统开发 管理系统设计 C++ 数据库 源代码 毕业设计 系统开发 管理...
Q/GDW 10347-2016 电能计量装置通用设计规范 为统一电能计量装置建设,减少设备型式,提高电能计量装置可靠性、准确性和安全性,制定本标准。
用51单片机设计的智能电能表 包括硬件原理图 设计框图
基于LabVIEW的电能质量分析系统设计
IEEE数据库的详细说明,教你快速使用IEEE数据库
针对煤矿井下电能计量不准确、电能浪费严重等问题,开发了一种基于FFT算法的矿井电能计量装置,即以C8051F310单片机为控制核心,设计了高精度交流采样电路,详细分析了FFT算法,采用二表法测量功率原理进行电能计算,通过...
有时电能质量的不正常会造成严重事故,因此电能质量问题对当前开放型经济体系中的影响日益严重,如何保证优良的电能质量成为一项重要的研究课题。电能质量已是电网可持续发展中一个十分重要的问题。 以前的电能...
基于MSP430FE427单相多功能电能表设计
设计主要以三相电能专用计量芯片ATT7022B和8位超低功耗单片机(MCU)AT89S52为核心,应用模块化 设计思想对具体电路进行硬件设计和软件编程。为提高计量精度,设计采用双变比电流测量技术来实现电能表实时 分段计量及...
该压缩文件中包含了五种常见电能质量扰动的matlab仿真程序