3、如何成为一名性能架构师?

  成为性能架构师有两条路可走,一条是从开发转向架构,然后精力集中放在与性能相关的领域,如性能测试、性能分析、性能优化,从软件架构层面把握软件的性能问题,积累到一定程度可称得上一名合格的性能架构师。

  另一条路是从性能测试逐步积累经验,当然这也需要较深的代码功底,起码你能定位问题、分析出问题的本质,能给开发人员提供优化的建议,经常与架构团队交流,从他们那里吸取宝贵的经验然后自己消化掉,在性能测试方面要有很强的设计能力,如果对架构有很熟,反过来可以对架构设计产生影响,那是实现1+1>2了,随着经验的积累自然可以担当性能架构师的角色。

  4、我比较关注Oracle性能优化的问题,下面是我想了解的几个问题:

  Oracle性能监控需要注意哪些要点?有哪些Oracle性能监控工具可以用?

  Oracle平常监控主要用EM的性能监控视图、主要关注TOP SQL以及SQL的执行计划、阻塞与锁等待分析,另外可用ASH、AWR报告分析top5 event分析重要事件,报告中主要关注那些逻辑读、物理读比较大的SQL,还有各缓存的命中率, 数据库的报警日志文件也很重要,也要定期分析。

  5、金蝶ERP产品的性能测试是如何做的?采用什么工具进行测试?如何从性能测试指标结果定位性能瓶颈?

  金蝶的ERP性能测试主要是通过让性能测试常态化,性能测试分为基准测试、稳定性测试、大数据量测试、窄带宽测试、实验室测试,平常在研发环节主要是将ERP中重要的功能点整理成测试用例,通过基准测试对每个功能按约定的设计要求进行并发测试,以便验证是否符合预期指标, 基准测试完后,按典型业务场景进行案例组合的稳定性测试,金蝶要求做7*24小时的稳定性测试,以此验证产品的稳定性,产品的大版本一般跟IBM合作进行实验室测试。

  金蝶平常用自己开发的性能测试工具,在项目测试的时候用由客户提供的LoadRunner进行测试定位性能瓶颈首先要从响应时间指标中检测是否符合预期,然后验证CPU,内存的消耗是否符合预期指标。

  6、J2EE平台的性能监控一般监控哪些方面?数据库、WEB服务器、应用服务器?还有什么?监控一般推荐用什么工具啊?

  J2EE平台的性能监控一般监控响应时间、分析JS性能,分析HTTP交互、网络流量、JVM线程、JVM内存,JVM垃圾回收、JDBC连接池、数据库,数据库与应用服务的流量,数据量的TOP SQL,服务器层面监控CPU、内存、IO等待、端口连接数等。

  监控工具要分类划分,IE端有分析http交互的httpwatch, fiddler2,分析JS性能有IE8、IE9的开发者工具,如果是互联网应用还可以用yeslow等工具进行综合分析,应用服务器。

  如果分析少量并发性能可以用Jprofile,Jprob等工具,如果是并发大测试可以通过定期抓取jvm线程堆栈来分析性能瓶颈,同时将GC日志输出进行分析,对于数据库端,oracle有很多工具,如EM动态性能视图,db2有db2top。

  7、LoadRunner的性能测试结果一般重点看哪些内容?如何分析测试结果?

  LoadRunner的性能测试结果一般重点看响应时间、TPS、吞吐量, STD、失败率是否符合指标,不仅要看是否是否符合要求,还要看是否平稳。

  8、想了解一下云计算的性能压力测试是怎么做的?与普通传统应用的性能测试有什么区别?

  具体我还没做过云计算项目的性能压力测试,我想从技术角度分析一下,云技术肯定是由负载分发器、计算池、存储分发器、存储池构成的,上线的环境我估计由于云池太大很难以测试,换个思路,我们通过换算或估算的方式,走小范围性能测试+技术架构分析的路子,性能测试用来验证任务的分发与少部分计算池上的性能,再结合对技术架构的分析,重点验证那些关键技术点,这样应该是可行的。