压力测试
来源:互联网 发布:什么编程语言最简单 编辑:程序博客网 时间:2024/06/10 18:09
教授要求做一个压力测试,看多线程下消息的发送情况,之前做起来的确有点心虚,服务端放了太多的逻辑判断和数据库操作,不知道他到底能够承载多少客户端,而且能够同时相应多少条消息。
写了个测试程序,测试了3种情况,先测试多线程下循环发送,也是压力最大的测试,这样情况下,因为服务器接受的时候没有建多线程,因此会卡死一段时间,10几秒内数据库中插了2700多条记录,不过服务器列表中只保存了10几条记录。
然后测试同时开50个线程,只发一条记录,相同于客户端同时向服务器发50条消息,可以服务器只响应到16条左右,这点另我很意外,每个结构体的大小为560多个字节,这点我也有点搞不懂,毕竟对网络编程这方面也是初窥门径,期待高手的指点迷津。
然后进行了单线程的测试,客户端循环像服务器发消息,间隔时间设的是20ms,在公司找了4台机子同时运行,没有发现数据丢失和别的神呢异常,不出意外的是服务器依然是卡死的,间隔时间设成50ms应该会好一点,不过关键还是应该建立多线程,其实医院的实际情况下,压力比这应该还要小,不用多线程应该也可以应付,不过考虑到卡机的现象,还是应该加入多线程。
这部分基本算通过了,不过因为列表部分不是很精确,还需要进一步完善。而且还有下面的几个工作,时间还是比较紧,抓紧吧
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- 压力测试
- iPhone ebook 中翻页效果(牛人)的实现
- VC++基于微软语音引擎开发语音识别总结
- 程序员的毅力
- Flex4 模拟背景图片切换
- ORA-31623 When Submitting a Datapump Job [ID 308388.1]
- 压力测试
- Linux中rename命令的用法
- 利用反射技术动态获取任意Java类实例的属性值
- 字长
- 到了考试月的无奈
- 如何使用 Linq to Entity 实现 in 操作
- what is devpts
- u-boot-1.3.4移植到mini2440+128M nand boot(2)
- Configuring a Serial Port