关于通讯后台程序设计的一点想法

10-01-06 liujian1979
    

最近要对原来做的移动的项目进行升级工作。想对程序做最大的一个改进是:“对象统一,允许冗余”的思想。

因为在旧程序中用jconsole查看,感觉有大量new对象操作存在。所以想在用Tomcat的servlet接受数据后经过鉴权和校验后生成的这个对象会始终存在直道数据下发成功并记录日志后才抛弃。

这样建立对象好处,感觉有点像spring的依赖注射。旧程序都是A(String b,int c,String d)这样调用,现在改成A(Obj obj)把参数都封装到对象中便于解耦和维护。

还有就是不用建立多个对象满足不同业务逻辑操作,一个对象搞定,减少new对象几率。

不知道我这样描述说清楚了没有,请banq老师指点一二。谢谢!

还有请问除了java自带的运行时监测工具jconsole还有什么更好用的工具吗?最好能在压力测试时能监测和找性能瓶颈的,因为很多问题往往到了一定压力时候才体现出来。

    

banq
2010-01-06 17:50

基本明白,提高对象的重用性,控制高并发下资源消耗,flyweight模式。必要时引入缓存或POOL

可以使用jmeter + jprofiler组合进行性能测试。

liujian1979
2010-01-13 17:59

这几天根据banq老师的建议我用了jmeter+jprofiler来做项目的压力测试。

但感觉jprofiler对于查找性能瓶颈还不错.但jmeter做压力测试就不合适了。

因为jmeter不能模拟手机短的短信发送到Tomcat的servlet。

比如我要测试用户注册业务。每条http请求手机号码都是需要可变的,如果我要模拟10万手机用户注册,每秒发送速率是100条/秒,是不是jmeter就不太容易能做到呢?所以请banq老师看还有没有更好,更灵活压力测试工具推荐一下,谢谢!

banq
2010-01-14 09:32

2010年01月13日 17:59 "liujian1979"的内容
不能模拟手机短的短信发送到Tomcat的servlet

很逼真的模拟可能需要你自己做啊,现在测试工具越逼近现场,价格越贵。

liujian1979
2010-01-14 20:51

謝謝Banq老师,是我学的不精,需要再深入学习一下