CN111190742B - 资源协同方法、装置、计算机设备和存储介质 - Google Patents

资源协同方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111190742B
CN111190742B CN201910982825.0A CN201910982825A CN111190742B CN 111190742 B CN111190742 B CN 111190742B CN 201910982825 A CN201910982825 A CN 201910982825A CN 111190742 B CN111190742 B CN 111190742B
Authority
CN
China
Prior art keywords
resource
request
information
identification information
editing
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.)
Active
Application number
CN201910982825.0A
Other languages
English (en)
Other versions
CN111190742A (zh
Inventor
曹智颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910982825.0A priority Critical patent/CN111190742B/zh
Publication of CN111190742A publication Critical patent/CN111190742A/zh
Application granted granted Critical
Publication of CN111190742B publication Critical patent/CN111190742B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services

Abstract

本申请涉及一种资源协同方法、装置、计算机设备和存储介质。所述方法包括:接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;根据第一资源编辑请求获取待锁定的第一资源标识;根据第一身份标识信息锁定第一资源标识对应的第一资源;当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。采用本方法能够在编辑资源产生资源协同问题时有效避免冲突。

Description

资源协同方法、装置、计算机设备和存储介质
技术领域
本申请涉及互联网技术领域,特别是涉及一种资源协同方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的发展,大多数应用都可以在多个客户端上使用,例如电商应用既可以使用手机访问,也可以使用笔记本电脑访问。在一些情况下,用户可能需要使用相同的账号在多个客户端上同时访问同一应用。
然而,现有技术中,当用户使用相同的账号在多个客户端上同时访问同一应用时,在多个客户端对应用中的资源进行编辑时,可能存在资源协同问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在编辑资源产生资源协同问题时有效避免冲突的资源协同方法、装置、计算机设备和存储介质。
一种资源协同方法,包括:
接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;
根据第一资源编辑请求获取待锁定的第一资源标识;
根据第一身份标识信息锁定第一资源标识对应的第一资源;
当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
在一个实施例中,第一资源包括订单信息、账户属性、内容实体、客户属性和资费套餐信息中的至少一种。
一种资源协调系统,所述系统包括:
第一服务器,用于接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,根据第一资源编辑请求获取待锁定的第一资源标识,生成对应的第一资源锁定请求,将第一资源锁定请求发送至第二服务器;
第二服务器,用于根据第一资源锁定请求锁定第一资源标识对应的第一资源,当第一资源锁定成功时,向第一服务器返回对应的第一锁定成功信息;
第一服务器还用于根据第一锁定成功信息向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
在一个实施例中,第一服务器还用于接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息,根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息;
第二服务器还用于缓存当前身份标识信息;
第一服务器还用于向登录请求对应的发送端返回当前身份标识信息。
在一个实施例中,第二服务器还用于当第一资源锁定成功时,记录第一资源锁定成功状态的保持时长;当保持时长达到预设时长时,解除第一资源的锁定成功状态。
在一个实施例中,第二服务器还用于当保持时长未达到预设时长时,接收到第四资源锁定请求,第四资源锁定请求是第一服务器根据接收到的第四资源编辑请求生成并发送至第二服务器的,第四资源锁定请求携带第一身份标识信息;根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新记录第一资源锁定成功状态的保持时长。
在一个实施例中,第一服务器还用于获取当前时间和第一身份标识信息的过期时间;当该当前时间超过过期时间时,向第一资源编辑请求对应的发送端返回对应的重新登录提示信息。
在一个实施例中,第二服务器还用于当满足释放条件时,解除第一资源的锁定成功状态;释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一身份标识信息的过期时间中的至少一种。
在一个实施例中,该系统还包括:
第三服务器,用于接收业务操作执行请求,根据业务操作执行请求执行对应的业务操作,再向第一资源编辑请求对应的发送端返回对应的业务操作结果。
一种资源协同装置,包括:
资源编辑请求接收模块,用于接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;
资源标识获取模块,用于根据第一资源编辑请求获取待锁定的第一资源标识;
资源锁定模块,用于根据第一身份标识信息锁定第一资源标识对应的第一资源;
资源编辑权限信息返回模块,用于当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;
根据第一资源编辑请求获取待锁定的第一资源标识;
根据第一身份标识信息锁定第一资源标识对应的第一资源;
当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;
根据第一资源编辑请求获取待锁定的第一资源标识;
根据第一身份标识信息锁定第一资源标识对应的第一资源;
当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
上述资源协同方法、装置、计算机设备和存储介质,通过接收第一资源编辑请求,其中第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,根据第一资源编辑请求获取待锁定的第一资源标识,根据第一身份标识信息锁定第一资源标识对应的第一资源,当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。因此,根据用户标识信息和客户端标识信息锁定第一资源后,只有同一用户通过同一客户端才能对第一资源进行编辑,不同用户通过同一客户端或者同一用户通过其他客户端都无法对第一资源进行编辑,进而能够在编辑资源产生资源协同问题时有效避免冲突。
附图说明
图1为一个实施例中资源协同方法的应用环境图;
图2为一个实施例中资源协同方法的流程示意图;
图3为一个实施例中生成身份标识信息的流程示意图;
图4为一个实施例中用户登录的时序图;
图5为一个实施例中第二资源编辑请求锁定第一资源的流程示意图;
图6为一个实施例中资源锁定的流程示意图;
图7为一个实施例中第三资源编辑请求锁定第二资源的流程示意图;
图7A为一个实施例中多端与服务器进行交互的结构示意图;
图8为一个实施例中处理第一资源锁定成功状态的流程示意图;
图9为另一个实施例中资源锁定的流程示意图;
图10为一个实施例中编辑资源的时序图;
图11为另一个实施例中资源协同方法的流程示意图;
图12为一个实施例中资源协同系统的结构框图;
图13为另一个实施例中资源协同系统的结构框图;
图14为一个实施例中资源协同装置的结构框图;
图15为另一个实施例中资源协同装置的结构框图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
图1为一个实施例中资源协同方法的应用环境图。参照图1,该应用环境包括终端110、终端120、第一服务器130和第二服务器140。第一服务器130可以是包括接入服务器131、访问控制服务器132和分布式缓存服务器133的服务器集群。终端和服务器、服务器和服务器之间可以通过网络进行通信,通信网络可以是无线或者有线通信网络,例如IP网络、蜂窝移动通信网络等。终端具体可以是台式终端或者移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑等中的至少一种。进一步地,终端中安装有各种系统或者应用的客户端,例如电商应用、电子银行应用、游戏应用、内容管理系统、客户关系管理系统和运营商资费配置系统等。
具体地,终端向第一服务器发送第一资源编辑请求,其中第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,第一服务器根据第一资源编辑请求获取待锁定的第一资源标识,根据第一身份标识信息锁定第一资源标识对应的第一资源,当第一资源锁定成功时,向终端返回对应的第一资源编辑权限信息。本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案相关的部分场景,并不构成对本申请方案应用环境的限定。
在一个实施例中,如图2所示,提供了一种资源协同方法,以该方法应用于图1中的第一服务器130为例进行说明,包括以下步骤:
S202,接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的。
其中,资源编辑请求用于请求对资源进行编辑,资源包括各种类型的资源,例如即时通讯软件中的资源、游戏应用中的资源、电商应用中的资源、电子银行应用中的资源、内容管理系统中的资源、客户关系管理系统和运营商资费配置系统中的资源等。即时通讯软件中的资源可以包括通讯账号的基本信息、好友的备注和标签等,游戏应用中的资源可以包括游戏账号的基本信息和游戏装备等,电商应用中的资源可以包括商家账号的基本信息、买家账号的基本信息、店铺信息、商品信息和订单信息等。电子银行应用中的资源可以包括银行账号的基本信息和转账信息等,内容管理系统中的资源可以包括内容实体,内容实体包括但不限于文件、表格、图片和视频。客户关系管理系统可以包括账号的基本信息和客户属性等。运营商资费配置系统中的资源可以包括账号的基本信息和资费套餐信息等。举个例子,资源编辑请求可以用于请求修改电商应用中一个订单内某商品的数量。
用户标识信息用于唯一标识用户,具体可以包括字母、数字和符号中至少一种字符的字符串。用户标识信息可以包括用户名和密码。客户端标识信息用于唯一标识客户端,具体可以包括字母、数字和符号中至少一种字符的字符串。身份标识信息用于唯一标识资源编辑请求对应的发送端的身份,身份标识信息是根据用户登录时发送的登陆请求所携带的用户标识信息和客户端标识信息生成的,具体可以包括字母、数字和符号中至少一种字符的字符串。同一用户通过不同客户端发送的资源编辑请求的身份标识信息是不同的,不同用户通过同一客户端发送的资源编辑请求的身份标识信息也是不同的,不同用户通过不同客户端发送的资源编辑请求的身份标识信息也是不同的。
在一个实施例中,身份标识信息可以包括辅助信息,辅助信息可以包括身份标识信息的过期时间、生成身份标识信息的服务器对应的服务器标识,身份标识信息的生成时间。身份标识信息可以是Token信息。
具体地,服务器接收终端发送的第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的。若多个资源编辑请求携带的身份标识信息中用户标识信息和客户端标识信息至少有一个不同,那么该多个资源编辑请求互不相同。
在一个实施例中,服务器也可以接收接入服务器发送的第一资源编辑请求,该第一资源编辑请求是由终端发送至接入服务器的。
在一个实施例中,用户通过终端发送第一资源编辑请求之前,用户可以在终端的客户端系统上先进行登录操作。
S204,根据第一资源编辑请求获取待锁定的第一资源标识。
其中,资源编辑请求携带资源标识。资源标识是一种标识,用于唯一标识资源,具体可以包括字母、数字和符号中至少一种字符的字符串。
具体地,第一资源编辑请求携带待编辑的第一资源的资源标识。服务器根据第一资源编辑请求获取待锁定的第一资源标识,接着,服务器可以根据第一资源标识确定对应的第一资源,进而锁定第一资源,再对第一资源进行编辑。
在一个实施例中,服务器在根据第一资源编辑请求获取待锁定的第一资源标识之前,服务器需验证第一身份标识信息。当第一身份标识信息验证成功时,服务器才可以根据第一资源编辑请求获取待锁定的第一资源标识,进而根据第一身份标识信息锁定第一资源标识对应的第一资源。当第一身份标识信息验证失败时,服务器不会获取待锁定的第一资源标识,无法锁定第一资源。
S206,根据第一身份标识信息锁定第一资源标识对应的第一资源。
具体地,服务器根据第一身份标识信息锁定第一资源标识对应的第一资源,即第一资源被第一用户通过第一客户端发送的资源编辑请求锁定。当第一资源已经锁定时,服务器只允许同一用户通过同一客户端发送的资源编辑请求对第一资源进行编辑。服务器可以通过分布式锁锁定第一资源标识对应的第一资源。服务器也可以在获取第一资源标识后,生成第一资源锁定请求,将第一资源锁定请求发送至分布式缓存服务器,其中,资源锁定请求携带身份标识信息。分布式缓存服务器接收到第一资源锁定请求后,分布式缓存服务器可以提供分布式锁,由分布式锁根据第一身份标识信息锁定第一资源标识对应的第一资源。
其中,分布式锁是控制分布式系统之间同步访问共享资源的一种方式。分布式系统是建立在网络之上的软件系统。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰从而保证资源的一致性,在这种情况下,便需要使用到分布式锁。分布式锁的实现可以基于数据库、基于缓存和基于Zookeeper(分布式系统的可靠协调系统)。分布式锁可以避免不同节点重复相同的工作,可以提高工作效率。分布式锁还可以避免逻辑混乱,提高工作正确性。
S208,当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
其中,资源编辑权限信息是用于表征资源编辑请求对应的发送端是否有权限编辑资源,即用于表征资源编辑请求的发送端是否可以编辑资源。当根据资源编辑请求成功锁定资源时,该资源编辑请求对应的发送端有权限编辑资源,可以对资源进行编辑;当根据资源编辑请求锁定资源失败时,该资源编辑请求的发送端没有权限编辑资源,不可以对资源进行编辑。
具体地,服务器根据第一身份标识信息锁定第一资源标识对应的第一资源,若第一资源没有被同一用户通过其他客户端发送的资源编辑请求锁定,或者第一资源没有被其他用户通过相同或者不同客户端发送的资源编辑请求锁定,此时,服务器可以锁定第一资源。当第一资源锁定成功时,服务器向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息,即当第一资源锁定成功时,服务器通知第一资源编辑请求对应的发送端有权限编辑第一资源。之后,服务器可以根据第一资源编辑请求对第一资源进行编辑,进而将第一资源的编辑结果返回至第一资源编辑请求对应的发送端。服务器也可以请求业务服务器对第一资源进行编辑。
上述资源协同方法中,服务器接收第一资源编辑请求,其中第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,根据第一资源编辑请求获取待锁定的第一资源标识,根据第一身份标识信息锁定第一资源标识对应的第一资源,当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。因此,根据用户标识信息和客户端标识信息锁定第一资源后,只有同一用户通过同一客户端才能对第一资源进行编辑,不同用户通过同一客户端或者同一用户通过其他客户端都无法对第一资源进行编辑,进而能够在编辑资源产生资源协同问题时有效避免冲突。
如图3所示,在一个实施例中,在步骤S202之前,即在接收第一资源编辑请求之前,还包括以下步骤:
S302,接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息。
具体地,服务器接收终端发送的登录请求,登录请求携带当前用户标识信息和当前客户端标识信息。其中,当前用户标识信息是发送该登录请求的用户的标识信息,当前客户端标识信息是发送该登录请求的客户端的标识信息。
在一个实施例中,服务器也可以接收接入服务器发送的登录请求,该登录请求是由终端发送至接入服务器的。
S304,根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存当前身份标识信息。
S306,向登录请求对应的发送端返回当前身份标识信息。
具体地,服务器在根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息之前,需要验证当前用户标识信息。当用户标识信息验证成功时,服务器可以根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存当前身份标识信息。服务器再向登录请求对应的发送端返回当前身份标识信息。进一步的,服务器可以向登录请求对应的发送端返回登录成功信息,即服务器通知登录请求对应的发送端登录成功。用户每次重新登录,服务器会生成新的身份标识信息,新的身份标识信息携带新的过期时间。进而,服务器会缓存新的身份标识信息,删除旧的身份标识信息,即用新的身份标识信息替换旧的身份标识信息,对身份标识信息进行更新。
在一个实施例中,当前身份标识信息可以是Token信息,Token信息可以携带Token信息的过期时间。服务器的数据库中存储有用户注册信息,用户注册信息包括但不限于用户名、密码、用户属性信息。用户属性信息包括用户的年龄、性别、职业、学历、专业、特长、爱好、邮箱、手机、电话和地理位置中的任意一项或任意组合。参考图4,客户端向接入服务器发送登录请求,登录请求携带当前用户标识信息和当前客户端标识信息。接入服务器接收到登录请求后,向访问控制服务器发起验证用户请求,其中,验证用户请求携带当前用户标识信息和当前客户端标识信息。访问控制服务器接收到验证用户请求后,验证用户标识信息。访问控制服务器获取当前用户标识信息中的用户名和密码,根据该用户名在数据库中查找对应的用户名及密码,当该当前用户标识信息中的用户名及密码和在数据库中查找到的用户名及对应的密码一致时,用户标识信息验证成功。当在数据库中查找不到该用户名,或者当该当前用户标识信息中的密码和在数据库中查找到的密码不一致时,用户标识信息验证失败,用户验证失败,此时,访问控制服务器可以向接入服务器返回用户验证失败信息,接入服务器再向客户端返回登录失败信息。进一步的,可以在客户端上提示用户输入的用户名或密码错误,也可以提示用户注册新账号。当用户标识信息验证成功时,访问控制服务器根据用户标识信息和客户端标识信息生成Token信息,并将Token信息发送至分布式缓存服务器,由分布式缓存服务器缓存Token信息。分布式缓存服务器向访问控制服务器返回缓存成功信息。访问控制服务器再向接入服务器返回用户验证成功信息和Token信息。最后,接入服务器将成功登录信息和Token信息返回给客户端。
上述实施例中,服务器接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息,根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存当前身份标识信息,再向登录请求对应的发送端返回当前身份标识信息。用户成功登录后发送的每次资源编辑请求都会携带该身份标识信息,该身份标识信息可以用于区分资源编辑请求对应的发送端。
在一个实施例中,如图5所示,资源协同方法还包括:
S502,接收第二资源编辑请求,第二资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的。
具体地,服务器接收终端发送的第二资源编辑请求,第二资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的。第一身份标识信息和第二身份标识信息携带的用户标识信息相同,但是客户端标识信息不同,所以第一身份标识信息和第二身份标识信息是不同的。可见,第一资源编辑请求和第二资源编辑请求是同一用户通过不同的客户端发送的。
S504,根据第二资源编辑请求获取待锁定的第一资源标识。
具体地,服务器根据第二资源编辑请求获取待锁定的第一资源标识。也就是,第一资源编辑请求和第二资源编辑请求对应的待编辑资源是相同的,即第一资源编辑请求和第二资源编辑请求是用于请求对同一资源进行编辑。
S506,当第一资源为锁定成功状态时,确定第二资源编辑请求锁定第一资源为失败状态,向第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
具体地,在同一时间内只允许一个用户通过一个客户端锁定同一资源。因此当根据第一资源编辑请求成功锁定第一资源时,服务器不能根据第二资源编辑请求再次锁定第一资源。服务器确定第二资源编辑请求锁定第一资源为失败状态,即第二资源编辑请求锁定第一资源失败。进而,服务器向第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息,即服务器通知第二资源编辑请求对应的发送端没有权限编辑第一资源,第一资源已被占用。
在一个实施例中,参照图6,访问控制服务器接收到Token信息验证请求后,验证Token信息是否有效,当Token信息验证有效时,访问控制服务器尝试锁定资源。若该资源未锁定,此时,访问控制服务器可以锁定该资源。当该资源锁定成功后,访问控制服务器向接入服务器返回Token信息验证成功信息。若该资源已经锁定,也就是有其他客户端正在编辑该资源,访问控制服务器向接入层服务器返回锁定失败消息,提示该资源已被占用,接入服务器再通知客户端该资源已经被其他客户端锁定,无法编辑。此时,用户可以选择等待或者去编辑其他资源。当Token信息验证失败,也就是用户主动退出客户端的登录状态,或者用户在客户端登录后长时间未操作导致Token信息过期失效时,访问控制服务器向接入服务器返回验证失败信息,提示需要重新登录,接入服务器再通知客户端需要重新登录。
在一个实施例中,如图7所示,资源协同方法还包括:
S702,当接收第一资源编辑请求时,同时接收到第三资源编辑请求,第三资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的。
S704,根据第三资源编辑请求获取待锁定的第二资源标识。
S706,根据第二身份标识信息锁定第二资源标识对应的第二资源。
S708,当第二资源锁定成功时,向第三资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
具体地,同一时间内同一用户通过不同客户端可以同时锁定不同的资源。当服务器接收第一资源编辑请求时,服务器同时接收到第三资源编辑请求,其中第三资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的。也就是,第三资源编辑请求和第一资源编辑请求是同一用户通过不同的客户端发送的。第三资源编辑请求携带第二资源标识,服务器根据第三资源编辑请求获取待锁定的第二资源标识,根据第二身份标识信息锁定第二资源标识对应的第二资源。也就是,第三资源编辑请求和第一资源编辑请求是分别用于请求对不同的资源进行编辑。此时,根据第一资源编辑请求成功锁定第一资源也不会影响对第二资源进行锁定。若第二资源没有被同一用户通过其他客户端发送的资源编辑请求锁定,或者第二资源没有被其他用户通过相同或者不同客户端发送的资源编辑请求锁定,此时,服务器可以锁定第二资源。当第二资源锁定成功时,服务器向第三资源编辑请求对应的发送端返回对应的第三资源编辑权限信息,即当第二资源锁定成功时,服务器通知第三资源编辑请求对应的发送端有权限编辑第二资源。之后,服务器可以根据第三资源编辑请求对第二资源进行编辑,进而将第二资源的编辑结果返回至第三资源编辑请求对应的发送端。服务器也可以请求业务服务器对第二资源进行编辑。
在一个实施例中,参考图7A,用户在手机上通过电商应用客户端发送第一资源编辑请求至服务器。同时,同一用户在电脑上通过电商网页客户端发送第二资源编辑请求至服务器。第一资源编辑请求和第二资源编辑请求是用于请求对订单A进行编辑。当服务器根据第一资源编辑请求锁定订单A时,服务器向发送第一资源编辑请求的应用客户端返回第一资源编辑权限信息,通知应用客户端可以编辑订单A,服务器向发送第二资源编辑请求的网页客户端返回第二资源编辑权限信息,通知网页客户端无法编辑订单A,订单A已被占用。同一用户还可以在电脑上通过电商网页客户端发送第三资源编辑请求,第三资源编辑请求是用于请求对订单B进行编辑。当服务器根据第一资源编辑请求锁定订单A时,服务器仍然可以锁定订单B。同一用户还可以在微信的电商小程序端向服务器发送其他资源编辑请求。
如图8所示,在一个实施例中,步骤S208,也就是当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息的步骤还包括:
S802,当第一资源锁定成功时,记录第一资源锁定成功状态的保持时长。
S804,当保持时长达到预设时长时,解除第一资源的锁定成功状态。
其中,当根据第一资源编辑请求成功锁定第一资源时,第一资源的锁定成功状态会保持预设时长,预设时长可以为自定义。在预设时长内,只有同一用户通过同一客户端才能对第一资源进行编辑。
具体地,当第一资源锁定成功时,服务器会自动保持第一资源锁定成功状态一段时间,便于用户在一段时间内对第一资源进行编辑时不收其他客户端的干扰。当第一资源锁定成功时,服务器可以开始记录第一资源锁定成功状态的保持时长,当保持时长达到预设时长时,服务器解除第一资源的锁定成功状态,释放第一资源。释放第一资源后,若服务器接收到其他资源编辑请求,其中其他资源编辑请求用于请求编辑第一资源,服务器可以根据其他资源编辑请求再次锁定第一资源。
S806,当保持时长未达到预设时长时,接收到第四资源编辑请求,第四资源编辑请求携带第一身份标识信息。
S808,根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新记录第一资源锁定成功状态的保持时长。
具体地,在一些情况下,用户对一个资源的编辑不只是单一的一个编辑请求,经常是断断续续的多个编辑请求。例如,用户在请求编辑一个订单中的商品数量成功后,再次请求编辑同一订单中的收货地址。因此,在资源锁定时间内,同一用户通过同一客户端发送新的资源编辑请求,即当第一资源锁定成功状态的保持时长未达到预设时长时,服务器接收到第四资源编辑请求,第四资源编辑请求携带第一身份标识信息。第四资源编辑请求和第一资源编辑请求用于请求编辑的资源是相同的,都是第一资源。此时,服务器会刷新第一资源的锁定状态保持时长。也就是,服务器会根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新开始记录第一资源锁定成功状态的保持时长。
在一个实施例中,也可以采用倒计时的方法刷新资源锁定成功状态的保持时长。具体地,预先设置第一资源的保持时长。当第一资源锁定成功时,第一资源锁定成功状态的保持时长开始倒计时,当倒计时结束时,解除第一资源的锁定成功状态,释放第一资源。若倒计时还未结束时,服务器接收到同一用户通过同一客户端发送的新的资源编辑请求,其中新的资源编辑请求用于请求编辑第一资源。服务器会根据该新的资源编辑请求重新开始第一资源锁定成功状态保持时长的倒计时。
在一个实施例中,参照图9,访问控制服务器向分布式缓存服务器发送资源锁定请求,其中资源锁定请求用于请求锁定资源,资源锁定请求携带Token信息。当该资源未锁定时,分布式缓存服务器通过分布式锁尝试锁定该资源。当锁定成功时,分布式缓存服务器对资源锁定成功状态的保持时长开始计时。资源锁定成功状态会保持预设时长,当该保持时长达到预设时长时,该资源的锁定成功状态会解除。当锁定失败时,分布式缓存服务器向访问控制服务器返回锁定失败消息。当该资源已经锁定时,分布式缓存服务器先判断锁定该资源的Token信息是否和资源锁定请求携带的Token信息一致。Token信息包括用户标识信息和客户端标识信息。当资源锁定请求携带的Token信息和锁定该资源的Token信息一致,即该资源是被同一用户通过同一客户端发送的资源编辑请求锁定的,此时,分布式缓存服务器重新对该资源锁定成功状态的保持时长计时。当资源锁定请求携带的Token信息和锁定该资源的Token信息不一致,即该资源是被同一用户通过其他客户端发送的资源编辑请求锁定的,或者该资源是被其他用户通过相同或不同客户端发送的资源编辑请求锁定时,分布式缓存服务器向访问控制服务器返回锁定失败信息。
在一个实施例中,在步骤S204,也就是根据第一资源编辑请求获取待锁定的第一资源标识之前,还包括以下步骤:
获取当前时间和第一身份标识信息的过期时间。
当该当前时间超过过期时间时,向第一资源编辑请求对应的发送端返回对应的重新登录提示信息。
当该当前时间未超过过期时间时,跳转至根据第一资源编辑请求获取待锁定的第一资源标识。
其中,身份标识信息的过期时间可以为自定义,具体可以是一天、一周或一个月等等。若当前时间超过身份标识信息的过期时间,表明该身份标识信息已过期,即该身份标识信息已失效。
具体地,在根据第一资源编辑请求获取待锁定的第一资源标识之前,服务器需先验证第一资源编辑请求携带的第一身份标识信息是否有效。服务器需先获取当前时间和第一身份标识信息的过期时间。当该当前时间未超过第一身份标识信息的过期时间时,该第一身份标识信息处于有效期内,该第一身份标识信息有效,服务器可以根据第一资源编辑请求获取待锁定的第一资源标识,根据第一身份标识信息通过分布式锁锁定第一资源标识对应的第一资源。当该当前时间超过该过期时间时,该第一身份标识信息已失效,服务器需向第一资源编辑请求对应的发送端返回对应的重新登录提示信息,即服务器通知第一资源编辑请求对应的发送端需要重新登录。进一步的,发送端的当前界面可以自动跳转到登录界面,提示用户重新登录。
在一个实施例中,在步骤S208,也就是当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息之后,还包括:
根据第一资源编辑请求发送对应的业务操作执行请求至业务服务器。
向第一资源编辑请求对应的发送端返回对应的业务操作结果。
其中,业务操作执行请求用于请求业务服务器执行业务操作。
具体地,当第一资源锁定成功后,服务器根据第一资源编辑请求发送对应的业务操作执行请求至业务服务器。业务服务器收到业务操作执行请求后,执行对应的业务操作,再将业务操作结果返回至服务器,服务器再向第一资源编辑请求对应的发送端返回该业务操作结果。例如,用户发起一个资源编辑请求,该资源编辑请求用于请求将电商应用中一个订单内某商品的数量修改为2。服务器锁定该订单后,向业务服务器发送业务操作执行请求,该业务操作执行请求用于请求将该订单中该商品的数量修改为2。当业务服务器将该商品的数量修改为2后,业务服务器将上述业务操作结果返回给服务器,服务器向该资源编辑请求的发送端返回该业务操作结果,最终发送端的客户端上该订单中该商品的数量显示为2。
在一个实施例中,参照图10,客户端向接入服务器发送资源编辑请求,其中资源编辑请求携带Token信息和待编辑资源的资源标识。接入服务器收到资源编辑请求后,请求访问控制服务器验证Token信息和锁定该资源标识对应的待编辑资源。访问控制服务器成功验证Token信息后,由分布式缓存服务器提供的分布式锁锁定待编辑资源。当待编辑资源锁定成功后,分布式缓存服务器向访问控制服务器返回锁定成功消息。访问控制服务器再向接入服务器返回验证成功消息。接入服务器接收到访问控制服务器的验证成功消息后,请求业务服务器执行业务操作,业务服务器接收到该请求后,执行对应的业务操作,进而向接入服务器返回业务操作结果。接入服务器接收到业务操作结果后,再将该业务操作结果返回给客户端。
在一个实施例中,在步骤S208,也就是当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息之后,还包括:
当满足释放条件时,解除第一资源的锁定成功状态,释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一身份标识信息的过期时间中的至少一种。
具体地,当第一资源锁定成功后,若满足释放条件,服务器可以解除第一资源的锁定成功状态,释放第一资源。释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一身份标识信息的过期时间中的至少一种。
当第一资源编辑请求对应的发送端接收到业务操作结果后,可以向服务器发送资源释放请求,服务器根据该资源释放请求解除第一资源的锁定成功状态,释放第一资源。例如,用户发送资源编辑请求,欲将订单中某商品的数量修改为2。当该商品的数量成功修改,用户可以在终端发起资源释放请求,服务器接收到该资源释放请求后,立即解除该订单的锁定成功状态。
当根据第一资源编辑请求成功锁定第一资源后,服务器接收到第一资源编辑请求对应的发送端发送的登录退出请求,服务器根据该登录退出请求解除第一资源的锁定成功状态,释放第一资源。也就是,用户退出登录,服务器会立即释放第一资源。
当根据第一资源编辑请求成功锁定第一资源后,若当前时间超过第一资源编辑请求携带的第一身份标识信息的过期时间,服务器自动解除第一资源的锁定成功状态,释放第一资源。例如,用户登录后长时间未操作导致当前时间超过身份标识信息的过期时间,服务器会立即释放资源。
当第一资源被释放后,服务器可以根据其他资源编辑请求再次锁定第一资源。
在一个具体的实施例中,如图11所示,提供了一种资源协同方法,具体可以包括以下步骤:
S1102,接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息。
S1104,根据当前用户标识信息和当前客户端标识信息生成对应的当前Token信息,并缓存该当前Token信息。
S1106,向登录请求对应的发送端返回该当前Token信息。
S1108,接收第一资源编辑请求,第一资源编辑请求携带第一Token信息,第一Token信息是根据第一用户标识信息和第一客户端标识信息生成的。
S1110,获取当前时间和第一Token信息的过期时间。
S1112,当该当前时间超过过期时间时,向第一资源编辑请求对应的发送端返回对应的重新登录提示信息。
S1114,当该当前时间未超过过期时间时,根据第一资源编辑请求获取待锁定的第一资源标识。
S1116,根据第一身份标识信息通过分布式锁锁定第一资源标识对应的第一资源。
S1118,当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回有权限编辑第一资源信息。
S1120,接收第二资源编辑请求,第二资源编辑请求携带第二Token信息,第二Token信息是根据第一用户标识信息和第二客户端标识信息生成的。
S1122,根据第二资源编辑请求获取待锁定的第一资源标识。
S1124,当第一资源为锁定成功状态时,确定第二资源编辑请求锁定第一资源为失败状态,向第二资源编辑请求对应的发送端返回没有权限编辑第一资源信息。
S1126,当接收第一资源编辑请求时,同时接收到第三资源编辑请求,第三资源编辑请求携带第二Token信息,第二Token信息是根据第一用户标识信息和第二客户端标识信息生成的。
S1128,根据第三资源编辑请求获取待锁定的第二资源标识。
S1130,根据第二Token信息锁定第二资源标识对应的第二资源。
S1132,当第二资源锁定成功时,向第三资源编辑请求对应的发送端返回有权限编辑第二资源信息。
S1134,当第一资源锁定成功时,记录第一资源锁定成功状态的保持时长。
S1136,当保持时长达到预设时长时,解除第一资源的锁定成功状态。
S1138,当保持时长未达到预设时长时,接收到第四资源编辑请求,第四资源编辑请求携带第一Token信息。
S1140,根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新记录第一资源锁定成功状态的保持时长。
S1142,根据第一资源编辑请求发送对应的业务操作执行请求至业务服务器。
S1144,向第一资源编辑请求对应的发送端返回对应的业务操作结果。
S1146,当满足释放条件时,解除第一资源的锁定成功状态,释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一Token信息的过期时间中的至少一种。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图12所示,提供了一种资源协同系统,该系统包括第一服务器1202和第二服务器1204,其中:
第一服务器1202,用于接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,根据第一资源编辑请求获取待锁定的第一资源标识,生成对应的第一资源锁定请求,将第一资源锁定请求发送至第二服务器。
在一个实施例中,第一服务器可以直接接收终端发送的第一资源编辑请求。第一服务器也可以接收接入服务器发送的第一资源编辑请求,该第一资源编辑请求是由终端发送至接入服务器的。
第二服务器1204,用于根据第一资源锁定请求锁定第一资源标识对应的第一资源,当第一资源锁定成功时,向第一服务器返回对应的第一锁定成功信息。
第一服务器1202还用于根据第一锁定成功信息向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
在一个实施例中,第一服务器可以直接向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。第一服务器也可以通过接入服务器向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
在一个实施例中,第一服务器1202还用于接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息,根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息。第二服务器1204还用于缓存当前身份标识信息。第一服务器1202还用于向登录请求对应的发送端返回当前身份标识信息。
在一个实施例中,第一服务器1202还用于接收第二资源编辑请求,第二资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的,根据第二资源编辑请求获取待锁定的第一资源标识,生成对应的第二资源锁定请求,将第二资源锁定请求发送至第二服务器。第二服务器1204还用于当第一资源为锁定成功状态时,确定第二资源锁定请求锁定第一资源为失败状态,向第一服务器返回对应的锁定失败信息。第一服务器1202还用于根据锁定失败信息向第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
在一个实施例中,第一服务器1202还用于当接收第一资源编辑请求时,同时接收到第三资源编辑请求,第三资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的,根据第三资源编辑请求获取待锁定的第二资源标识,生成对应的第三资源锁定请求,将第三资源锁定请求发送至第二服务器。第二服务器1204还用于根据第三资源锁定请求锁定第二资源标识对应的第二资源,当第二资源锁定成功时,向第一服务器返回对应的第二锁定成功信息。第一服务器1202还用于根据第二锁定成功信息向第一资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
在一个实施例中,第二服务器1204还用于当第一资源锁定成功时,记录第一资源锁定成功状态的保持时长;当保持时长达到预设时长时,解除第一资源的锁定成功状态。
在一个实施例中,第二服务器1204还用于当保持时长未达到预设时长时,接收到第四资源锁定请求,第四资源锁定请求是第一服务器根据接收到的第四资源编辑请求生成并发送至第二服务器的,第四资源锁定请求携带第一身份标识信息;根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新记录第一资源锁定成功状态的保持时长。
在一个实施例中,第一服务器1202还用于获取当前时间和第一身份标识信息的过期时间;当该当前时间超过过期时间时,向第一资源编辑请求对应的发送端返回对应的重新登录提示信息。
在一个实施例中,第二服务器1204还用于当满足释放条件时,解除第一资源的锁定成功状态;释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一身份标识信息的过期时间中的至少一种。
在一个实施例中,如图13所示,该系统还包括第三服务器1206,其中:
第三服务器1206,用于接收业务操作执行请求,根据业务操作执行请求执行对应的业务操作,再向终端返回对应的业务操作结果。
在一个实施例中,业务操作执行请求可以是由第一服务器根据第一资源编辑请求发送至第三服务器,也可以是接入服务器根据第一资源编辑请求发送至第三服务器。
在一个实施例中,第一资源包括订单信息、账户属性、内容实体、客户属性和资费套餐信息中的至少一种。
如图14所示,在一个实施例中,提供了一种资源协同装置1400,包括:资源编辑请求接收模块1402、资源标识获取模块1404、资源锁定模块1406和资源编辑权限信息发送模块1408,其中:
资源编辑请求接收模块1402,用于接收第一资源编辑请求,第一资源编辑请求携带第一身份标识信息,第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的。
资源标识获取模块1404,用于根据第一资源编辑请求获取待锁定的第一资源标识。
资源锁定模块1406,用于根据第一身份标识信息锁定第一资源标识对应的第一资源;
资源编辑权限信息发送模块1408,当第一资源锁定成功时,向第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息。
在一个实施例中,如图15所示,该资源协同装置还包括:
登录模块1401,用于接收登录请求,登录请求携带当前用户标识信息和当前客户端标识信息;根据当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存当前身份标识信息;向登录请求对应的发送端返回当前身份标识信息。
在一个实施例中,资源编辑请求接收模块1402还用于接收第二资源编辑请求,第二资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的;资源标识获取模块1404还用于根据第二资源编辑请求获取待锁定的第一资源标识;资源编辑权限信息发送模块1408还用于当第一资源为锁定成功状态时,确定第二资源编辑请求锁定第一资源为失败状态,向第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
在一个实施例中,资源编辑请求接收模块1402还用于当接收第一资源编辑请求时,同时接收到第三资源编辑请求,第三资源编辑请求携带第二身份标识信息,第二身份标识信息是根据第一用户标识信息和第二客户端标识信息生成的;资源标识获取模块1404还用于根据第三资源编辑请求获取待锁定的第二资源标识;资源锁定模块1406还用于根据第二身份标识信息锁定第二资源标识对应的第二资源;资源编辑权限信息发送模块1408还用于当第二资源锁定成功时,向第三资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
在一个实施例中,资源编辑权限信息发送模块1408还用于当第一资源锁定成功时,记录第一资源锁定成功状态的保持时长;当保持时长达到预设时长时,解除第一资源的锁定成功状态。
在一个实施例中,资源编辑权限信息发送模块1408还用于当保持时长未达到预设时长时,接收到第四资源编辑请求,第四资源编辑请求携带第一身份标识信息;根据第四资源编辑请求的发送时间作为第一资源锁定成功状态的更新起始时间点,重新记录第一资源锁定成功状态的保持时长。
在一个实施例中,如图15所示,该资源协同装置还包括:
身份标识信息验证模块1403,用于获取当前时间和第一身份标识信息的过期时间;当该当前时间超过过期时间时,向第一资源编辑请求对应的发送端返回对应的重新登录提示信息;当该当前时间未超过过期时间时,跳转至根据第一资源编辑请求获取待锁定的第一资源标识。
在一个实施例中,如图15所示,该资源协同装置还包括:
业务操作执行请求执行模块1409,用于根据第一资源编辑请求发送对应的业务操作执行请求至业务服务器;向第一资源编辑请求对应的发送端返回对应的业务操作结果。
在一个实施例中,如图15所示,该资源协同装置还包括:
锁定成功状态解除模块1410,用于当满足释放条件时,解除第一资源的锁定成功状态;释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过第一身份标识信息的过期时间中的至少一种。
在一个实施例中,第一资源包括订单信息、账户属性、内容实体、客户属性和资费套餐信息中的至少一种。
关于资源协同装置的具体限定可以参见上文中对于资源协同方法的限定,在此不再赘述。上述资源协同装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图16所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储身份标识信息等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种资源协同方法。
本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源协同方法的步骤。此处资源协同方法的步骤可以是上述各个实施例的资源协同方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源协同方法的步骤。此处资源协同方法的步骤可以是上述各个实施例的资源协同方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (25)

1.一种资源协同方法,所述方法包括:
接收第一资源编辑请求,所述第一资源编辑请求携带第一身份标识信息,所述第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;所述第一身份标识信息是以所述第一用户标识信息登录所述第一客户端标识信息对应的客户端时生成的,所述第一资源编辑请求是在成功登录后生成的,每次重新登录则生成新的身份标识信息;
根据所述第一资源编辑请求获取待锁定的第一资源标识;
根据所述第一身份标识信息锁定所述第一资源标识对应的第一资源;
当所述第一资源锁定成功时,向所述第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息;所述第一资源编辑权限信息用于表征有权限编辑所述第一资源;
当所述第一资源锁定失败时,向所述第一资源编辑请求对应的发送端返回对应的第二资源编辑权限信息;所述第二资源编辑权限信息用于表征没有权限编辑所述第一资源;
当所述第一资源锁定成功时,记录所述第一资源锁定成功状态的保持时长;
当所述保持时长达到预设时长时,解除所述第一资源的锁定成功状态;
当所述保持时长未达到所述预设时长时,接收到第四资源编辑请求,所述第四资源编辑请求携带所述第一身份标识信息,根据所述第四资源编辑请求的发送时间作为所述第一资源锁定成功状态的更新起始时间点,重新记录所述第一资源锁定成功状态的保持时长。
2.根据权利要求1所述的方法,其特征在于,所述接收第一资源编辑请求之前,所述方法还包括:
接收登录请求,所述登录请求携带当前用户标识信息和当前客户端标识信息;
根据所述当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存所述当前身份标识信息;
向所述登录请求对应的发送端返回所述当前身份标识信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收第二资源编辑请求,所述第二资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的;
根据所述第二资源编辑请求获取待锁定的所述第一资源标识;
当所述第一资源为锁定成功状态时,确定所述第二资源编辑请求锁定所述第一资源为失败状态,向所述第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收所述第一资源编辑请求时,同时接收到第三资源编辑请求,所述第三资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的;
根据所述第三资源编辑请求获取待锁定的第二资源标识;
根据所述第二身份标识信息锁定所述第二资源标识对应的第二资源;
当所述第二资源锁定成功时,向所述第三资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一资源编辑请求获取待锁定的第一资源标识之前,所述方法还包括:
获取当前时间和所述第一身份标识信息的过期时间;
当所述当前时间超过所述过期时间时,向所述第一资源编辑请求对应的发送端返回对应的重新登录提示信息;
当所述当前时间未超过所述过期时间时,跳转至所述根据所述第一资源编辑请求获取待锁定的第一资源标识。
6.根据权利要求1所述的方法,其特征在于,当所述第一资源锁定成功时,向所述第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息之后,所述方法还包括:
根据所述第一资源编辑请求发送对应的业务操作执行请求至业务服务器;
向所述第一资源编辑请求对应的发送端返回对应的业务操作结果。
7.根据权利要求1所述的方法,其特征在于,当所述第一资源锁定成功时,向所述第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息之后,所述方法还包括:
当满足释放条件时,解除所述第一资源的锁定成功状态;
所述释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过所述第一身份标识信息的过期时间中的至少一种。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述第一资源包括订单信息、账户属性、内容实体、客户属性和资费套餐信息中的至少一种。
9.一种资源协调系统,所述系统包括:
第一服务器,用于接收第一资源编辑请求,所述第一资源编辑请求携带第一身份标识信息,所述第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的,根据所述第一资源编辑请求获取待锁定的第一资源标识,生成对应的第一资源锁定请求,将所述第一资源锁定请求发送至第二服务器;所述第一身份标识信息是以所述第一用户标识信息登录所述第一客户端标识信息对应的客户端时生成的,所述第一资源编辑请求是在成功登录后生成的,每次重新登录则生成新的身份标识信息;
第二服务器,用于根据所述第一资源锁定请求锁定所述第一资源标识对应的第一资源,当所述第一资源锁定成功时,向所述第一服务器返回对应的第一锁定成功信息;
所述第一服务器还用于根据所述第一锁定成功信息向所述第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息;所述第一资源编辑权限信息用于表征有权限编辑所述第一资源;
所述第二服务器还用于当所述第一资源锁定失败时,向所述第一服务器返回对应的第一锁定失败信息;
所述第一服务器还用于根据所述第一锁定失败信息向所述第一资源编辑请求对应的发送端返回对应的第二资源编辑权限信息;所述第二资源编辑权限信息用于表征没有权限编辑所述第一资源;
所述第二服务器还用于当所述第一资源锁定成功时,记录所述第一资源锁定成功状态的保持时长;当所述保持时长达到预设时长时,解除所述第一资源的锁定成功状态;当所述保持时长未达到所述预设时长时,接收到第四资源编辑请求,所述第四资源编辑请求携带所述第一身份标识信息,根据所述第四资源编辑请求的发送时间作为所述第一资源锁定成功状态的更新起始时间点,重新记录所述第一资源锁定成功状态的保持时长。
10.根据权利要求9所述的系统,其特征在于,所述第一服务器还用于接收第二资源编辑请求,所述第二资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的,根据所述第二资源编辑请求获取待锁定的所述第一资源标识,生成对应的第二资源锁定请求,将所述第二资源锁定请求发送至第二服务器;
所述第二服务器还用于当所述第一资源为锁定成功状态时,确定所述第二资源锁定请求锁定所述第一资源为失败状态,向所述第一服务器返回对应的第二锁定失败信息;
所述第一服务器还用于根据所述第二锁定失败信息向所述第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
11.根据权利要求9所述的系统,其特征在于,所述第一服务器还用于当接收所述第一资源编辑请求时,接收到第三资源编辑请求,所述第三资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的,根据所述第三资源编辑请求获取待锁定的第二资源标识,生成对应的第三资源锁定请求,将所述第三资源锁定请求发送至第二服务器;
所述第二服务器还用于根据所述第三资源锁定请求锁定所述第二资源标识对应的第二资源,当所述第二资源锁定成功时,向所述第一服务器返回对应的第二锁定成功信息;
所述第一服务器还用于根据所述第二锁定成功信息向所述第一资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
12.根据权利要求9所述的系统,其特征在于,所述第一服务器还用于接收登录请求,所述登录请求携带当前用户标识信息和当前客户端标识信息;根据所述当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息;
所述第二服务器还用于缓存所述当前身份标识信息;
所述第一服务器还用于向所述登录请求对应的发送端返回所述当前身份标识信息。
13.根据权利要求9所述的系统,其特征在于,所述第一服务器还用于获取当前时间和所述第一身份标识信息的过期时间;当所述当前时间超过所述过期时间时,向所述第一资源编辑请求对应的发送端返回对应的重新登录提示信息。
14.根据权利要求9所述的系统,其特征在于,所述第二服务器还用于当满足释放条件时,解除所述第一资源的锁定成功状态;所述释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过所述第一身份标识信息的过期时间中的至少一种。
15.根据权利要求9所述的系统,其特征在于,所述系统还包括:
第三服务器,用于接收所述第一资源编辑请求对应的业务操作执行请求,根据所述业务操作执行请求执行对应的业务操作,向所述第一资源编辑请求对应的发送端返回对应的业务操作结果。
16.一种资源协同装置,所述装置包括:
资源编辑请求接收模块,用于接收第一资源编辑请求,所述第一资源编辑请求携带第一身份标识信息,所述第一身份标识信息是根据第一用户标识信息和第一客户端标识信息生成的;所述第一身份标识信息是以所述第一用户标识信息登录所述第一客户端标识信息对应的客户端时生成的,所述第一资源编辑请求是在成功登录后生成的,每次重新登录则生成新的身份标识信息;
资源标识获取模块,用于根据所述第一资源编辑请求获取待锁定的第一资源标识;
资源锁定模块,用于根据所述第一身份标识信息锁定所述第一资源标识对应的第一资源;
资源编辑权限信息发送模块,用于当所述第一资源锁定成功时,向所述第一资源编辑请求对应的发送端返回对应的第一资源编辑权限信息;所述第一资源编辑权限信息用于表征有权限编辑所述第一资源;当所述第一资源锁定失败时,向所述第一资源编辑请求对应的发送端返回对应的第二资源编辑权限信息;所述第二资源编辑权限信息用于表征没有权限编辑所述第一资源;
所述资源编辑权限信息发送模块还用于当所述第一资源锁定成功时,记录所述第一资源锁定成功状态的保持时长;当所述保持时长达到预设时长时,解除所述第一资源的锁定成功状态;当所述保持时长未达到所述预设时长时,接收到第四资源编辑请求,所述第四资源编辑请求携带所述第一身份标识信息,根据所述第四资源编辑请求的发送时间作为所述第一资源锁定成功状态的更新起始时间点,重新记录所述第一资源锁定成功状态的保持时长。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括:
登录模块,用于接收登录请求,所述登录请求携带当前用户标识信息和当前客户端标识信息;根据所述当前用户标识信息和当前客户端标识信息生成对应的当前身份标识信息,并缓存所述当前身份标识信息;向所述登录请求对应的发送端返回所述当前身份标识信息。
18.根据权利要求16所述的装置,其特征在于,所述资源编辑请求接收模块还用于接收第二资源编辑请求,所述第二资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的;
所述资源标识获取模块还用于根据所述第二资源编辑请求获取待锁定的所述第一资源标识;
所述资源编辑权限信息发送模块还用于当所述第一资源为锁定成功状态时,确定所述第二资源编辑请求锁定所述第一资源为失败状态,向所述第二资源编辑请求对应的发送端返回对应的第二资源编辑权限信息。
19.根据权利要求16所述的装置,其特征在于,所述资源编辑请求接收模块还用于当接收所述第一资源编辑请求时,同时接收到第三资源编辑请求,所述第三资源编辑请求携带第二身份标识信息,所述第二身份标识信息是根据所述第一用户标识信息和第二客户端标识信息生成的;
所述资源标识获取模块还用于根据所述第三资源编辑请求获取待锁定的第二资源标识;
所述资源锁定模块还用于根据所述第二身份标识信息锁定所述第二资源标识对应的第二资源;
所述资源编辑权限信息发送模块还用于当所述第二资源锁定成功时,向所述第三资源编辑请求对应的发送端返回对应的第三资源编辑权限信息。
20.根据权利要求16所述的装置,其特征在于,所述装置还包括:
身份标识信息验证模块,用于获取当前时间和所述第一身份标识信息的过期时间;当所述当前时间超过所述过期时间时,向所述第一资源编辑请求对应的发送端返回对应的重新登录提示信息;当所述当前时间未超过所述过期时间时,跳转至所述根据所述第一资源编辑请求获取待锁定的第一资源标识。
21.根据权利要求16所述的装置,其特征在于,所述装置还包括:
业务操作执行请求执行模块,用于根据所述第一资源编辑请求发送对应的业务操作执行请求至业务服务器;向所述第一资源编辑请求对应的发送端返回对应的业务操作结果。
22.根据权利要求16所述的装置,其特征在于,所述装置还包括:
锁定成功状态解除模块,用于当满足释放条件时,解除所述第一资源的锁定成功状态;所述释放条件包括接收资源释放请求、接收登录退出请求和当前时间超过所述第一身份标识信息的过期时间中的至少一种。
23.根据权利要求16至22中任一项所述的装置,其特征在于,所述第一资源包括订单信息、账户属性、内容实体、客户属性和资费套餐信息中的至少一种。
24.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述方法的步骤。
25.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
CN201910982825.0A 2019-10-16 2019-10-16 资源协同方法、装置、计算机设备和存储介质 Active CN111190742B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910982825.0A CN111190742B (zh) 2019-10-16 2019-10-16 资源协同方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910982825.0A CN111190742B (zh) 2019-10-16 2019-10-16 资源协同方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111190742A CN111190742A (zh) 2020-05-22
CN111190742B true CN111190742B (zh) 2024-02-09

Family

ID=70707504

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910982825.0A Active CN111190742B (zh) 2019-10-16 2019-10-16 资源协同方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111190742B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112651720A (zh) * 2021-01-04 2021-04-13 中国铁道科学研究院集团有限公司电子计算技术研究所 基于web实时造型的铁路BIM系统的多用户协作编辑方法及装置
CN115828868A (zh) * 2023-02-09 2023-03-21 成都字节流科技有限公司 一种单次就诊数据编辑响应方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262620A (zh) * 2011-08-04 2011-11-30 无锡永中软件有限公司 一种文档协作方法
CN103279510A (zh) * 2013-05-17 2013-09-04 上海市计量测试技术研究院 多数据库非连续性在线同步的方法
WO2015035895A1 (en) * 2013-09-11 2015-03-19 Tencent Technology (Shenzhen) Company Limited Methods, devices, and systems for account login
CN109598477A (zh) * 2017-09-30 2019-04-09 北京搜狗科技发展有限公司 词条编辑控制方法、设备及存储介质
CN110324387A (zh) * 2018-03-30 2019-10-11 武汉斗鱼网络科技有限公司 基于WebSocket实现文档锁的方法、存储介质、设备及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8756704B2 (en) * 2008-12-15 2014-06-17 International Business Machines Corporation User impersonation and authentication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262620A (zh) * 2011-08-04 2011-11-30 无锡永中软件有限公司 一种文档协作方法
CN103279510A (zh) * 2013-05-17 2013-09-04 上海市计量测试技术研究院 多数据库非连续性在线同步的方法
WO2015035895A1 (en) * 2013-09-11 2015-03-19 Tencent Technology (Shenzhen) Company Limited Methods, devices, and systems for account login
CN109598477A (zh) * 2017-09-30 2019-04-09 北京搜狗科技发展有限公司 词条编辑控制方法、设备及存储介质
CN110324387A (zh) * 2018-03-30 2019-10-11 武汉斗鱼网络科技有限公司 基于WebSocket实现文档锁的方法、存储介质、设备及系统

Also Published As

Publication number Publication date
CN111190742A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
CN108573371B (zh) 数据审批方法、装置、计算机设备和存储介质
CN111191221B (zh) 权限资源的配置方法、装置和计算机可读存储介质
CN111177616B (zh) 页面恢复显示方法、装置、计算机设备和存储介质
CN111190742B (zh) 资源协同方法、装置、计算机设备和存储介质
US20100088270A1 (en) Data versioning concept including time dependency and active and inactive states
CN112860778B (zh) 桌面应用程序的数据库管理方法、装置、设备和介质
CN109144487B (zh) 进件业务开发方法、装置、计算机设备和存储介质
CN108365958A (zh) 账号登录的验证方法、装置、计算机设备和存储介质
CN110336786B (zh) 消息发送方法、装置、计算机设备和存储介质
CN108512948B (zh) 通讯录更新方法、装置、计算机设备和存储介质
CN108366132B (zh) 服务器间的服务管理方法、装置、计算机设备和存储介质
CN110597820B (zh) 基于区块链的信息处理方法、装置、存储介质和设备
CN110611725B (zh) 节点访问方法、装置、计算机设备和存储介质
CN112506481A (zh) 业务数据交互方法、装置、计算机设备和存储介质
CN113271364B (zh) 服务编排数据的共享系统、方法、计算机设备及存储介质
CN109040284B (zh) 信息展示及信息推送方法、装置、设备和存储介质
CN111260475A (zh) 一种数据处理方法、区块链节点设备及存储介质
CN110445757A (zh) 人事信息加密方法、装置、计算机设备和存储介质
KR100692999B1 (ko) 다수의 키 캐시 매니저가 보안 칩의 암호화 키 저장부리소스를 공유하는 방법 및 컴퓨터 판독가능 기록 매체
CN112819617A (zh) 数据上链方法及装置、电子设备、存储介质
CN113361236A (zh) 一种编辑文档的方法和装置
CN111222153A (zh) 应用程序权限管理方法、装置和存储介质
CN112543194B (zh) 移动终端登录方法、装置、计算机设备和存储介质
CN110995437B (zh) 基于etc系统的用户信息录入方法、装置、设备和存储介质
CN113112270B (zh) 基于区块链的数据组织方法

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