
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习计算机编程开发技术,而今天我们就通过案例分析来了解一下,软件开发应用性能优化常用方法。
1、应用拆分:逻辑上分析业务主流程,将分支交易进行分离,按业务功能拆分独立的服务;物理上将独立的服务进行分离,独立部署,出现问题后可以快速采取措施进行隔离或扩容。
2、服务或系统交互解耦:如WEB到逻辑服务前加队列层,减少前端放开流量导致后端处理能力跟不上的问题;数据库前加上缓存层,减少数据库的并发压力。
3、减少总线节点服务的依赖:由多节点组成的逻辑交互改为端对端的访问方式,一方面减少影响交易的因素,另一方面减少自身性能问题影响其它应用系统。
4、增加异步访问机制:同步的机制在性能出现问题时,会在短时间花完大连接数,哪怕这个大并发数是正常情况下的10倍。这方面可以直接改异步通讯,也可以引入一些队列工具实现。
5、多层次的缓存:缓存的引入可以多层次,从前端、应用内部、数据库等,比如:前端页面可以利用缓存技术减少页面刷新,这方面可以采用网络工具解决;数据库前可以采用REDIS等;应用自身同样可以用缓存代替数据库的读操作;
6、数据库优化:1)架构上:拆库、在线库与历史库分离、分布式数据库、读写分离、非关系型数据库。比如:1点应用拆分后,则可以按业务拆库;分布式数据库实现数据分片读写等等。2)编码上:SQL优化、索引新增、数据定时清理,这个优化方式快,容易出效果;减少数据库访问次数、减少数据库一次返回的结果集;
7、前端限流、削峰机制,前端系统因为逻辑简单往往可以支持更多请求,但后端系统则不同。所以需要前端系统做交易并发控制,并通过一些前端交互设计减少客户的本验影响;
8、基础设施支持快速扩容:支持弹性扩容(1点系统拆分独立部署很重要,可以减少扩容复杂性)。
9、服务降级:重要服务重点保障,次要服务有损保障,紧急情况下进行降级。
另外,做运维,当然要从运维角度进行一些辅助性工作,比如:
灰度发布
性能监控、业务监控
性能基线的建立
性能分析,用数据分析抓的性能瓶径并督促优化
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。