初学loadrunner,今天准备用这个工具测试一下手头的一个cs服务器,想用java Vuser来调用。边学边用吧,先简单写了一个脚本,就是打印“HelloWorld”,然后在脚本编辑器里面运行是通过了,但在场景控制器里面并发运行这个脚本,报如下错误: “You do not have a for this Vuser type.Please contact Mercury Interactive to renew your license.” 目前用的loadrunner是最新的9.0版本,具体的破解方式请google,基本原来是利用8.1版本的破解方式(同样感谢HP公司的大度! ...
最近准备开工一个大项目,给自己练手用,考虑需要保存源代码,又不方便放到公司的cvs上。因此决定安装一个给自己用,顺便学习一下 subversion。简单翻了一下资料,决定使用apache + subversion的方式,比较适合我,而且这种方式的好处是可以用浏览器就直接访问,比较方便浏览。 整理了一下安装配置过程,给新手一个简单可行的参考。 一.首先安装apache服务器: 1. 下载最新的apache 2.2.6 httpd-2.2.6.tar 2. 安装 ./configure --prefix=/data/aoxj/soft/svn/apache --enab ...
看到有帖子,置疑spring和依赖注入的价值,回复内容整理如下: 依赖注入对设计有利,而spring则促进了依赖注入的使用。 如果业务处理类,它所使用的倚赖,都是依靠在这个类内部实现或者查找,那么必然使得正常的业务逻辑和获取依赖的方法混在一起。 我取个最简单的场景,某个注册的工作类,它需要获取当前"容许的用户名的最大长度",这个依赖非常简单吧?基本每个注册类都有这个限制,我们现在把场景考虑的全面一点,对于复杂一点的系统,这个最大长度的限制可能来源很多,比如配制文件,数据库,可能类工作在前台比如web而配制在后台,可能需要和第三放系统一起工作而需要到第三方系统中获取而对方只提供web se ...
jdk小工具jps介绍 jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。 jps存放在JAVA_HOME/bin/jps,使用时为了方便请将JAVA_HOME/bin/加入到Path. $> jps 23991 Jps 23789 BossMain 23651 Resin 比较常用的参数: -q 只显示pid,不显示class名称,jar文件名和传递给main 方法的参数 $> jps -q ...
从对resin源码的追踪到resin配置文件中的设置,可以明确的看到,resin在设计上是提供了session id 的reuse功能,而且resin.conf默认就是打开reuse的。惭愧的是,我一直不知道...... 事情要从前段时间的工作谈起,我被要求设计出一套合适的方案来解决目前公司现有的几个前台模块各自为政的问题。其中最核心的两个就是多机负载分担和统一认证功能。目前公司产品中多机负载有两种方式: 1. 纯resin,放弃了对HttpSession和本地资源的使用 2. apache + resin,需要传递所有需要用到的参数,因为麻烦所有干脆只有一个单一入口,因为使用了Ht ...
上文中详细描述了问题的表现情况,由于这个特性严重影响到目前为公司设计的一套前台统一认证方案,因此不得不特别关注。好在resin的源代码是公开的,直接从resin的官网将resin的源代码拿下来,看resin到底是如何处理的。 首先找到com.caucho.server.http.HttpRequest,发现是extends AbstractHttpRequest 在AbstractHttpRequest中找到方法 public HttpSession getSession(boolean create) 发现调用 _session = createSession(cr ...
近期因工作需求探索apache + resin的多机负载分布和多个webapp统一认证的实现方案, 期间设计多个webapp统一认证的实现方案时, 发现resin下通过cookie来传递jsessionid和通过url重写将jsessionid放url中传递, 会有细微的差异. 注:后来研究发现是resin提供的session id reuse特性,只是此文第一次发布时我还不知道有此特性,惭愧。 在servlet规范中,HttpServletSession的获取时通过调用request.getSession(boolean createnew)方法来实现,其实现机制可以简单的理解为 ...
看到有留言,对我如此“执着”的关注session创建很好奇,解释一下吧。 首先是关注性能,前面提到过session的使用是有代价的,需要在保存在服务器端内容中,每次request.getSeesion()方法获取 session时,实际是在服务器段的一个大的hasp结构中以当前的jsessionid为key,获取对应的value HttpSession对象,这个过程是需要消耗cpu的,当然目前hash算法比较好,这里消耗不那么明显。而一般的应用,消耗的cpu远比这个小开销大出2-3个数量级,因此通常情况不敏感。如果这个session是我们需要使用的,那么付出这些内存和cpu的代码是完 ...
按照前面的方法,将jsp页面加入<%@ page session="false"%>之后,发现还是有新的session会意外的蹦出来。仔细检查action没有操作session,那这次是谁干的呢?将目光转回jsp文件,首先来次狠的,将这个jsp文件的内容删空为只有纯html内容。重新运行后发现不会自动生成session,ok,问题在jsp文件里面了。将原来的内容一点点的加回去,反复测试直到session自动创建的问题再次出现, 哈,发现问题出现在webwork的标签上。 这次出问题的a.jsp代码内容为: <%@ page contentType="text/html; ch ...
jsp文件是session创建的一个源头,这里指的不是在jsp文件中用代码或者标签来操作session,这些都是在控制中的。容易忽视或者说根本就不会意识到的(比如我,就是写jsp三年后才发现的)是,jsp有自动创建session的机制,在jsp页面中,如果没有明确的给出 <% @page session="false"%>,jsp页面会非常乖巧(如果刚好需要)或者说是偷偷摸摸(如果不需要)的自动在生成的java文件中增加一句: javax.servlet.http.HttpSession session = request.getSession(true)。 为了验证这个说法,我们做 ...
skydream
搜索本博客
最近加入圈子
存档
最新评论