操作请求处理方法、装置、电子设备及介质与流程
本申请涉及操作请求处理,特别涉及一种操作请求处理方法、装置、电子设备及介质。
背景技术:
1、在服务器管理领域,基板管理控制器(bmc)常被用于执行远程开关机、固件更新等带外管理操作,这些操作通常涉及对底层硬件或核心固件的修改,具有高风险性。
2、在实际应用中,bmc常需要并发处理来自多个管理客户端的操作请求。然而,诸如固件更新、系统重启等操作之间天然存在资源竞争和互斥关系。如果缺乏有效的协调机制,当多个存在互斥关系的操作被同时执行时,极易造成操作干扰、资源读写冲突,甚至导致固件损坏或服务器宕机等不可预知的严重后果。
3、目前,现有的bmc管理系统大多仅依赖于简单的锁机制或人工判断来处理操作并发,难以实现对多个操作请求之间复杂互斥关系的灵活、准确判别,从而无法有效规避因操作冲突引发的系统故障风险。
技术实现思路
1、本申请提供了一种操作请求处理方法,包括:获取用户发起的当前操作请求;确定当前操作请求中是否携带操作令牌;若不携带操作令牌,则至少根据当前操作请求对应的操作标识和当前会话标识生成当前操作请求对应的操作令牌,操作令牌由设备私钥签名生成;若携带操作令牌,则通过设备公钥对操作令牌进行验签,验签通过后从操作令牌中提取操作标识和会话标识;以提取的操作标识查询操作冲突矩阵,确定当前操作请求是否与当前活跃的其他操作令牌所对应的操作存在互斥关系,操作冲突矩阵预设有各操作之间的互斥关系;若不存在互斥关系,则允许执行当前操作请求,并将当前操作请求对应的操作令牌标记为活跃状态;若存在互斥关系,则拒绝执行当前操作请求,并返回当前占用相关资源的操作令牌所对应的会话信息。
2、在一些实施例中,上述方法还包括:获取基板管理控制器的管理网口的mac地址和芯片内置硬件随机种子;基于基板管理控制器的管理网口的mac地址和芯片内置硬件随机种子通过预设算法生成设备密钥对,设备密钥对包括设备私钥和设备公钥。
3、在一些实施例中,至少根据当前操作请求对应的操作标识和当前会话标识生成当前操作请求对应的操作令牌包括:拼接信息串,信息串至少包括操作标识、当前会话标识和动态超时值;基于设备私钥对信息串进行数字签名,生成签名串;基于签名串与信息串进行编码,生成操作令牌。
4、在一些实施例中,通过设备公钥对操作令牌进行验签通过后,还包括:从操作令牌中提取操作标识;将提取出的操作标识与当前操作请求的操作类型进行比对,若比对结果为不一致则拒绝当前操作请求。
5、在一些实施例中,确定存在互斥关系时,还包括:获取当前占用相关资源的操作令牌所对应的会话标识及剩余占用时间;向所有在线用户发送包含会话标识和剩余占用时间的通告信息。
6、在一些实施例中,上述方法还包括:启动后台扫描线程,以预定时间间隔遍历所有活跃的操作令牌;将超时的操作令牌标记为非活跃并释放其所占用的资源。
7、在一些实施例中,上述方法还包括:响应于用户发起的多请求序列操作,创建目标操作会话;在目标操作会话期间维持同一操作令牌,同一操作令牌应用于目标操作会话所包含的全部子操作请求;在各子操作请求执行时,以目标操作会话为粒度查询操作冲突矩阵一次;当目标操作会话结束或超时时,释放操作令牌所占用的资源。
8、本申请还提供了一种操作请求处理装置,包括:获取模块,用于获取用户发起的当前操作请求;第一确定模块,用于确定当前操作请求中是否携带操作令牌;令牌生成模块,若不携带操作令牌,则至少根据当前操作请求对应的操作标识和当前会话标识生成当前操作请求对应的操作令牌,操作令牌由设备私钥签名生成;验签模块,若携带操作令牌,则通过设备公钥对操作令牌进行验签,验签通过后从操作令牌中提取操作标识和会话标识;第二确定模块,以提取的操作标识查询操作冲突矩阵,确定当前操作请求是否与当前活跃的其他操作令牌所对应的操作存在互斥关系,操作冲突矩阵预设有各操作之间的互斥关系;标记模块,若不存在互斥关系,则允许执行当前操作请求,并将当前操作请求对应的操作令牌标记为活跃状态;返回模块,若存在互斥关系,则拒绝执行当前操作请求,并返回当前占用相关资源的操作令牌所对应的会话信息。
9、本申请提供了一种电子设备,包括存储器、处理器以及存储在存储器中并且可在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述的方法。
10、本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述的方法。
11、本申请的操作请求处理方法的有益效果为:通过预设有各操作之间互斥关系的操作冲突矩阵,并结合操作令牌中携带的操作标识进行查询匹配,能够准确识别当前操作请求是否与系统中活跃的其他操作存在资源竞争,相较于传统技术中依赖简单全局锁或人工判断的方式,本申请显著提升了对复杂操作间互斥关系判别的灵活性和准确性,有效避免了因误判或漏判导致的操作冲突。另外本申请并非简单粗暴地串行化所有操作,而是通过操作冲突矩阵允许不存在互斥关系的操作令牌所对应的操作并发执行,这使得系统在保证操作安全的前提下,最大程度地提升了bmc对多个管理请求的并发处理能力,避免了不必要的阻塞,提高了管理通道的吞吐量和整体资源利用率。
1.一种操作请求处理方法,包括:
2.根据权利要求1所述的方法,还包括:
3.根据权利要求1所述的方法,至少根据所述当前操作请求对应的操作标识和当前会话标识生成所述当前操作请求对应的操作令牌包括:
4.根据权利要求1所述的方法,通过所述设备公钥对所述操作令牌进行验签通过后,还包括:
5.根据权利要求1所述的方法,确定存在互斥关系时,还包括:
6.根据权利要求1所述的方法,还包括:
7.根据权利要求1所述的方法,还包括:
8.一种操作请求处理装置,包括:
9.一种电子设备,包括存储器、处理器以及存储在存储器中并且可在处理器上运行的计算机程序,该处理器执行计算机程序时实现权利要求1到7任意一项所述的方法。
10.一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现权利要求1到7任意一项所述的方法。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com