Oracle IDM中的默认配置保留20个专用于服务前端(UI)请求的线程 。 从根本上讲,这意味着应用程序服务器具有20个线程池,可用于为通过Web控制台(/ identity或/ sysadmin)访问OIM的用户提供服务。
对于Weblogic ,这是它的配置方式:
通常发生的是
- 用户访问OIM URL,例如http:// oimhost:14000 / identity
- 浏览器发送带有一些添加的HTTP请求标头和其他信息的简单(HTTP)GET请求
- 应用程序服务器(例如Weblogic)从池中拾取一个线程并使用它来处理请求
- OIM做出回应,浏览器呈现登录页面,大部分时间用户都很高兴! ;-)
- 服务请求后,应用程序服务器上的线程将发送回池中(请记住我刚才提到的20个线程池),因此可以被另一个请求重用
我只是想尝试一下,并通过JMeter执行了一些简单的测试
注意 :这仅是前端/ UI压力测试–与业务逻辑无关
脚步
嗯,您需要在JMeter中设置一些配置-它们几乎是标准配置,与OIM无关。
- 设置线程组 (代表用户)
- 配置HTTP请求,例如,配置OIM URL,上下文路径,端口(再次,非常基础)
- 配置结果查看器 –树或表模式。 这是用于实时跟踪结果
JMeter配置(.jmx)文件可供参考–只需将其导入JMeter,您应该能够找出确切的配置参数,并在需要时对其进行调整
测试参数
我尝试通过在JMeter的“线程组”设置中更改“ 线程数”和“ 加速期”属性来测试各种排列和组合
线程数–等于您要模拟的用户数
加速周期(秒)–等于您希望JMeter触发所有请求的时间段/范围
例如,线程数= 100,启动周期= 20秒,基本上意味着模拟一个场景,其中100个用户在20秒的时间内访问您的应用程序(在这种情况下为OIM)。
- 尝试1:线程数= 100,加速时间= 20秒
- 尝试2:线程数= 200,加速时间= 20秒
- 尝试3:线程数= 500,加速时间= 20秒
- 尝试4:线程数= 1000,加速时间= 20秒
- 尝试5:线程数= 2000,加速时间= 20秒
我在期待什么
老实说,我希望在20秒的时间内触发2000个线程(潜在用户)时会有一些延迟/延迟。 看起来没有发生。
实际结果
总而言之,反应是非常健康的。
- 绿色结果,即HTTP 200(确定)响应
- 低延迟和加载时间
需要注意的
- 这是在个人测试VM(运行OIM 11g R2 PS2)中执行的,因此系统上没有太多负载
- 当我连接的服务器只是一个来宾VM时,不能期望太多延迟;-)
尽管如此,这仍然很有趣,并且在后端具有运行进程(例如调度程序,某些访问请求进程等)的服务器上执行相同的测试将很有趣。
如果20个线程的现成配置在您的环境中不起作用,则可以使用Weblogic Admin Console进行更改–冲洗并重复:-)
在那之前..欢呼!
翻译自: https://www.javacodegeeks.com/2015/02/stress-testing-oim-web-ui-layer.html