`
aric_chen
  • 浏览: 8956 次
文章分类
社区版块
存档分类
最新评论

性能优化(开篇)

 
阅读更多


性能一直是软件行业中一个含糊的名词,因为很难用特定的标准来衡量。

今天我们就来聊聊软件的性能优化,在某些方面我会提出我目前的解决方案,大家有兴趣可以深入研究一下。

软件的性能指标
软件的性能指标一般包含两个方面:吞吐量并发数

1. 吞吐量指的是单位时间内传输的数据量,吞吐量反应系统的处理能力;
2. 并发数指的是单位时间内能够同时处理的事务数;
名词太专业,看不懂有没有?(读者一定想:装X遭雷劈)

不要着急,我来举个例子大家就明白了。


比如去饭店吃饭,饭店上菜快不快代表饭店的吞吐量,而饭店同时容纳的吃饭人数代表并发数。
如果饭店出现了如下情况,代表饭店需要“性能优化”了(也有可能是老板的营销手段)

提到性能,很多人认为是越NB越好(曾经年少的我也是这么认为的),但其实关于性能,很多人存在误区!

误区一:性能越X(快/大/强)越好;
我们来深度剖析饭店的例子:
上菜的速度并不是越快越好。如果要提升饭店的上菜速度,就要提升厨师人数和厨房面积,成本就会相应提升。
曾经我去饭馆吃碗面,当时只有我一个客人,4个厨师外加老板,同时围着我,征求我面好不好吃??!@

所以吞吐量不是越大越好。

饭店在开张之前,老板会根据饭店的定位,选取合适的地理位置和饭店面积!
我想转行卖三及第,地址初步准备包下海岸城五楼,大家觉得怎么样?给个建议,在线等,挺急的@%¥&……
一定要根据客户的需求,定好软件的并发数。

误区二:性能优化在软件做完后,一次性搞定的
开饭店是一个长期的过程,没有“完成”这个状态,而软件更是如此。
如果饭店的厨师不够,老板一定会根据具体的需求实时增加人手;
吃三及第的人太多,挤爆了海岸城五楼,我也会机智的包下四层开分店的。
所以软件的性能优化是一个长期的,循序渐进的过程,而不是一个Task,完成即可。

误区三:性能优化一开始就要考虑
饭店没开之前,如果考虑客人太多,或者场地不够,势必增加无谓的烦恼,也会增加你的成本。我在思考,如果我的三及第在海岸城五楼开张了,客人太多,五楼容纳不下怎么办??
软件的性能优化,不宜在前期考虑过多,不然会给自己找麻烦,同时使系统过于复杂。

相信读者看完如上之后,对性能以及优化有了一个大概的了解。

由于性能优化涉及的方面太多,我会按照分层的方式多篇讲解,即Web,Server,数据库等。

本篇所讲的性能优化只涉及单台服务器的优化,而不涉及分布式,代理缓存服务器,横向扩展等高级特性。如读者对这些有兴趣,可以回复公众号,大家共同探讨。

下一篇章将讲解Web方面的优化,涉及文件Minify,文件合并,浏览器缓存,动态模块化,CDN文件分发以及如何检验页面的性能等,敬请期待!!

如果您有兴趣,请关注我的微信公众号,谢谢支持!







性能一直是软件行业中一个含糊的名词,因为很难用特定的标准来衡量。

今天我们就来聊聊软件的性能优化,在某些方面我会提出我目前的解决方案,大家有兴趣可以深入研究一下。

软件的性能指标
软件的性能指标一般包含两个方面:吞吐量并发数

1. 吞吐量指的是单位时间内传输的数据量,吞吐量反应系统的处理能力;
2. 并发数指的是单位时间内能够同时处理的事务数;
名词太专业,看不懂有没有?(读者一定想:装X遭雷劈)

不要着急,我来举个例子大家就明白了。

比如去饭店吃饭,饭店上菜快不快代表饭店的吞吐量,而饭店同时容纳的吃饭人数代表并发数。
如果饭店出现了如下情况,代表饭店需要“性能优化”了(也有可能是老板的营销手段)

提到性能,很多人认为是越NB越好(曾经年少的我也是这么认为的),但其实关于性能,很多人存在误区!

误区一:性能越X(快/大/强)越好;
我们来深度剖析饭店的例子:
上菜的速度并不是越快越好。如果要提升饭店的上菜速度,就要提升厨师人数和厨房面积,成本就会相应提升。
曾经我去饭馆吃碗面,当时只有我一个客人,4个厨师外加老板,同时围着我,征求我面好不好吃??!@
所以吞吐量不是越大越好。

饭店在开张之前,老板会根据饭店的定位,选取合适的地理位置和饭店面积!
我想转行卖三及第,地址初步准备包下海岸城五楼,大家觉得怎么样?给个建议,在线等,挺急的@%¥&……
一定要根据客户的需求,定好软件的并发数。

误区二:性能优化在软件做完后,一次性搞定的
开饭店是一个长期的过程,没有“完成”这个状态,而软件更是如此。
如果饭店的厨师不够,老板一定会根据具体的需求实时增加人手;
吃三及第的人太多,挤爆了海岸城五楼,我也会机智的包下四层开分店的。
所以软件的性能优化是一个长期的,循序渐进的过程,而不是一个Task,完成即可。

误区三:性能优化一开始就要考虑
饭店没开之前,如果考虑客人太多,或者场地不够,势必增加无谓的烦恼,也会增加你的成本。我在思考,如果我的三及第在海岸城五楼开张了,客人太多,五楼容纳不下怎么办??
软件的性能优化,不宜在前期考虑过多,不然会给自己找麻烦,同时使系统过于复杂。

相信读者看完如上之后,对性能以及优化有了一个大概的了解。

由于性能优化涉及的方面太多,我会按照分层的方式多篇讲解,即Web,Server,数据库等。

本篇所讲的性能优化只涉及单台服务器的优化,而不涉及分布式,代理缓存服务器,横向扩展等高级特性。如读者对这些有兴趣,可以回复公众号,大家共同探讨。

下一篇章将讲解Web方面的优化,涉及文件Minify,文件合并,浏览器缓存,动态模块化,CDN文件分发以及如何检验页面的性能等,敬请期待!!

如果您有兴趣,请关注我的微信公众号,谢谢支持!







版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    Java 性能优化实战 21 讲2021年

    │ 开篇词 Java 性能优化,是进阶高级架构师的炼金石.mp4 │ 02 理论分析:性能优化有章可循,谈谈常用的切入点.mp4 │ 03 深入剖析:哪些资源,容易成为瓶颈?.mp4 │ 04 工具实践:如何获取代码性能数据?....

    大型网站性能优化实战从前端网络CDN到后端大促的全链路性能优化

    本书共5篇22章,开篇是本书的导读;架构篇是设计思想的提升,包括企业总体架构、应用架构设计、统一应用分层等;框架篇主讲中间件和工具的使用,包括消息队列、缓存、Job、集中式日志、应用监控和微服务等;

    开篇:知识体系与小册格局(1).md

    前端性能优化实践# 知识体系与小册格局 ## 写给读者 提起性能优化,大家现在脑海里第一时间会映射出什么内容呢? 可能是类似[“雅虎军规”](https://developer.yahoo.com/performance/rules.html?guccounter=1)和...

    Java性能调优实战——覆盖80%以上的Java应用调优场景

    开篇词讲怎样才能做好性能调优02讲如何制定性能调优策略04讲慎重使用正则表达式05讲ArrayList还是LinkedList使用不当性能差千倍07讲深入浅出HashMap的设计与优化08讲网络通信优化之IO模型:如何解决高并发下IO瓶颈09...

    Elasticsearch入门+性能优化+环境配置+框架集成+集群进阶+ 最新Elasticsearch实战教程

    ├─001 - Elasticsearch - 开篇.mp4 ├─002 - Elasticsearch - 技术选型.mp4 ├─003 - Elasticsearch - 教学大纲.mp4 ├─004 - Elasticsearch - 入门 - 环境准备.mp4 ├─005 - Elasticsearch

    Android 性能优化(四)Crash治理之路,拦截并处理Exception

    上一篇(Android 性能优化(三)认识异常Exception和错误Error)讲到造成Crash的原因却有很多,比如:运行时异常的空指针、数组越界、未实例化、强制类型、低内存机制等等,有些时候我们在开发测试阶段都没有出现...

    构建高性能ASP.NET站点(上)

    系列文章:构建高性能ASP.NET站点开篇构建高性能ASP.NET站点之一剖析页面的处理过程(前端)构建高性能ASP.NET站点之二优化HTTP请求(前端)构建高性能ASP.NET站点之三细节决定成败构建高性能ASP.NET站点第五章—性能...

    构建高性能ASP.NET站点

    系列文章连接:构建高性能ASP.NET站点开篇构建高性能ASP.NET站点之一剖析页面的处理过程(前端)构建高性能ASP.NET站点之二优化HTTP请求(前端)构建高性能ASP.NET站点之三细节决定成败开篇网站优化需要考虑的方面在用...

    21讲吃透实时流计算2022年

    │ 08 性能调优:如何优化流计算应用?.mp4 │ 09 流数据操作:最基本的流计算功能.mp4 │ 10 时间维度聚合计算:如何在长时间窗口上实时计算聚合值?.mp4 │ 14 状态管理:为什么说流计算是有“状态”的?.mp4 ...

    MSSQL批量插入数据优化详细

    首先说下这里只是做个参照,来理解插入数据库的性能状况,与开篇的需求无半毛钱关系。 mvc接口代码如下: public bool Add(CustomerFeedbackEntity m) { using (var conn=Connection) { string sql = @INSERT ...

    微信小程序 辩论倒计时小程序源码 作业设计demo 计算机专业参考

    **微信小程序:辩论倒计时** 辩论倒计时小程序是为辩论活动量身定制的时间管理工具,它允许用户...- **稳定性**:优化性能,确保在长时间的辩论活动中稳定运行。 辩论倒计时小程序是辩论赛中不可或缺的辅助工具,它帮

    《iOS6开发指南》精彩书摘

    iOS中开发性能优化方法,其中包括:内存优化、资源文件优化、延迟加载、持久化优化、使用可重用对象、多线程以及程序编译参数等方面介绍性能优化。 第18章“管理好你的程序代码——代码版本控制”。学习如何使用Git...

    深入理解java虚拟机第二版源码-programmer_training_strategy:程序员练级攻略(2018)内提到的书籍、手册等

    深入理解java虚拟机 第二版 源码 程序员练级攻略(2018)内推荐书籍和手册 开篇词 入门篇 零基础启蒙 正式入门 修养篇 程序员修养 ...前端性能优化和框架(前端方向) UI/UX 设计(前端方向) 技术资源集散地

    go-pprof笔记

    开篇 编写好了golang服务之后,接着要开始关注服务的CPU,内存使用情况。golang提供了性能剖析工具,记录一些自己搜集到的信息,写下一些实践的情况。在golang中内置了pprof工具,专门来做golang语言的优化。 PProf ...

    博客:写文章的地方

    性能优化与上线 弹性搜索 项目 语言 文章 总结 Java :hot_beverage: Java 项目 语言 文章 分析Guava中优秀的代码段 Java Guava_Magic_Code_1 Guava_Magic_Code_2 :spouting_whale: 码头工人 项目 语言 文章 初识...

    ProgrammersLevelUp:用20年时间跟着皓叔刷“程序员练级攻略”

    前端性能优化和框架(前端方向) UI/UX 设计(前端方向) 技术资源集散地 皓叔谈攻略的正确打开方式 到这里,我估计《程序员练级攻略》系列文章你都已经了解个大概了,不知道此时此刻你有什么样的感受?这份攻略其实...

    网上购物商城毕业论文(华南农业大学初稿)

    前开篇如下: 1 引言 1.1 选题背景 近年来,随着Internet的迅速发展,人们对网联网的认识逐渐增强,网上购物系统已经走进了人们的日常生活。对于企业来说,这种新型的商业运营模式给他们的发展创造了良好的机遇。...

Global site tag (gtag.js) - Google Analytics