CN112019343A - 一种OpenStack令牌优化方法及系统 - Google Patents
一种OpenStack令牌优化方法及系统 Download PDFInfo
- Publication number
- CN112019343A CN112019343A CN202010740532.4A CN202010740532A CN112019343A CN 112019343 A CN112019343 A CN 112019343A CN 202010740532 A CN202010740532 A CN 202010740532A CN 112019343 A CN112019343 A CN 112019343A
- Authority
- CN
- China
- Prior art keywords
- token
- information
- openstack
- directory
- memcache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000006835 compression Effects 0.000 claims description 20
- 238000007906 compression Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 12
- 230000000694 effects Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种OpenStack令牌优化方法及系统,本发明通过令牌信息按照特定规则进行拆分,将令牌信息拆分为令牌主信息和令牌目录信息,令牌主信息包括用户信息、角色信息以及项目信息等,两者通过X‑Subjext‑Token关联,并将两部份的信息分别存入不同策略的MemCache缓存服务器,在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息,从而有效降低令牌缓存的占用空间以及网络开销,提升基于OpenStack的云计算系统的服务可靠性以及可用性。
Description
技术领域
本发明涉及云计算技术领域,特别是一种OpenStack令牌优化方法及系统。
背景技术
在OpenStack系统中,使用令牌作为身份认证的标识,在调用A模块时,需要先使用用户名、密码,去Keystone(OpenStack框架中负责管理身份验证、服务访问规则和服务令牌功能的组件)获取令牌,然后将令牌信息附加到请求中,调用A模块,A模块在Keystone认证令牌通过后,才进一步执行用户的请求。因用户和系统请求较多,现有方案在A模块认证令牌的过程中,引入MemCache(分布式内存对象缓存系统)作为令牌缓存,减小对Keystone的请求次数,提高系统可用性。
随着OpenStack系统中模块的增加,以及多区域的部署,令牌中包含的信息大大增加,导致MemCache缓存令牌占用空间大,MemCache与服务器节点之间的网络传输开销大,如启用压缩,则会使MemCache CPU占用率上升,如果MemCache部署在业务节点,这种影响更加明显。
发明内容
本发明的目的是提供一种OpenStack令牌优化方法及系统,旨在解决现有技术中令牌占用空间大以及网络传输开销大的问题,实现降低令牌缓存的占用空间以及网络开销,提升服务可靠性。
为达到上述技术目的,本发明提供了一种OpenStack令牌优化方法,所述方法包括以下操作:
根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
优选地,所述令牌主信息包括用户信息、角色信息以及项目信息。
优选地,所述令牌主信息与令牌目录信息通过X-Subjext-Token进行关联。
本发明还提供了一种OpenStack令牌优化系统,所述系统包括:
令牌拆分模块,用于根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
信息缓存模块,用于将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
令牌加载模块,用于在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
优选地,所述令牌主信息包括用户信息、角色信息以及项目信息。
优选地,所述令牌主信息与令牌目录信息通过X-Subjext-Token进行关联。
本发明还提供了一种OpenStack令牌优化设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现所述的OpenStack令牌优化方法。
本发明还提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现所述的OpenStack令牌优化方法。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
与现有技术相比,本发明通过令牌信息按照特定规则进行拆分,将令牌信息拆分为令牌主信息和令牌目录信息,令牌主信息包括用户信息、角色信息以及项目信息等,两者通过X-Subjext-Token关联,并将两部份的信息分别存入不同策略的MemCache缓存服务器,在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息,从而有效降低令牌缓存的占用空间以及网络开销,提升基于OpenStack的云计算系统的服务可靠性以及可用性。
附图说明
图1为本发明实施例中所提供的一种OpenStack令牌优化方法流程图;
图2为本发明实施例中所提供的令牌信息拆分示意图;
图3为本发明实施例中所提供的令牌信息认证流程图;
图4为本发明实施例中所提供的一种OpenStack令牌优化系统框图。
具体实施方式
为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
下面结合附图对本发明实施例所提供的一种OpenStack令牌优化方法及系统进行详细说明。
如图1所示,本发明公开了一种OpenStack令牌优化方法,所述方法包括以下操作:
根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
在原系统中,令牌信息包括用户信息、角色信息以及目录信息等一系列信息,其中目录信息包含的数据结构如图2所示,当系统规模庞大时,目录信息包含大量的信息,占据了令牌信息中95%的数据量,因此在本发明实施例中将原系统中下发的令牌拆分为两部分,一部分包含除目录信息以外的所有信息,包括用户信息、角色信息以及项目信息等,另一部分包含目录信息,两者通过X-Subjext-Token关联。
拆分后的信息根据需要分开缓存,在获取时,分开加载对应的信息。为提高系统的运行速度,令牌信息是由各组件缓存在MemCache中的,在拆分前,获取完令牌信息后,会直接将令牌信息缓存下来,而令牌信息优化拆分后,Keystone的中间件组件需要将全量的令牌信息,按照图2所示的结构进行拆分,分别存入不同策略的MemCache缓存服务器中,令牌的主信息部分保存于非压缩的缓存服务器,令牌的目录信息部分采用高压缩算法缓存,而当统一认证组件从缓存中加载信息时,先加载令牌主信息,因为令牌主信息包含了除目录信息以外的信息,可满足系统中大部分操作的需求,当真正需要使用目录信息中的服务端点时,再由统一认证组件从缓存中懒加载到程序实例。从而既降低了压缩、解压缩时的CPU占用,又能优化占用空间和网络开销。
如图3所示,通过Keystone的中间件组件判断MemCache中是否存在缓存,当不存在缓存时,调用Keystone获取令牌信息进行认证,当认证成功后,将令牌信息拆分为令牌主信息和令牌目录信息,获取令牌信息条目的哈希值,对于令牌主信息使用非压缩算法,直接存储于MemCache集群中,对于令牌目录信息使用压缩算法存储于MemCache新集群中或与令牌主信息相同的MemCache集群中,并通过中间件组件返回认证信息和令牌信息;当MemCache中存在缓存时,统一认证组件优先加载令牌主信息,当需要使用目录信息中的服务端点信息时,加载令牌目录信息。
本发明实施例通过令牌信息按照特定规则进行拆分,将令牌信息拆分为令牌主信息和令牌目录信息,令牌主信息包括用户信息、角色信息以及项目信息等,两者通过X-Subjext-Token关联,并将两部份的信息分别存入不同策略的MemCache缓存服务器,在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息,从而有效降低令牌缓存的占用空间以及网络开销,提升基于OpenStack的云计算系统的服务可靠性以及可用性。
如图4所示,本发明实施例还公开了一种OpenStack令牌优化系统,所述系统包括:
令牌拆分模块,用于根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
信息缓存模块,用于将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
令牌加载模块,用于在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
在原系统中,令牌信息包括用户信息、角色信息以及目录信息等一系列信息,当系统规模庞大时,目录信息包含大量的信息,占据了令牌信息中95%的数据量,因此在本发明实施例中将原系统中下发的令牌拆分为两部分,一部分包含除目录信息以外的所有信息,包括用户信息、角色信息以及项目信息等,另一部分包含目录信息,两者通过X-Subjext-Token关联。
拆分后的信息根据需要分开缓存,在获取时,分开加载对应的信息。为提高系统的运行速度,令牌信息是由各组件缓存在MemCache中的,在拆分前,获取完令牌信息后,会直接将令牌信息缓存下来,而令牌信息优化拆分后,Keystone的中间件组件需要将全量的令牌信息进行拆分,分别存入不同策略的MemCache缓存服务器中,令牌的主信息部分保存于非压缩的缓存服务器,令牌的目录信息部分采用高压缩算法缓存,而当统一认证组件从缓存中加载信息时,先加载令牌主信息,因为令牌主信息包含了除目录信息以外的信息,可满足系统中大部分操作的需求,当真正需要使用目录信息中的服务端点时,再由统一认证组件从缓存中懒加载到程序实例。从而既降低了压缩、解压缩时的CPU占用,又能优化占用空间和网络开销。
通过Keystone的中间件组件判断MemCache中是否存在缓存,当不存在缓存时,调用Keystone获取令牌信息进行认证,当认证成功后,将令牌信息拆分为令牌主信息和令牌目录信息,获取令牌信息条目的哈希值,对于令牌主信息使用非压缩算法,直接存储于MemCache集群中,对于令牌目录信息使用压缩算法存储于MemCache新集群中或与令牌主信息相同的MemCache集群中,并通过中间件组件返回认证信息和令牌信息;当MemCache中存在缓存时,统一认证组件优先加载令牌主信息,当需要使用目录信息中的服务端点信息时,加载令牌目录信息。
本发明实施例还公开了一种OpenStack令牌优化设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现所述的OpenStack令牌优化方法。
本发明实施例还公开了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现所述的OpenStack令牌优化方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种OpenStack令牌优化方法,其特征在于,所述方法包括以下操作:
根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
2.根据权利要求1所述的一种OpenStack令牌优化方法,其特征在于,所述令牌主信息包括用户信息、角色信息以及项目信息。
3.根据权利要求1所述的一种OpenStack令牌优化方法,其特征在于,所述令牌主信息与令牌目录信息通过X-Subjext-Token进行关联。
4.一种OpenStack令牌优化系统,其特征在于,所述系统包括:
令牌拆分模块,用于根据令牌信息的条目的哈希值,将令牌信息拆分为两部分,一部分为令牌主信息,另一部分为令牌目录信息;
信息缓存模块,用于将两部分的信息分别存入不同策略的MemCache缓存服务器,令牌主信息使用非压缩算法存储于MemCache缓存服务器中,令牌目录信息使用压缩算法存储于MemCache新缓存服务器或与令牌主信息相同的缓存服务器中;
令牌加载模块,用于在获取令牌信息时,优先加载令牌主信息,当需要使用令牌目录信息中的服务端点信息时,加载令牌目录信息。
5.根据权利要求4所述的一种OpenStack令牌优化系统,其特征在于,所述令牌主信息包括用户信息、角色信息以及项目信息。
6.根据权利要求4所述的一种OpenStack令牌优化系统,其特征在于,所述令牌主信息与令牌目录信息通过X-Subjext-Token进行关联。
7.一种OpenStack令牌优化设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现根据权利要求1-3任意一项所述的OpenStack令牌优化方法。
8.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现根据权利要求1-3任意一项所述的OpenStack令牌优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740532.4A CN112019343B (zh) | 2020-07-28 | 2020-07-28 | 一种OpenStack令牌优化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740532.4A CN112019343B (zh) | 2020-07-28 | 2020-07-28 | 一种OpenStack令牌优化方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112019343A true CN112019343A (zh) | 2020-12-01 |
CN112019343B CN112019343B (zh) | 2022-12-23 |
Family
ID=73499966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010740532.4A Active CN112019343B (zh) | 2020-07-28 | 2020-07-28 | 一种OpenStack令牌优化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112019343B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022121461A1 (zh) * | 2020-12-10 | 2022-06-16 | 苏州浪潮智能科技有限公司 | 一种云平台资源访问控制的令牌构造方法、装置及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110365483A (zh) * | 2018-04-11 | 2019-10-22 | 中国移动通信集团广东有限公司 | 云平台认证方法、客户端、中间件及系统 |
CN110765168A (zh) * | 2019-11-01 | 2020-02-07 | 福建顶点软件股份有限公司 | 基于用户信息的数据查找方法和装置 |
-
2020
- 2020-07-28 CN CN202010740532.4A patent/CN112019343B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110365483A (zh) * | 2018-04-11 | 2019-10-22 | 中国移动通信集团广东有限公司 | 云平台认证方法、客户端、中间件及系统 |
CN110765168A (zh) * | 2019-11-01 | 2020-02-07 | 福建顶点软件股份有限公司 | 基于用户信息的数据查找方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022121461A1 (zh) * | 2020-12-10 | 2022-06-16 | 苏州浪潮智能科技有限公司 | 一种云平台资源访问控制的令牌构造方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112019343B (zh) | 2022-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109783229B (zh) | 线程资源分配的方法及装置 | |
US11245774B2 (en) | Cache storage for streaming data | |
CN102023973A (zh) | 一种应用缓存服务器与数据库同步的方法、装置和系统 | |
US20160034582A1 (en) | Computing device and method for executing database operation command | |
US9836516B2 (en) | Parallel scanners for log based replication | |
US10331499B2 (en) | Method, apparatus, and chip for implementing mutually-exclusive operation of multiple threads | |
CN112486913B (zh) | 一种基于集群环境下的日志异步存储方法和设备 | |
CN114168262B (zh) | 一种基于lru置换算法的云平台镜像缓存管理方法 | |
WO2021047120A1 (zh) | 一种fpga异构加速卡集群中的资源调度方法、设备及介质 | |
US20230305724A1 (en) | Data management method and apparatus, computer device, and storage medium | |
US12072893B2 (en) | System and method for hierarchical database operation accelerator | |
CN116821058B (zh) | 元数据访问方法、装置、设备及存储介质 | |
CN113704295A (zh) | 业务请求的处理方法、系统及电子设备 | |
CN112019343B (zh) | 一种OpenStack令牌优化方法及系统 | |
CN106341402B (zh) | 基于多架构分布式缓存的处理方法和装置 | |
US20150106884A1 (en) | Memcached multi-tenancy offload | |
CN106970826B (zh) | 一种基于大页的缺页异常解决方法 | |
CN113268483B (zh) | 请求处理方法和装置、电子设备和存储介质 | |
CN110019057A (zh) | 请求处理方法及装置 | |
CN109032794A (zh) | 一种电子商务系统的Cache对象缓存方法 | |
US20210286802A1 (en) | Scalable locking techniques | |
CN111858418A (zh) | 一种基于远程直接内存访问rdma的内存通信方法及装置 | |
US11960510B2 (en) | Data movement from data storage clusters | |
US20240211448A1 (en) | Methods and apparatus using locks to throttle a distributed cloud database workload | |
US20250036454A1 (en) | Schedule unplannable workload via static runtime |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |