高手的存在,就是让服务10亿人的时候,你感觉只是为你一个人服务......
  • About Me



  • 兴趣爱好


  • 上一张

    Java中Arrays.asList不能使用add方法

    我们知道Java数组可以使用Arrays.asList方法,将其转成List集合,操作起来比较方便。
    最近发现Arrays.asList得到的List无法进行add等操作。

    string堆栈存放

    java string堆栈存放一直有些困惑,读了一篇很好的帖子,感觉清明了许多。
    首先明确常量池的概念(方法区中,java8前可以叫做永久代):
    常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量。
    String str = “abc” 存放在常量池中

    linux tcp端口转发工具-rinetd

    搭建性能测试环境的时候,3台物理机组一个局域网,只有一台机器对外出口,另外两台机器与外部通信必须通过端口转发服务来实现。
    Alt text

    nGrinder 介绍与安装

    nGrinder是基于Grinder开源项目,但由NHN公司的nGrinder开发团队进行了重新设计和完善(所以叫做nGrinder)。

    它是由一个controller和连接它的多个agent组成,用户可以通过web界面管理和控制测试,以及查看测试报告,controller会把测试分发到一个或多个agent去执行。用户可以设置使用多个进程和线程来并发的执行该脚本,而且在同一线程中,来重复不断的执行测试脚本,来模拟很多并发用户。

    nGrinder的测试是基于一个python的测试脚本,用户按照一定规则编写测试脚本以后,controller会将脚本以及需要的其他文件分发到agent,用Jython执行。并在执行过程中收集运行情况、响应时间、测试目标服务器的运行情况等。并保存这些数据生成运行报告,以供以后查看。

    性能测试平台调研

    目标:通过搭建集脚本、场景、压测、监控和报表展示为一体性能测试平台,降低性能测试入门使用成本,提高性能测试效率。

    为此研究了几款性能测试平台,进行优劣对比,最终选择了ngrinder。

    loadrunner https脚本

    全站https已经成为互联网公司的主流,

    loadrunner对https的支持还算不错。

    JVM 配置参数整理

    -XX:+PrintFlagsFinal

    当你在网上兴冲冲找到一个可优化的参数时,先用-XX: +PrintFlagsFinal看看,它可能已经默认打开了;不要轻信网上任何文章,一切以JDK打出来的为准
    -XX:+PrintFlagsFinal显示所有可设置的参数及它们的值( JDK 6 update 21开始才可以用),默认是不包括diagnostic或experimental系的。
    要在-XX:+PrintFlagsFinal的输出里看到这两种参数的信息,分别需要显式指定

    -XX:+UnlockDiagnosticVMOptions
    -XX:+UnlockExperimentalVMOptions

    另外,可以先看一下R大的JVM调优的”标准参数”的各种陷阱这篇文章。