原创 无峰 [ ABAP 技巧与实战 ](javascript:void\(0\);)
**点击蓝字** 关注我们
一
前言
之前发布一篇文件介绍了限制BW EXCEL报表登陆的行为,控制用户的等会最大会话数,最大终端数,最大占用内存数.
> 详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 增强限制BW EXCEL用户登陆行为
> ](https://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247486693&idx=1&sn=176acec057f7f66d8031e8785bd61087&chksm=cf5dd1d3f82a58c56ba1434912b3e2368043a1f1896dc7dd8ac179db11d742cbbbf3151befb3&token=1596155933&lang=zh_CN#rd)
实际上,ECC/S4系统也有类似的控制需求.
ECC/S4系统如果出现用户大量登录,大量打开会话窗口,运行多个大量查询明细的报表.
系统性能也会急剧下降,甚至出现卡顿(用户点击一个按钮,系统半天不响应用户的动作).
**本文主要介绍通过增强限制ECC/S4系统的用户登录和执行TCODE方式,避免用户占用过多的系统资源**
给这个增强起了一个高大上的名字: **服务器资源消耗管控**
二
登陆控制参数
**login/server_logon_restriction**
该参数可以控制用户不能重复登录SAP系统,再加上每次登录只能打开6个会话的限制. 基本上控制了用户的登录行为.
图一是该参数的帮助文档
图二是配置该参数后(需要重启服务器),用户重复登陆的界面限制(丢失了一个允许同时登陆的选项).
通过设置该参数,基本上可以控制用户占用的资源数.但是如果用户在6个会话中都打开消耗资源极大的报表. 该参数无法控制用户的该行为.
图一
图二
三
内存控制参数
• ztta/roll_extension
• em/initial_size_mb
• abap/heap_area_total
• abap/heap_area_dia
• abap/heap_area_nondia
• abap/heaplimit
具体的参数含义移步事务代码RZ11 输入参数名称后查看.
四
增强控制
增强控制用户登陆行为
_**01** _
**配置表**
UNAME 用户名/用户组(允许为空,表示所有用户),可以基于用户或用户组控制, 如果维护一个空用户,则表示所有账号,优先级 用户>用户组>空用户
ALLOW_SESSIONS 同时允许的会话数
ALLOW_IPS 同时登陆的IP地址数
ALLOW_MEMORYS 允许的内存(M)
LIMIT_METHOD 限制方式:禁止登陆与禁止执行事务代码的组合
_**02** _
**登录增强位置**
登陆增强 EXIT_SAPLSUSF_001
SMOD条目: SUSR0001 登陆到 SAP 系统后的用户出口
登录时检查用户资源使用情况,如果超出,报错.
实现效果如图
_**03** _
**事务代码调用增强**
调用TCODE增强: 增强位置 SFW_GET_SWITCHPOS 函数开头隐式增强
输入TCODE 后, 如果检查超过了用户允许的资源, 报错.
实现效果如图
五
增强VS标准参数
• 标准参数仅控制了登录行为(固定控制为1次登录,6个会话). 增强则可以灵活的为用户设置允许的登录终端数,及会话数
• 标准参数一旦设置,多人无法共同使用一个账号. 增强则可以灵活的管控,特定账号允许多终端,多会话数登录.
• 标准参数无法根据用户控制内存使用. 增强则可以为不同的用户控制内存使用情况. 用户在一个会话中可以超出允许的内存(不影响当前执行的事务代码). 但是如果用户占用的内存超出限制后, 用户将无法打开新的事务代码.
• 标准参数如果要控制内存使用, 则必须通过相应的内存控制参数(如图三),控制内存的使用.这些参数对所有用户生效, 无法指定用户或用户组控制.
图三
总结
通过增强限制ECC/S4的登录行为,可以有效地控制用户占用过多的资源,确保服务器资源不会被特定的用户消耗太多.
同时可以强制用户及时释放占用的资源(因为不释放将无法启动新的事务代码).
可以灵活的为不同组/不同用户制定不同的资源分配策略. 更加有效的管理服务器资源.
** THE **
** END **
**约定**
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
( **如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程.
越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.** )
**公众号 : syjf1976_abap**
**ABAP开发技巧**
**微信号 : 392077**
syjf1976
sharry_xlp
Yannick_Duan 申请进入公众号讨论群