假设您要将单个用户的查询限制为一次仅处理一个查询,以防止系统过载并提高系统吞吐量。例如,John Smith 在晚上下班前提交了 25 个查询,并且只需要在他第二天上班时看到结果。您可以将超出 John 的限制值的任何查询放入延迟队列。一个查询完成后,再开始执行队列中的下一个查询。
- 选择要编辑的规则集。
- 打开工作负载设计器组件和工作负载设计器视图。
- 在For System (对于系统)列表中,选择PROD1。
- 在本地工作中页面区域中,单击规则集名称 FILTERS/THROTTLES。
- 创建新的系统并发控制。
- 从规则集工具栏上,单击Throttles (并发控制)。
- 在系统并发控制旁边,单击 。
- 输入并发控制的名称,在本示例中为 John Smith Concurrent Queries。
- 选择规则类型选项Collective (集合)。
- 单击Save (保存)。
- 添加分类标准,限定将规则应用于 John Smith。
- 单击Classification (分类)选项卡。
- 在Add Classification Criteria (添加分类标准)列表中,选择Request Source (请求源)。
- 单击Add (添加)。将显示编辑请求源标准对话框。
- 在Source Type (源类型)列表中,选择Username (用户名)。
- 在用户名下,输入数据库会话的用户 ID:johnsmith。
- 单击包括。
- 单击OK (确定)。
- 单击Save (保存)。
- 添加并发控制限制,每次仅允许执行一个查询。
- 单击State Specific Settings (特定状态的设置)选项卡。
- 在并发控制视图底部的缺省设置下,在框中键入 1 设置并发限制。
- 选择Delay (延迟)将超出限制值的查询放入延迟队列。
- 单击Save (保存)。
- 激活规则集。
- 返回工作负载设计器视图。
- 对于 FILTERS/THROTTLES 规则集,单击 并选择Make Active (激活)。
- [可选] 检查延迟队列中的查询。
- 打开工作负载监控器组件。
- 单击组件框中的,然后选择Settings (设置)。
- 单击Systems (系统)选项卡。
- 在Systems (系统)列表中,选择PROD1。
- 单击OK (确定)。
- 在工具栏中,单击Delayed Requests (延迟的请求)查看因并发控制而被延迟的请求的指标。
- 单击会话 ID 查看更多详细信息。