CN113553074B - 小程序分发控制方法、装置、电子设备以及存储介质 - Google Patents
小程序分发控制方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN113553074B CN113553074B CN202110841089.4A CN202110841089A CN113553074B CN 113553074 B CN113553074 B CN 113553074B CN 202110841089 A CN202110841089 A CN 202110841089A CN 113553074 B CN113553074 B CN 113553074B
- Authority
- CN
- China
- Prior art keywords
- target
- applet
- open source
- identification information
- source host
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 230000008569 process Effects 0.000 claims abstract description 26
- 230000004044 response Effects 0.000 claims abstract description 14
- 235000019580 granularity Nutrition 0.000 description 15
- 238000004590 computer program Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000006399 behavior Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000012954 risk control Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开提供了小程序分发控制方法、装置、电子设备以及存储介质,涉及计算机技术领域,尤其涉及信息流领域。具体实现方案为:确定针对开源宿主配置的配额信息,其中,配额信息用于表征所述开源宿主在预设时长内访问小程序的访问阈值;响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序;以及根据配额信息确定目标小程序的分发方式,其中,分发方式包括将目标小程序分发至目标开源宿主或者中断目标小程序向目标开源宿主的分发过程。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及信息流领域。
背景技术
小程序(Mini Program)是一种不需要下载安装即可使用的应用,通常依赖于客户端存在。客户端给小程序所提供的环境称为宿主环境。小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能。
发明内容
本公开提供了一种小程序分发控制方法、装置、电子设备以及存储介质。
根据本公开的一方面,提供了一种小程序分发控制方法,包括:确定针对开源宿主配置的配额信息,其中,所述配额信息用于表征所述开源宿主在预设时长内访问小程序的访问阈值;响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序;以及根据所述配额信息确定所述目标小程序的分发方式,其中,所述分发方式包括将所述目标小程序分发至所述目标开源宿主或者中断所述目标小程序向所述目标开源宿主的分发过程。
根据本公开的另一方面,提供了一种小程序分发控制装置,包括:第一确定模块,用于确定针对开源宿主配置的配额信息,其中,所述配额信息用于表征所述开源宿主在预设时长内访问小程序的访问阈值;第二确定模块,用于响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序;以及第三确定模块,用于根据所述配额信息确定所述目标小程序的分发方式,其中,所述分发方式包括将所述目标小程序分发至所述目标开源宿主或者中断所述目标小程序向所述目标开源宿主的分发过程。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的小程序分发控制方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行如上所述的小程序分发控制方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的小程序分发控制方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1示意性示出了根据本公开实施例的可以应用小程序分发控制方法及装置的示例性***架构;
图2示意性示出了根据本公开实施例的小程序分发控制方法的流程图;
图3示意性示出了根据本公开实施例的控制小程序分发的示意图;
图4示意性示出了根据本公开实施例的配额服务的工作流程图;
图5示意性示出了根据本公开实施例的内存判断的流程图;
图6示意性示出了根据本公开实施例的小程序分发控制装置的框图;以及
图7示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
发明人在实现本公开构思的过程中发现,对于开源小程序,由于其开源的特性,无法限制宿主的大批量拉取行为,容易影响小程序信息的安全性以及小程序分发服务的稳定性。针对该问题,目前还没有一种有效的线上解决方案。
为了应对开源多宿主面临的潜在风险,本公开提供了一种针对小程序分发的宿主配额机制。在宿主需要获取小程序的情况下,为宿主增加分发阈值和干预,防止开源宿主有意伪造用户行为拉取小程序包信息,造成小程序包信息全量泄露等问题。
图1示意性示出了根据本公开实施例的可以应用小程序分发控制方法及装置的示例性***架构。
需要注意的是,图1所示仅为可以应用本公开实施例的***架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、***、环境或场景。例如,在另一实施例中,可以应用小程序分发控制方法及装置的示例性***架构可以包括终端设备,但终端设备可以无需与服务器进行交互,即可实现本公开实施例提供的小程序分发控制方法及装置。
如图1所示,根据该实施例的***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如知识阅读类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的内容提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(″Virtual PrivateServer″,或简称″VPS″)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
需要说明的是,本公开实施例所提供的小程序分发控制方法一般可以由终端设备101、102、或103执行。相应地,本公开实施例所提供的小程序分发控制装置也可以设置于终端设备101、102、或103中。
或者,本公开实施例所提供的小程序分发控制方法一般也可以由服务器105执行。相应地,本公开实施例所提供的小程序分发控制装置一般可以设置于服务器105中。本公开实施例所提供的小程序分发控制方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的小程序分发控制装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
例如,在开源宿主请求访问小程序时,终端设备101、102、103可以首先确定针对开源宿主配置的配额信息。其中,配额信息用于表征开源宿主在预设时长内访问小程序的访问阈值。然后响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序。根据配额信息确定目标小程序的分发方式。其中,分发方式包括将目标小程序分发至目标开源宿主或者中断目标小程序向目标开源宿主的分发过程。或者由能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群根据配额信息确定目标小程序的分发方式,并根据该确定的分发方式将目标小程序分发至目标开源宿主或者中断目标小程序向目标开源宿主的分发过程。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示意性示出了根据本公开实施例的小程序分发控制方法的流程图。
如图2所示,该方法200包括操作S210~S230。
在操作S210,确定针对开源宿主配置的配额信息。其中,配额信息用于表征开源宿主在预设时长内访问小程序的访问阈值。
在操作S220,响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序。
在操作S230,根据配额信息确定目标小程序的分发方式。其中,分发方式包括将目标小程序分发至目标开源宿主或者中断目标小程序向目标开源宿主的分发过程。
根据本公开的实施例,开源宿主例如包括能够访问开源小程序并实现小程序相应功能的各种应用软件、开源网站等。配额信息可以为基于宿主维度、多时间粒度配置的用于限制开源宿主在预设时长的时间段内访问小程序的最大额度的信息。访问阈值,即该最大额度,可以根据宿主维度的不同、时间粒度的不同等其中至少之一进行适应性调整访问阈值。
需要说明的是,对于同一开源宿主,在同一时间粒度下配置的最大额度也可以自适应调整,在此不做限定。
根据本公开的实施例,配额信息可以在智能小程序宿主平台的前端页面上配置完成,由智能小程序宿主平台管理开源宿主的相关配置信息。例如,可以在智能小程序宿主平台的前端页面上针对软件A配置软件A在一个小时内可以访问的小程序的访问阈值为10,软件A在一天内可以访问的小程序的访问阈值为50,针对软件B配置软件B在一个小时内可以访问的小程序的访问阈值为8等配置信息。该些配置信息可以被配置为在每次服务启动时进行预读取,并可基于在线追踪实现信息的实时变更,以保证服务端读取到的配额信息的实时有效性。例如,可以在软件A每次请求访问小程序的情况下,读取软件A的相关配额信息,以便根据配额信息确定是否要将软件A当前请求访问的小程序分发至该软件A。
根据本公开的实施例,在根据配额信息确定需要将软件A当前请求访问的小程序分发至该软件A的情况下,可直接执行分发操作。在根据配额信息确定不能将软件A当前请求访问的小程序分发至该软件A的情况下,中断将小程序分发至软件A的分发过程。
图3示意性示出了根据本公开实施例的控制小程序分发的示意图。
如图3所示,宿主平台310用于配置不同开源宿主对应于不同时间粒度时的配额信息,该配额信息可存储在数据库320中。数据库320可与配额服务330相交互。在客户端340响应于用户的访问请求而请求目标小程序的情况下,需要从包下发服务中350中拉取小程序包。包下发服务350可以包括PMS(PackageManagerService,包管理服务)351和META(安装包)352,PMS 351可以为小程序包的下发提供控制服务,META 352可以为小程序包的下发提供数据服务。由PMS 351和META 352构成的包下发服务350可以与配额服务330进行交互。从而,配额服务330可以基于数据库320中存储的配额信息确定是否将当前从包下发服务350中请求的目标小程序的小程序包下发至客户端340。
根据本公开的实施例,数据库320与配额服务330的交互可以包括:基于watt协议实现数据库320与配额服务330之间的数据同步。数据同步包括:数据库320中的配额信息可以同步至配额服务330中。配额服务330可以将下发至客户端340的小程序包的相关信息同步记录至数据库320中。
通过本公开的上述实施例,引入配额信息,基于宿主维度、多时间粒度的分发配额方法,构造了从0到1完成小程序分发的宿主配额机制。通过配额信息控制小程序的分发或中断,可有效预防异常流量恶意拉取小程序包信息的行为,解决开源宿主的包分发服务可能存在的小程序包信息泄露等风险问题。
下面结合具体实施例,对图2所示的方法做进一步说明。
根据本公开的实施例,预设时长包括至少一个预设时长,访问阈值是根据所述预设时长确定的。根据配额信息确定所述目标小程序的分发方式包括:针对每个预设时长,确定目标开源宿主在与该预设时长相对应的时间段内已访问的小程序的访问数目。在每个访问数目均小于与该访问数目相对应的访问阈值的情况下,将目标小程序分发至目标开源宿主。
根据本公开的实施例,至少一个预设时长例如包括一个小时、十二个小时、一天等。访问阈值可以根据预设时长的不同而适应性设置。例如,目标开源宿主为软件A,可设置其在一个小时内访问小程序的访问阈值为10,在一天内访问小程序的访问阈值为50。与一个小时相对应的时间段例如包括一天中的12时-13时、13时-14时等,也可以包括以当前时刻为终止时间点的时长等于一个小时的时间段,在此不做限定。相应地,与一天相对应的时间段例如包括从0时-24时,也可以包括以当前时刻为终止时间点的时长等于一天的时间段等,在此也不进行限定。对应于软件A,与时长等于一个小时的时间段内已访问的小程序的访问数目相对应的访问阈值可以为10;与时长等于一天的时间段内已访问的小程序的访问数目相对应的访问阈值可以为50。
根据本公开的实施例,在预设时长例如只包括一个小时这一时长的情况下,可以直接判断,在目标开源宿主在一个小时内访问小程序的访问数目小于预设的访问阈值的情况下,将目标小程序分发至该目标开源宿主。
根据本公开的实施例,在预设时长例如包括一个小时、一天等多个的情况下,需要在当前时刻下对应的每个预设时长的时间窗口内的访问数目均小于相应预设时长对应的访问阈值的情况下,方能确定对目标开源宿主请求访问的目标小程序进行分发。例如,可以针对预设时长配置固定的整时到整时的时间窗口,则在请求访问目标小程序的当前时刻为13时45分的情况下,对应一个小时时长的时间窗口可以为13时-14时,对应一天时长的时间窗口可以为0时-24时。对于软件A,可以判断软件A在13时-13时45分访问的小程序的数目是否小于10,以及在0时-13时45分访问的小程序的数目是否小于50,并且只有在两者判断结果均为是的情况下,才向软件A分发其在13时45分请求访问的该目标小程序。
通过本公开的上述实施例,提供了一种目标小程序能够分发的可行性基础条件,在该条件的基础上分发目标小程序,能够有效保证小程序包分发的稳定性,规避智能小程序开源联盟潜在的安全风险问题。
根据本公开的实施例,配额信息中还包括已访问的小程序的标识信息。小程序分发控制方法还包括:在每个访问数目均小于与该访问数目相对应的访问阈值的情况下,针对每个预设时长,首先确定目标开源宿主在与该预设时长相对应的时间段内已访问的小程序的第一标识信息。然后,在根据第一标识信息未能识别到目标小程序的目标标识信息的情况下,在与目标开源宿主相关的配额信息中记录目标标识信息。
根据本公开的实施例,配额信息可以表现为开源宿主、时间窗口、已使用配额的形式,完成对每个宿主在每个时间窗口内已使用配额的记录。遵循同一个宿主在请求同一个小程序的情况下仅占用一个配额计数的原则,配额信息中的已使用配额可以记录为已访问的小程序的访问数目的形式,也可以以开源宿主已访问的小程序的ID(标识)进行标记。第一标识信息例如为在每个访问数目均小于与该访问数目相对应的访问阈值的情况下,与该访问数目相对应的预设时长对应的时间段内目标开源宿主已访问的小程序的ID信息。包含有已访问的小程序的ID信息的目标配额信息例如可存储在redis(一种日志型数据库)中。
根据本公开的实施例,只有在某个开源宿主在某个时间粒度下的配额未满,且该开源宿主请求的小程序为初次请求的情况下,才可以对与该开源宿主相对应的配额信息中的已使用配额的计数加一。进一步的,在针对已使用配额的计数加一的同时,还可以在已使用配额中记录该初次请求的小程序的ID信息,基于此,可构建上述第一标识信息。
根据本公开的实施例,在与目标开源宿主相关的目标配额信息的目标已使用配额中已包括第一标识信息的情况下,当该目标开源宿主需要请求获取目标小程序包的信息时,可以首先识别宿主身份以定位至该目标配额信息,然后基于该目标配额信息对多时间粒度的配额现状并行在线校验。在某个时间粒度下,若该目标开源宿主的配额未满,且请求该目标小程序的信息为初次请求,即根据目标已使用配额中中的第一标识信息不能识别到目标小程序的目标标识信息,则可以对当前目标开源宿主在当前时间粒度的目标已使用配额的计数加一。并且,更进一步的,还可以在该目标已使用配额中记录该目标小程序的目标标识信息。
需要说明的是,在根据第一标识信息不能识别到目标标识信息的情况下,当且仅当目标开源宿主在全部时间粒度下已访问的小程序的访问数目均未超出目标配额信息中的相应时间粒度对应的访问阈值时,才允许将目标小程序分发至该目标开源宿主。针对目标小程序的分发完成后,可以异步的将目标标识信息记录入redis中相应的目标配额信息中。
根据本公开的实施例,在根据第一标识信息能够识别到目标标识信息的情况下,可以直接确定目标小程序通过配额校验,并可以将该目标小程序分发至该目标开源宿主。
根据本公开的实施例,小程序分发控制方法在实现时可以与宿主的拉包请求并行处理,通过上游服务统一判断处理,可以不影响宿主拉包的耗时。
通过本公开的上述实施例,在配额信息中配置已访问的小程序的标识信息,可以详细记录各小程序的访问情况。基于标识信息进行小程序分发控制的判断,可有效提高判断速率,减少小程序分发时的耗时。
根据本公开的实施例,访问请求的数目为多个,每个访问请求请求访问的小程序均为上述目标小程序。在根据第一标识信息未能识别到目标小程序的目标标识信息的情况下,在与目标开源宿主相关的配额信息中记录目标标识信息包括:记录来自多个访问请求中的任意一个访问请求请求访问的目标小程序的目标标识信息。
根据本公开的实施例,例如,存在多个用户同时在同一个开源宿主上发出针对同一个目标小程序的访问请求,则在同一个进程内,可能存在多个线程同时回源同一个资源。在该种情况下,可能会有较多流量。为了减少源头redis的瞬时存储压力,可以基于pendingcache(挂起缓存),对于同一资源,在短时间内只放一条流量回源,即只记录众多访问请求的其中一个访问请求请求访问的目标小程序的目标标识信息,剩余的流量可以在记录一条流量的同时被pending cache阻塞,阻塞的流量可直接读取记录一条流量后的缓存。
通过本公开的上述实施例,只针对一个访问请求进行记录,可有效缓解配额信息更新时的压力,提高服务性能。
根据本公开的实施例,在每个访问数目均小于与该访问数目相对应的访问阈值的情况下,针对每个预设时长,还包括:在满足更新条件的情况下,根据目标标识信息和第一标识信息更新目标开源宿主在与预设时长相对应的时间段内已访问的小程序的访问数目。
根据本公开的实施例,在将目标标识信息添加至目标已使用配额之后,当前的目标配额信息可以表征目标开源宿主在相应的时间粒度下已访问的小程序包括与第一标识信息所包括的ID信息相对应的小程序,以及与目标标识信息所表征的ID信息相对应的小程序。在增加了目标标识信息之后,可以确定,此时目标开源宿主已访问的小程序的访问数目会相较于未增加目标标识信息之前的访问数目多1。
通过本公开的上述实施例,可以自动更新下一次小程序分发控制时的配额信息,为下一次小程序分发控制提供数据基础的同时,也减少了整个流程的耗时。
根据本公开的实施例,根据配额信息确定目标小程序的分发方式还包括:响应于目标访问数目,确定与目标访问数目相对应的目标预设时长。其中,目标访问数目等于与目标访问数目相对应的访问阈值。确定在与目标预设时长相对应的时间段内已访问的小程序的第二标识信息。根据第二标识信息和目标小程序的目标标识信息确定目标小程序的分发方式。
根据本公开的实施例,例如,软件A在一个小时内可以访问的小程序的访问阈值为10,则可以确定,目标访问数目例如为10,目标预设时长例如为一个小时。在此基础上,第二标识信息例如为软件A在一个小时内访问的10个小程序的ID信息。本实施例中,软件A在一个小时内已访问的小程序的目标访问数目等于软件A在一个小时时长下的访问阈值,在该种情况下,可以进一步根据已访问的小程序的ID信息与待访问的目标小程序的目标标识信息进行目标小程序是否继续分发的判断。
根据本公开的实施例,当小程序集成到某个目标开源宿主中时,在不同时间窗口下,目标开源宿主获取不同小程序信息的数量不应超过预设的访问阈值,这个访问阈值可以是目标开源宿主的一个经验值,能够保障目标开源宿主正常使用小程序服务。超过访问阈值则认为存在恶意拉取小程序的行为。低于访问阈值可以直接对后续想要访问的目标小程序进行分发。对于等于访问阈值的情况,可以进一步结合已访问的小程序的ID信息来判断是否对目标小程序继续分发。
根据本公开的实施例,根据第二标识信息和目标小程序的目标标识信息确定目标小程序的分发方式包括:在根据第二标识信息识别到目标标识信息的情况下,将目标小程序分发至目标开源宿主。在根据第二标识信息未能识别到目标标识信息的情况下,中断目标小程序向目标开源宿主的分发过程。
根据本公开的实施例,对于单个时间窗口下,目标开源宿主已访问的小程序的访问数目等于该时间窗口对应的访问阈值的情况,只有在目标开源宿主将要访问的目标小程序属于已访问的小程序的情况下,才会对目标小程序进行分发。否则,不对目标小程序进行分发。目标小程序是否属于已访问的小程序可以通过判断根据第二标识信息是否能识别到目标标识信息来确定。
根据本公开的实施例,目标小程序是否分发的判断过程例如基于内存判断完成。要进行内存判断,例如需要首先将redis中的相关信息转移至内存中,该过程可以通过设置定时拉取任务周期性拉取实现。定时拉取的相关信息可以经由缓存存入内存中。由于拉取过程为周期性拉取,因此可能存在内存已满、缓存未满的情况,即redis中的信息尚未完全转移至内存中。例如,周期为5秒,在上一个周期已完成对redis中信息的拉取,在下一个周期到来之前,存在新的信息同步至redis中,而由于下一个周期尚未到来,因此新的信息尚无法被拉取到内存中。在该种情况下,若内存中不包括目标标识信息,可以进一步根据redis的存储信息进行判断,并在redis中包含目标标识信息的情况下,对目标小程序进行分发。在redis中不包含目标标识信息的情况下,不对目标小程序进行分发。对于缓存和内存均满的情况,若内存中也不包括目标标识信息,可以直接确定不对目标小程序进行分发。
根据本公开的实施例,配额服务允许开源宿主的批量请求,可以采用半同步方式校验同一宿主的批量请求。多数情况下,内存判断可以直接决定最终结果,基于内存判断,可以保证在很短的时间内(<1ms)完成配额判断,从而完成目标小程序的分发或中断目标小程序的分发。
通过本公开的上述实施例,构建了业内第一个针对智能小程序开源联盟的宿主配额技术方案,填补了空白,也保障了智能小程序开源宿主接入的安全性以及小程序包分发服务的高性能,是智能小程序开源建设的重要一环。
根据本公开的实施例,小程序分发控制方法还包括:在监听到配额信息发生更新的情况下,根据更新后的配额信息确定针对开源宿主配置的配额信息。
根据本公开的实施例,配额服务还可以提供配置信息实时更新的能力,允许小程序开源联盟进行宿主配额的在线变更。可以利用mysql数据库存储配额信息,并采用已有服务(watt+bp订阅)实时追踪数据库变更情况,可实现配置秒级生效。
通过本公开的上述实施例,基于更新操作,可提供配额信息在线变更能力,并可实现秒级生效。
根据本公开的实施例,小程序分发控制方法还包括:在确定访问分布式存储空间成功的情况下,将针对各开源宿主配置的配额信息存储至分布式存储空间中。在确定访问分布式存储空间失败的情况下,将针对各开源宿主配置的配额信息存储至与各开源宿主相关的内存空间中。
根据本公开的实施例,可以在单实例中维护配额信息的内存存储结构,包括存储每个宿主、每个时间窗口内已使用配额等信息。采用分布式redis结合单实例内存存储的方式,可进一步保证服务性能并实现多地域数据同步。
根据本公开的实施例,考虑到线上服务强依赖redis存储,提供一种请求redis服务失败情况下的降级解决方案。通过建立全局配置开关,可以控制服务是否降级。在降级情况下,配额信息可依赖单实例缓存,区别于正常情况和降级环境下的内存存储结构,存储当前宿主、当前时间窗口对应的已使用配额的情况。对于上游请求,可正常判断是否命中缓存,待降级开关关闭后可执行redis同步。
通过本公开的上述实施例,实现了多维度配额现状信息的分布式在线存储与实时更新,并提供了一种容灾能力,可进一步保证服务性能。
图4示意性示出了根据本公开实施例的配额服务的工作流程图。
如图4所示,该流程包括操作S410~S470。
在操作S410,数据内存加载。
在操作S420,redis数据定时拉取。
在操作S430,配额时间窗口定时切换。
在操作S440,配额信息查询。
在操作S450,内存判断。
在操作S460,redis查询&存储。
在操作S470,结果合并。
根据本公开的实施例,操作S410~S430可离线执行。数据内存加载可以将存储至redis中的信息加载至内存。redis数据定时拉取可以基于预定的时间,主动拉取redis中的信息,以对内存中数据进行实时更新。配额时间窗口定时切换可以针对不同时间粒度定义相应的时间窗口,以便于在每个时间窗口内控制目标小程序的分发。
根据本公开的实施例,操作S440~S470一般在线执行。配额信息查询可以着重于查询redis中存储的针对不同开源宿主设置的访问阈值。内存判断可以基于redis中的信息和查询到的访问阈值等信息对相应时间窗口下的小程序是否分发分发进行判断。redis查询&存储可以对完成分发的小程序的ID信息进行进一步记录。
需要说明的是,配额服务允许开源宿主的批量请求。在存在多个访问请求的情况下,可以对该多个访问请求进行并行回源处理。由于针对一个开源宿主可能配置多个时间粒度,在存在多个时间粒度的情况下,可以通过并发等待的方式确定所有时间粒度下针对小程序分发的判断结果,即分发或者中断分发。
图5示意性示出了根据本公开实施例的内存判断的流程图。
如图5所示,该流程包括操作S501~S510。
在操作S501,内存缓存数据查询。
在操作S502,判断元素是否存在。若是,则执行操作S503;若否,则执行操作S504。
在操作S503,小程序分发。
在操作S504,判断存储是否未满,若是,则执行操作S505~S506;若否,则执行操作S507。
在操作S505,小程序分发。
在操作S506,redis存储。
在操作S507,判断缓存是否未满。若是,则执行操作S509,若否,则执行操作S508。
在操作S508,终端小程序分发。
在操作S509,判断元素是否存在redis中。若是,则执行操作S510;若否,则执行操作S508。
在操作S510,小程序分发。
根据本公开的实施例,元素可以用于表示要访问的目标小程序的目标标识信息。内存判断过程可以包括内存是否已满的判断、缓存是否已满的判断、redis数据的判断、以及目标标识信息是否已存在的判断。在目标标识信息已存在的情况下,可以直接对目标小程序进行分发。在目标标识信息不存在的情况下,可以进一步判断存储数据是否未达到访问阈值。在存储数据未达到访问阈值的情况下,可以直接对目标小程序进行分发。并可在分发后记录目标标识信息。在存储数据未达到访问阈值的情况下,可以进一步判断缓存是否未满。在缓存已满的情况下,可以中断小程序的分发。在缓存未满的情况下,可以进一步判断目标标识信息是否存在redis中。在目标标识信息存在redis中的情况下,可以直接对目标小程序进行分发。在目标标识信息未存在redis中的情况下,可以中断小程序的分发。
通过本公开的上述实施例,为智能小程序开源解决方案提供了风险控制能力。在多宿主接入的环境背景下,维护小程序信息的安全性和小程序包分发服务的稳定性是开源联盟必需的核心能力。本公开能够有效识别并阻绝异常流量,隔离恶意拉取行为,进行有效风险控制。同时,服务响应时间短,配置生效快。本公开的小程序分发控制方法与正常业务逻辑并行发生,不影响业务响应耗时,支持配置秒级生效。在为业务设置安全防线的基础上,确保业务的高性能。并且,本服务本身响应时间短,整体平均耗时在1ms内。
图6示意性示出了根据本公开实施例的小程序分发控制装置的框图。
如图6所示,小程序分发控制装置600包括第一确定模块610、第二确定模块620和第三确定模块630。
第一确定模块610,用于确定针对开源宿主配置的配额信息。其中,配额信息用于表征开源宿主在预设时长内访问小程序的访问阈值。
第二确定模块620,用于响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序。
第三确定模块630,用于根据配额信息确定目标小程序的分发方式。其中,分发方式包括将目标小程序分发至目标开源宿主或者中断目标小程序向目标开源宿主的分发过程。
根据本公开的实施例,预设时长包括至少一个预设时长,访问阈值是根据预设时长确定的。第三确定模块包括第一确定单元和分发单元。
第一确定单元,用于针对每个预设时长,确定目标开源宿主在与预设时长相对应的时间段内已访问的小程序的访问数目。
分发单元,用于在每个访问数目均小于与访问数目相对应的访问阈值的情况下,将目标小程序分发至目标开源宿主。
根据本公开的实施例,配额信息中还包括已访问的小程序的标识信息。小程序分发控制装置还包括记录模块。
记录模块,用于在每个访问数目均小于与访问数目相对应的访问阈值的情况下,针对每个预设时长:确定目标开源宿主在与预设时长相对应的时间段内已访问的小程序的第一标识信息。在根据第一标识信息未能识别到目标小程序的目标标识信息的情况下,在与目标开源宿主相关的配额信息中记录目标标识信息。
根据本公开的实施例,访问请求的数目为多个,每个访问请求请求访问的小程序均为目标小程序。在根据第一标识信息未能识别到目标小程序的目标标识信息的情况下,在与目标开源宿主相关的配额信息中记录目标标识信息包括:记录来自多个访问请求中的任意一个访问请求请求访问的目标小程序的目标标识信息。
根据本公开的实施例,记录模块还包括更新单元。
更新单元,用于在满足更新条件的情况下,根据目标标识信息和第一标识信息更新目标开源宿主在与预设时长相对应的时间段内已访问的小程序的访问数目。
根据本公开的实施例,第三确定模块还包括第二确定单元、第三确定单元和第四确定单元。
第二确定单元,用于响应于目标访问数目,确定与目标访问数目相对应的目标预设时长。其中,目标访问数目等于与目标访问数目相对应的访问阈值。
第三确定单元,用于确定在与目标预设时长相对应的时间段内已访问的小程序的第二标识信息。
第四确定单元,用于根据第二标识信息和目标小程序的目标标识信息确定目标小程序的分发方式。
根据本公开的实施例,第四确定单元包括分发子单元和中断子单元。
分发子单元,用于在根据第二标识信息识别到目标标识信息的情况下,将目标小程序分发至目标开源宿主。
中断子单元,用于在根据第二标识信息未能识别到目标标识信息的情况下,中断目标小程序向目标开源宿主的分发过程。
根据本公开的实施例,小程序分发控制装置还包括第四确定模块。
第四确定模块,用于在监听到配额信息发生更新的情况下,根据更新后的配额信息确定针对开源宿主配置的配额信息。
根据本公开的实施例,小程序分发控制装置还包括第一存储模块和第二存储模块。
第一存储模块,用于在确定访问分布式存储空间成功的情况下,将针对各开源宿主配置的配额信息存储至分布式存储空间中。
第二存储模块,用于在确定访问分布式存储空间失败的情况下,将针对各开源宿主配置的配额信息存储至与各开源宿主相关的内存空间中。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
根据本公开的实施例,一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上所述的方法。
根据本公开的实施例,一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行如上所述的方法。
根据本公开的实施例,一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如上所述的方法。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元70l的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如小程序分发控制方法。例如,在一些实施例中,小程序分发控制方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的小程序分发控制方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行小程序分发控制方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以是分布式***的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (18)
1.一种小程序分发控制方法,包括:
确定针对开源宿主配置的配额信息,其中,所述配额信息用于表征所述开源宿主在预设时长内访问小程序的访问阈值;
响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序;以及
根据所述配额信息确定所述目标小程序的分发方式,其中,所述分发方式包括将所述目标小程序分发至所述目标开源宿主或者中断所述目标小程序向所述目标开源宿主的分发过程;
其中,所述预设时长包括至少一个预设时长,所述访问阈值是根据所述预设时长确定的;根据所述配额信息确定所述目标小程序的分发方式包括:
针对每个所述预设时长,确定所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的访问数目;以及
在每个所述访问数目均小于与所述访问数目相对应的访问阈值的情况下,将所述目标小程序分发至所述目标开源宿主。
2.根据权利要求1所述的方法,其中,所述配额信息中还包括已访问的小程序的标识信息;所述方法还包括:
在每个所述访问数目均小于与所述访问数目相对应的访问阈值的情况下,针对每个所述预设时长:
确定所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的第一标识信息;以及
在根据所述第一标识信息未能识别到所述目标小程序的目标标识信息的情况下,在与所述目标开源宿主相关的配额信息中记录所述目标标识信息。
3.根据权利要求2所述的方法,其中,所述访问请求的数目为多个,每个所述访问请求请求访问的小程序均为所述目标小程序;在根据所述第一标识信息未能识别到所述目标小程序的目标标识信息的情况下,在与所述目标开源宿主相关的配额信息中记录所述目标标识信息包括:
记录来自多个所述访问请求中的任意一个访问请求请求访问的目标小程序的目标标识信息。
4.根据权利要求2所述的方法,其中,在每个所述访问数目均小于与所述访问数目相对应的访问阈值的情况下,针对每个所述预设时长,还包括:
在满足更新条件的情况下,根据所述目标标识信息和所述第一标识信息更新所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的访问数目。
5.根据权利要求1至4中任一所述的方法,其中,根据所述配额信息确定所述目标小程序的分发方式还包括:
响应于目标访问数目,确定与所述目标访问数目相对应的目标预设时长,其中,所述目标访问数目等于与所述目标访问数目相对应的访问阈值;
确定在与所述目标预设时长相对应的时间段内已访问的小程序的第二标识信息;以及
根据所述第二标识信息和所述目标小程序的目标标识信息确定所述目标小程序的分发方式。
6. 根据权利要求5所述的方法,其中,根据所述第二标识信息和所述目标小程序的目标标识信息确定所述目标小程序的分发方式包括:
在根据所述第二标识信息识别到所述目标标识信息的情况下,将所述目标小程序分发至所述目标开源宿主;以及
在根据所述第二标识信息未能识别到所述目标标识信息的情况下,中断所述目标小程序向所述目标开源宿主的分发过程。
7.根据权利要求1所述的方法,还包括:
在监听到所述配额信息发生更新的情况下,根据更新后的配额信息确定针对所述开源宿主配置的配额信息。
8. 根据权利要求1所述的方法,还包括:
在确定访问分布式存储空间成功的情况下,将针对各开源宿主配置的配额信息存储至所述分布式存储空间中;以及
在确定访问所述分布式存储空间失败的情况下,将针对所述各开源宿主配置的配额信息存储至与各所述开源宿主相关的内存空间中。
9.一种小程序分发控制装置,包括:
第一确定模块,用于确定针对开源宿主配置的配额信息,其中,所述配额信息用于表征所述开源宿主在预设时长内访问小程序的访问阈值;
第二确定模块,用于响应于来自目标开源宿主的访问请求,确定请求访问的目标小程序;以及
第三确定模块,用于根据所述配额信息确定所述目标小程序的分发方式,其中,所述分发方式包括将所述目标小程序分发至所述目标开源宿主或者中断所述目标小程序向所述目标开源宿主的分发过程;
其中,所述预设时长包括至少一个预设时长,所述访问阈值是根据所述预设时长确定的;所述第三确定模块包括:
第一确定单元,用于针对每个所述预设时长,确定所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的访问数目;以及
分发单元,用于在每个所述访问数目均小于与所述访问数目相对应的访问阈值的情况下,将所述目标小程序分发至所述目标开源宿主。
10.根据权利要求9所述的装置,其中,所述配额信息中还包括已访问的小程序的标识信息;所述装置还包括:
记录模块,用于在每个所述访问数目均小于与所述访问数目相对应的访问阈值的情况下,针对每个所述预设时长:
确定所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的第一标识信息;以及
在根据所述第一标识信息未能识别到所述目标小程序的目标标识信息的情况下,在与所述目标开源宿主相关的配额信息中记录所述目标标识信息。
11.根据权利要求10所述的装置,其中,所述访问请求的数目为多个,每个所述访问请求请求访问的小程序均为所述目标小程序;在根据所述第一标识信息未能识别到所述目标小程序的目标标识信息的情况下,在与所述目标开源宿主相关的配额信息中记录所述目标标识信息包括:
记录来自多个所述访问请求中的任意一个访问请求请求访问的目标小程序的目标标识信息。
12.根据权利要求10所述的装置,其中,所述记录模块还包括:
更新单元,用于在满足更新条件的情况下,根据所述目标标识信息和所述第一标识信息更新所述目标开源宿主在与所述预设时长相对应的时间段内已访问的小程序的访问数目。
13.根据权利要求9至12中任一所述的装置,其中,所述第三确定模块还包括:
第二确定单元,用于响应于目标访问数目,确定与所述目标访问数目相对应的目标预设时长,其中,所述目标访问数目等于与所述目标访问数目相对应的访问阈值;
第三确定单元,用于确定在与所述目标预设时长相对应的时间段内已访问的小程序的第二标识信息;以及
第四确定单元,用于根据所述第二标识信息和所述目标小程序的目标标识信息确定所述目标小程序的分发方式。
14. 根据权利要求13所述的装置,其中,所述第四确定单元包括:
分发子单元,用于在根据所述第二标识信息识别到所述目标标识信息的情况下,将所述目标小程序分发至所述目标开源宿主;以及
中断子单元,用于在根据所述第二标识信息未能识别到所述目标标识信息的情况下,中断所述目标小程序向所述目标开源宿主的分发过程。
15.根据权利要求9所述的装置,还包括:
第四确定模块,用于在监听到所述配额信息发生更新的情况下,根据更新后的配额信息确定针对所述开源宿主配置的配额信息。
16. 根据权利要求9所述的装置,还包括:
第一存储模块,用于在确定访问分布式存储空间成功的情况下,将针对各开源宿主配置的配额信息存储至所述分布式存储空间中;以及
第二存储模块,用于在确定访问所述分布式存储空间失败的情况下,将针对所述各开源宿主配置的配额信息存储至与各所述开源宿主相关的内存空间中。
17. 一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110841089.4A CN113553074B (zh) | 2021-07-23 | 2021-07-23 | 小程序分发控制方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110841089.4A CN113553074B (zh) | 2021-07-23 | 2021-07-23 | 小程序分发控制方法、装置、电子设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113553074A CN113553074A (zh) | 2021-10-26 |
CN113553074B true CN113553074B (zh) | 2023-07-25 |
Family
ID=78132860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110841089.4A Active CN113553074B (zh) | 2021-07-23 | 2021-07-23 | 小程序分发控制方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113553074B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114637568B (zh) * | 2022-03-22 | 2024-06-04 | 支付宝(杭州)信息技术有限公司 | 设备分屏适配处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475259A (zh) * | 2020-04-02 | 2020-07-31 | 北京百度网讯科技有限公司 | 小程序加载方法、装置及电子设备 |
CN112000394A (zh) * | 2020-08-27 | 2020-11-27 | 北京百度网讯科技有限公司 | 用于访问小程序的方法、装置、设备以及存储介质 |
CN112579096A (zh) * | 2020-12-18 | 2021-03-30 | 北京百度网讯科技有限公司 | 小程序启动文件的编译、加载方法、装置、设备和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8488476B2 (en) * | 2004-04-05 | 2013-07-16 | Verizon Business Global Llc | Providing applets to remote devices in a communications network |
-
2021
- 2021-07-23 CN CN202110841089.4A patent/CN113553074B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475259A (zh) * | 2020-04-02 | 2020-07-31 | 北京百度网讯科技有限公司 | 小程序加载方法、装置及电子设备 |
CN112000394A (zh) * | 2020-08-27 | 2020-11-27 | 北京百度网讯科技有限公司 | 用于访问小程序的方法、装置、设备以及存储介质 |
CN112579096A (zh) * | 2020-12-18 | 2021-03-30 | 北京百度网讯科技有限公司 | 小程序启动文件的编译、加载方法、装置、设备和介质 |
Non-Patent Citations (1)
Title |
---|
面向核电分析软件耦合计算的实时数据库服务平台的设计与实现;刘硕;莫文涛;刘陆光;张蕊峰;肖爽;;计算机应用与软件(08);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113553074A (zh) | 2021-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684358B (zh) | 数据查询的方法和装置 | |
US10785320B2 (en) | Managing operation of instances | |
US20120209921A1 (en) | Instant Message Management Method and Apparatus | |
US10454855B2 (en) | System and method for predicting availability status changes of instant messenger users | |
US10417062B2 (en) | Method and apparatus of unloading out of memory processing flow to user space | |
WO2020133995A1 (zh) | 副本部署方法、云服务器及存储介质 | |
US20200004785A1 (en) | Automatic grouping based on user behavior | |
CN113553074B (zh) | 小程序分发控制方法、装置、电子设备以及存储介质 | |
CN114328132A (zh) | 外部数据源的状态监控方法、装置、设备和介质 | |
US10936192B2 (en) | System and method for event driven storage management | |
CN113132479A (zh) | 流量切换、模型生成方法、装置、设备、存储介质及程序 | |
CN110336884B (zh) | 服务器集群更新方法和装置 | |
CN116594563A (zh) | 分布式存储扩容方法、装置、电子设备和存储介质 | |
CN115426287B (zh) | 一种***监控和优化方法、装置、电子设备及介质 | |
CN114513468B (zh) | 一种Sentinel中流量防护方法、装置、设备、存储介质及产品 | |
CN113360689B (zh) | 图像检索***、方法、相关装置及计算机程序产品 | |
CN113676531B (zh) | 电商流量削峰方法、装置、电子设备及可读存储介质 | |
JP7307766B2 (ja) | トラフィック調整方法、装置、電子機器、コンピュータ可読記録媒体及びコンピュータプログラム | |
CN113641688B (zh) | 节点更新方法、相关装置及计算机程序产品 | |
CN112752323B (zh) | 热点接入状态的改变方法和装置 | |
CN111431764B (zh) | 节点确定方法、设备、***及介质 | |
CN112433891A (zh) | 数据处理方法、装置和服务器 | |
CN113360736A (zh) | 互联网数据的抓取方法和装置 | |
CN107315612B (zh) | 终端控制方法、装置、计算机装置及存储介质 | |
CN114924806B (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 |