Week7 总结

用户头像
lggl
关注
发布于: 2020 年 12 月 06 日

由于这周的课程理论偏多,总结起来,如果要画思维导图,则比较耗时,所以先暂时用文字总结,后面有时间再用思维导图进行梳理,这里主要先简单写一下总结心得。



1.要什么需要性能测试?

首先需要明白性能问题是什么,我们写的程序,如果有大数据压力的情况下,或者对未来会发生的一些场景预测会存在性能问题(如用户数量级,并发访问量级等),如导致用户访问页面缓慢,失效无响应等。

那么性能测试能让我们更加了解程序的瓶颈所在,因为如果没有数据的支持下,我们很难评估程序的能否抗得住大压力的读写访问。有了数据,就能清楚了解我们需要的进一步进行优化,包括硬件、操作系统、基础组件、以及我们的应用代码。



2.如何性能测试

性能测试的基础理论,并发、吞吐量、平均响应时间等。然后需要掌握一些常用性能测试的工具用法。往往性能测试的会针对一些整个系统全链路的压测,以及采用分层的思想进行压测。

任何性能测试都需要有个前提背景,在什么环境下(硬件环境、软件环境、系统版本等),预测期望值,实际估值。



3.性能优化

性能优化,则和性能测试直接相关,比如要优化什么,往往根据测的结果进行优化,再结合实际业务期望值,才能进行有意义的优化。不然就是瞎搞优化。比如在测试100并发用户访问网页响应时间为200ms,这个值就已经能满足业务需求,根本不需要优化。



4.CAS

各种锁,每个编程语言都会有各自的实现一套锁机制,在面临复杂的多进程多线程情况下,可以通过锁来保证业务数据的安全性。多的就不用说了,实践一遍就知道各种锁的用法和优缺点。



5.异步编程

提高应用吞吐量的普遍优化方法,采用异步编程,事件通知机制,实现并发的有效工具。akka是一种。不过没有实际用过,后面可以找个时间,具体用一下。

用户头像

lggl

关注

还未添加个人签名 2018.08.28 加入

还未添加个人简介

评论

发布
暂无评论
Week7总结