作者回复: 嗯,你说的很对。
我竟没有啥子可以补充的。
作者回复: 这就是之前的一个文中所写的。
事务的定义取决于测试的目的:
1. 如果你想测试的是单个接口的容量,那显然,一个接口一个事务,并且都是直接连接口就行了。但是要注意的是,其实在测试兑奖接口的时候,后面的几个接口也都会调到,所以这时会把后面几个接口都压了。这时,如果你的目标只是测试兑奖接口本身,并不想测试关联的其他接口,那就mock掉。
2. 如果你要测试的兑奖的这个流程,那显然是从兑奖接口进去。事务定义到兑奖整个流程上。
作者回复: 使用什么工具取决于什么样的工具最适合应用场景。如果是HTTP协议的,那有很多工具都适用。没有谁比谁更好,只有哪个应用在团队中成本最低。
关于压力工具我从来不纠结,就算自己写一个多线程工具也无所谓,只要能让我看到TPS、响应时间、错误率之类的数据就可以。
从技术上说,不管是公网IP、内网IP,对性能测试的过程来说都无所谓,只要路由可达就可以测试。
只是用公网IP要考虑出口流量,以及架构上的各种网络设备,像WAF、SLB、广域网设备等。并且如果是按流量付费的带宽,还要先计算下费用。 还有客户端如果也在公网上,还要考虑客户端的出口带宽。 但是这些都和性能测试技术本身无关。
作者回复: 要是你职位高,可以强势一点沟通。如果从历史数据中算到并发度并不高。(就是拿当前的用户和业务的TPS做比对就可以知道并发度。)
那完全可以算得出来。
现在不懂技术的人说的并发,大部分是说的在线。之前我算过一个要支持1000万基础用户(也就是数据库里总共只有1000万用户),再计算到日活,再计算到时、分、秒,才需要200TPS。
作者回复: 要是完全能在工作中落地的话,那就不是大牛了,是猛牛。哈。
作者回复: 每个浏览器都有开发者工具。
作者回复: 无所谓用什么样的工具,只要看到想看的数据即可。
作者回复: 嗯,说滴对。
作者回复: 喜欢什么用什么。只要压力能发起来就行了。
作者回复: 在线下准备不出来足够的硬件设备。业务又很重要的。只能在线上做了。
线上肯定会控制容量,不影响正常用户。
作者回复: jmeter就可以呀。
作者回复: 这要问工具的设计者了。在我看来他是BIO、AIO都无所谓,只要实现压力就好了。
作者回复: 多谢支持。希望理念传递给更多人。
作者回复: 是的,适合的工具就是最好的。
作者回复: 等你看到场景设计的那篇的时候,估计你就不会有这个疑问了。
作者回复: 理解的非常对呀。
作者回复: 这有很多呀。像jvisualvm/jmc/arthus/btrace......。开源免费。
作者回复: 这个就比较麻烦了。除了写性能测试工具之外,性能测试基本上没有自己的书籍。
但是写工具也不算是完整的性能测试。
如果你要看的话,我建议你这样开。
OS、DB、存储、语言(java、go、python)、架构等各找一本性能相关的书看。比如说linux性能优化、java性能优化、mysql性能优化,这类的书。
作者回复: 你说的是什么语言?到了这样的级别就要看语言和架构了。
作者回复: 更新的频率取决于极客编辑小姑娘的心情。哈哈。
正常的安排是一三五更新。