一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于区块链的融资方法及装置与流程

2022-05-26 20:45:42 来源:中国专利 TAG:


1.本说明书一个或多个实施例涉及区块链技术领域,特别涉及一种基于区块链的融资方法及装置。


背景技术:

2.区块链(blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。在区块链中按照时间顺序将数据区块以顺序相连的方式组合成链式数据结构,并以密码学方式保证数据区块不可篡改和不可伪造。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。
3.目前来说,在资方用户和融资方用户进行融资时,由于流程繁杂,使得系统计算性能差,交易效率低,无法满足日益增大的交易量。


技术实现要素:

4.本说明书一个或多个实施例提供一种基于区块链的融资方法及装置。
5.根据第一方面,提供一种基于区块链的融资方法,所述方法应用于服务器,所述服务器与所述区块链的节点对接;所述服务器中存储有从所述区块链的节点获取的第一交易的数据,所述第一交易用于从资方用户的区块链账户向融资方用户的区块链账户转送第一链上资源,所述服务器管理资方用户的链下账户和融资方用户的链下账户,所述资方用户的链下账户中包括冻结的与所述第一链上资源对应的融资资源,所述方法包括:
6.响应于所述融资方用户的资源转换请求,根据所述第一交易的数据向所述区块链的节点发送第二交易,所述第二交易用于从所述融资方用户的区块链账户消除所述第一链上资源;
7.在从所述区块链的节点接收所述第二交易完成的信息之后,从所述资方用户的链下账户获取冻结的所述融资资源;
8.向所述融资方用户的链下账户转入获取的所述融资资源中的至少部分。
9.根据第二方面,提供一种融资系统,所述融资系统包括服务器和区块链,所述服务器与所述区块链的节点对接;所述服务器中存储有从所述区块链的节点获取的第一交易的数据,所述第一交易用于从资方用户的区块链账户向融资方用户的区块链账户转送第一链上资源,所述服务器管理资方用户的链下账户和融资方用户的链下账户,所述资方用户的链下账户中包括冻结的与所述第一链上资源对应的融资资源:
10.其中,所述服务器,用于响应于所述融资方用户的资源转换请求,根据所述第一交易的数据向所述区块链的节点发送第二交易;
11.所述区块链的节点,用于响应于所述第二交易,从所述融资方用户的区块链账户消除所述第一链上资源;
12.所述服务器,还用于在所述区块链的节点完成所述第二交易之后,从所述资方用户的链下账户获取冻结的所述融资资源;并向所述融资方用户的链下账户转入获取的所述
融资资源中的至少部分。
13.根据第三方面,提供一种基于区块链的融资装置,所述方法应用于服务器,所述服务器与所述区块链的节点对接;所述服务器中存储有从所述区块链的节点获取的第一交易的数据,所述第一交易用于从资方用户的区块链账户向融资方用户的区块链账户转送第一链上资源,所述服务器管理资方用户的链下账户和融资方用户的链下账户,所述资方用户的链下账户中包括冻结的与所述第一链上资源对应的融资资源,所述装置包括:
14.发送模块,用于响应于所述融资方用户的资源转换请求,根据所述第一交易的数据向所述区块链的节点发送第二交易,所述第二交易用于从所述融资方用户的区块链账户消除所述第一链上资源;
15.获取模块,用于在从所述区块链的节点接收所述第二交易完成的信息之后,从所述资方用户的链下账户获取冻结的所述融资资源;
16.转入模块,用于向所述融资方用户的链下账户转入获取的所述融资资源中的至少部分。
17.根据第四方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项的方法。
18.根据第五方面,提供一种及计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任一项的方法。
19.本说明书的实施例提供的技术方案可以包括以下有益效果:
20.本说明书的实施例提供的基于区块链的融资方法和装置,通过响应于融资方用户的资源转换请求,服务器根据从资方用户的区块链账户向融资方用户的区块链账户转送链上资源的数据,向区块链的节点发送用于从融资方用户的区块链账户消除转送的链上资源的交易,在区块链节点完成该交易之后,服务器从资方用户的链下账户获取待转送的链上资源,并向融资方用户的链下账户转入该待转送的链上资源中的至少部分。从而通过将链上交易过程和链下融资资源转移过程进行分割,使得融资方用户提现时在链下设备中进行链下融资资源的转移,从而有效提高了区块链系统中的交易执行效率,更好地满足了日益增大的交易量。
21.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
22.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
23.图1是本说明书根据一示例性实施例示出的一种基于区块链的融资的场景示意图;
24.图2是本说明书根据一示例性实施例示出的一种基于区块链的融资方法的交互流程图;
25.图3是本说明书根据一示例性实施例示出的另一种基于区块链的融资方法的交互流程图;
26.图4是本说明书根据一示例性实施例示出的另一种基于区块链的融资方法的交互流程图。
27.图5是本说明书根据一示例性实施例示出的一种基于区块链的融资方法的流程图。
28.图6a是本说明书根据一示例性实施例示出的另一种基于区块链的融资方法的流程图。
29.图6b是本说明书根据一示例性实施例中在服务器中存储的表格示意图。
30.图7是本说明书根据一示例性实施例示出的一种基于区块链的融资装置的框图。
具体实施方式
31.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
32.如图1所示,是根据一示例性实施例示出的一种基于区块链的融资的场景示意图。
33.图1中,系统101为区块链系统,区块链系统中例如包含节点1~节点8共8个节点。每个节点可以实现为任何具有计算、处理能力的装置、服务器或设备集群等。可以理解,图1中虽然示出了区块链中包括8个节点,本说明书实施例不限于此,而是可以包括其他数目的节点。节点之间的连线示意性的表示p2p(peer to peer,点对点)连接。这些节点上可存储全量的账本,即存储全部区块和全部账户的状态。其中,区块链中的每个节点可通过执行相同的交易而产生区块链中的相同的状态,从而区块链中的每个节点可存储相同的状态数据库。所不同的是,不同节点可负责与不同的终端设备对接,并从对接的终端设备接收交易。
34.例如,节点1可负责与终端设备102对接,终端设备102可以为用户提供在区块链上进行融资的平台。融资方用户103、保理方用户104和资方用户105可以通过终端设备102提供的平台在区块链上进行融资。其中,区块链中可以包括融资方用户103的区块链账户,保理方用户104的区块链账户和资方用户105的区块链账户,例如,在融资方用户103的区块链账户和资方用户105的区块链账户之间,可以相互转送链上资源。
35.节点8可负责与终端设备106对接,终端设备106可以是管理账务系统的终端设备,为用户提供账务管理服务。在终端设备106管理的账务系统中,包括融资方用户103的链下账户、保理方用户104的链下账户和资方用户105的链下账户。终端设备106可以用融资方用户103/保理方用户104/资方用户105的链下账户中的链下资源,对融资方用户103/保理方用户104/资方用户105的区块链账户进行充值,使得融资方用户103/保理方用户104/资方用户105的链上资源与其链下资源相绑定。终端设备106也可以将转送至融资方用户103/保理方用户104/资方用户105的区块链账户的链上资源转换成融资方用户103/保理方用户104/资方用户105的链下账户中的链下资源。终端设备106还可以与银行方107进行通信,可以通过银行方107对融资方用户103/保理方用户104/资方用户105的链下账户进行充值,以
补充链下资源。
36.可以理解,图1所示的该种对接方式只是本说明书实施例提供的一种示例,本技术的具体的对接方式方面不限定。
37.在相关技术中,当通过区块链中的交易进行融资时,通常是在区块链中进行链上资源的转账之后,立即进行链上资源所绑定的链下融资资源的转账,同时还要进行平台、区块链的提成等操作,在确定上述链下操作成功之后,才完成对该区块链交易的执行。由于链下操作的流程繁杂,使得区块链中的交易执行速度较低,降低了区块链的系统性能,无法满足日益增大的交易量。而本说明书实施例提供的一种在图1所示区块链系统中进行融资的方案,通过将链上交易过程和链下融资资源转移过程进行分割,使得融资方用户提现时在链下设备中进行链下融资资源的转移,从而有效提高了区块链系统中的交易执行效率,更好地满足了日益增大的交易量。
38.下面将结合具体的实施例对本说明书提供的方案进行详细描述。
39.如图2所示,图2根据一示例性实施例示出的一种基于区块链的融资方法的交互流程图,该实施例描述了用户充值的过程,可以理解,无论是资方用户,融资方用户,还是保理方用户等,均可以采用该实施例描述的过程对链上资源进行充值。其中,所涉及的设备包括用户设备(资方设备,或者融资方设备,或者保理方设备等)、为用户提供融资平台的平台服务器、该区块链系统的区块链节点以及为用户提供账务管理服务平台的管理服务器。该方法所涉及的各个设备可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:该方法可以包括以下步骤:
40.首先,在步骤201中,用户设备指示平台服务器向管理服务器发送充值请求,以请求对该用户的区块链账户充值预设数目的链上资源。然后,在步骤202中,管理服务器接收到该充值请求,并基于该充值请求携带的充值信息,向区块链的节点发送用于对该用户的区块链账户充值预设数目的链上资源的充值交易。同时将该用户的链下账户中与预设数目的链上资源对应的链下资源(例如,该链下资源可以是融资资源,也可以是付费资源等)进行冻结。
41.接着,在步骤203中,区块链的节点通过执行该充值交易,在该用户的区块链账户中增加预设数目的链上资源。在执行完成该充值交易之后,区块链的节点向管理服务器发送充值交易执行完成的消息。
42.例如,用户a通过其持有的终端设备,指示平台服务器为用户a充值。平台服务器向管理服务器发送充值请求,以请求对用户a的区块链账户充值100个token(价值100万元)。管理服务器向区块链发送一个充值交易,区块链的节点通过执行该充值交易,向用户a的区块链账户中充入100个token。同时,管理服务器可以冻结用户a的链下账户中的100万元钱(对应于100个token)。
43.如图3所示,图3根据一示例性实施例示出的另一种基于区块链的融资方法的交互流程图,该实施例描述了融资的过程,其中,所涉及的设备包括融资方设备、保理方设备、为用户提供融资平台的平台服务器、该区块链系统的区块链节点以及为用户提供账务管理服务平台的管理服务器。该方法所涉及的各个设备可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。包括以下步骤:
44.首先,在步骤301中,融资方设备将融资数据上链存证。
45.具体来说,融资方用户可以通过融资方设备向平台服务器发送融资数据,该融资数据可以包括融资方用户的待评估信息以及融资金额等。其中,融资方用户的待评估信息可以包括融资方用户的各种资质以及能够抵押的资产或者债权等,例如,如果融资方用户为债权人,待评估信息可以包括至少一份应收款项的信息等。可选地,平台服务器接收到融资方设备发送的融资数据之后,可以对该融资数据进行校验,若校验通过,再向区块链的节点发送将该融资数据上链的第一存证交易。区块链的节点执行第一存证交易,以将该融资数据上链存证。可以理解,可以采用本领域中已知的以及将来可能出现的任何合理的校验方式对该融资数据进行校验,本实施例对校验采用的具体方式方面不限定。
46.在步骤302中,管理服务器从区块链拉取区块数据,并存储拉取的区块数据。
47.在本实施例中,管理服务器可以周期性地从区块链拉取新的区块数据,然后,存储拉取的区块数据。例如,管理服务器每隔n秒,从区块链拉取一次区块数据。在第0秒的时刻,区块链的当前最新区块为区块a,管理服务器在第0秒的时刻从区块链拉取了区块a之前的区块数据。在第n秒的时刻,区块链的当前最新区块为区块b,管理服务器在第n秒的时刻从区块链拉取区块a 1到区块b的区块数据。在第2n秒的时刻,区块链的当前最新区块为区块c,管理服务器在第2n秒的时刻从区块链拉取区块b 1到区块c的区块数据,以此类推。其中,区块数据可以包括区块的各个交易的交易数据,例如交易的交易体以及执行交易得到的执行结果。如此,用户在查询数据时,可以无需通过区块链直接从管理服务器中进行查询,从而避免了过多占用区块链的计算资源。
48.具体来说,在从区块链拉取区块数据时,可以获取区块链的当前最新块高,将从当前起始块高至当前最新块高的待拉取块高范围分成一个或多个段,当前起始块高等于前次最新块高加一,前次最新块高是前次从区块链拉取交易数据时获取的最新块高,以及启用多任务处理以分别从一个或多个段中的每个段拉取该段包括的区块的交易数据。可选地,可以根据区块链的标识信息确定用于区块链的分段策略,以及根据分段策略将区块链的待拉取块高范围分成一个或多个段。其中,管理服务器从区块链拉取区块数据的具体过程可参见图5的实施例。
49.在存储拉取的区块数据之前,从区块链的节点获取链上数据的数据结构,该数据结构对链上数据中的多个字段进行定义,对获取的数据结构进行解析,生成并存储各个字段的字段表,字段表中包括对应字段的字段标识、字段数据的索引标识和该字段的属性信息。在存储拉取的区块数据时,存储拉取的数据,通过各个字段表中各个字段数据的索引标识建立拉取数据的各个字段标识与各个字段数据的索引关系。其中,管理服务器存储拉取的区块数据的具体过程可参见图6a和图6b所示的实施例。
50.在步骤303中,融资方设备通过平台服务器向保理方设备发起融资申请,以及在步骤304中,保理方设备从区块链获取融资方的融资数据。
51.在本实施例中,融资方设备可以指示平台服务器向保理方申请融资,平台服务器向保理方设备发送申请融资的请求,保理方设备响应于该请求,指示管理服务器从存储的区块数据中查询融资方的融资数据。管理服务器可以从在步骤302存储的区块数据中查询融资方的融资数据,并将融资方的融资数据返回给保理方设备。具体地,管理服务器可以根据第一存证交易中包括的字段数据对应的索引关系查询出第一存证交易的数据,并从第一存证交易的数据中获取融资方的融资数据。接着,保理方设备可以根据融资方的融资数据
中包括的待评估信息对融资方的风险进行评估。例如对融资方用户的各种资质进行验证,以及评估抵押的资产或者债权的价值等。
52.在步骤305中,保理方设备将基于该融资数据得到的融资评估结果上链存证,以及在步骤306中,融资方设备从区块链获取并查看融资评估结果。
53.在本实施例中,评估完成后之后,保理方设备可以将基于该融资数据得到的融资评估结果发送给管理服务器,由管理服务器向区块链发起第二存证交易。区块链的节点通过执行该第二存证交易,完成对该融资评估结果的上链存证。然后,融资方设备可以通过平台服务器从区块链的节点获取融资评估结果,并查看融资评估结果。
54.在步骤307中,融资方设备通过平台服务器发起融资交易,以从资方用户的区块链账户向融资方用户的区块链账户转送第一数目的链上资源。
55.具体来说,融资方设备可以向平台服务器发送确定进行融资的消息,该消息中例如可以包括融资保理记录等信息。该融资保理记录可以包括融资方用户的信息,资方用户的信息,融资金额和其它一些融资保理过程中产生的信息等。平台服务器获取融资保理记录之后,可以将该融资保理记录上链存证,并基于该融资保理记录向区块链发起融资交易。区块链的节点通过执行该融资交易,从资方用户的区块链账户向融资方用户的区块链账户转送第一数目的链上资源,该第一数目的链上资源对应于(即等价于)融资金额。
56.例如,融资方用户发起的融资的融资金额为100万,该融资金额等价于100个链上资源token,区块链的节点通过执行平台服务器发起的融资交易,从资方用户的区块链账户向融资方用户的区块链账户转送100个token。
57.可选地,如果融资方用户的融资数据中包括融资方用户的债权,平台服务器还可以执行将融资方用户的债权转让给资方用户的操作,并将债权转让的结果进行上链存证。
58.如图4所示,图4是根据一示例性实施例示出的一种基于区块链的融资方法的交互流程图,所涉及的设备包括融资方设备、为用户提供融资平台的平台服务器、该区块链系统的区块链节点以及为用户提供账务管理服务平台的管理服务器。该方法所涉及的各个设备可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:
59.在步骤401中,融资方设备指示平台服务器向管理服务器发送资源转换请求。
60.在本实施例中,需要参与融资的各个用户可以预先通过平台服务器注册区块链账户。具体地,平台服务器首先为待注册用户注册融资平台的账户,并向区块链的节点发送注册该用户的区块链账户的交易。区块链的节点接收到该交易之后,通过执行该交易,指示管理服务器创建该待注册用户的链下账户。管理服务器创建该用户的链下账户,获取并存储该用户的外部银行账户,并且可通过该外部银行账户为该用户的链下账户进行充值。之后,管理服务器将创建的该链下账户的信息和相关银行账户信息返回给区块链的节点,由区块链的节点创建与该链下账户相关联的区块链账户,并将该区块链账户及其相关信息返回给平台服务器。因此,每个通过区块链参与融资的用户均具有区块链账户和相应的链下账户。
61.具体是,用户的区块链账户中例如可包括但不限于账户id,该用户持有链上资源的数目,该用户的名称,该用户的身份编号,该用户的联系方式,该用户的账户类别(如,联盟方,或者企业等),该用户对链上资源的启用状态等等。
62.在本实施例中,融资方用户与一个或多个资方用户可以通过平台服务器,在区块
链系统中进行融资,并从资方用户的区块链账户向融资方用户的区块链账户转送链上资源(可通过区块链执行区块链交易来完成)。上述融资的过程,具体参见图3提供的实施例。
63.在进行融资交易之后的任意时刻,该融资方用户可以通过融资方设备指示平台服务器向管理服务器发送资源转换请求。该资源转换请求用于请求将该融资方用户在区块链上进行融资得到的链上资源转换成链下资源。其中,链上资源可以是任意一种基于区块链的数字资源(如各自形式的nft,以太币等),链下资源可以是任意一种能够用于融资的具有一定金额的非区块链资源。可以理解,本说明书实施例对链上资源和链下资源的具体形式方面不限定。
64.在步骤402中,管理服务器根据融资交易的数据向区块链的节点发送提现交易。其中,融资交易可以是上述将资方用户的链上资源转至融资方用户的链上账户的交易,提现交易可以是用于对融资方用户的链上资源进行核销的交易。该融资交易的数据例如可以为区块链中存证的融资交易的交易体,或者也可以为该存证的融资交易的交易收据。该融资交易的数据可以用于记录资方用户的链上资源转至融资方用户的链上账户的资源转送操作。具体是,该融资交易的数据中可包括资方用户的信息(如用户标识、区块链账户等)、融资方用户的信息、融资金额等信息。
65.在本实施例中,管理服务器中存储有从区块链的节点获取的融资方用户的交易数据,该交易数据为一个或多个上述融资交易的数据。管理服务器可以周期地从区块链拉取新的区块的数据,并存储拉取的新的区块的数据,这些从区块链拉取的区块的数据中包括上述融资交易的数据。管理服务器拉取并存储区块数据的具体过程可参见图3实施例中的步骤302,以及图5、图6a和图6b的实施例中的详细描述。
66.具体地,管理服务器可以从已存储的数据中,查找并获取从各个资方用户的区块链账户向该融资方用户的区块链账户转送链上资源的各个融资交易的数据。基于各个融资交易的数据,确定各个资方用户的区块链账户向该融资方用户的区块链账户转送的链上资源的第一数目。并向区块链的节点发送用于从该融资方用户的区块链账户消除第一数目的链上资源的提现交易。
67.其中,若获取一个融资交易的数据,则可以直接从该融资交易的数据中获取从相应的资方用户的区块链账户向该融资方用户的区块链账户转送的链上资源的第一数目。若获取多个融资交易的数据,则可以根据多个融资交易的数据,通过聚合计算得到从各个资方用户的区块链账户向该融资方用户的区块链账户转送的链上资源的总数目作为第一数目。
68.可选地,管理服务器响应于资源转换请求,可以先对资源转换请求的时间进行校验,判断当前是否具有资源转换的权限。然后,校验一下当前资方的链下账户中的可提现金额是否足够。如果校验成功,管理服务器再进行发送提现交易的操作。
69.可选地,在确定该第一数目之后,管理服务器可以进一步确定与第一数目的链上资源对应的第二数目的链下资源。具体来说,链上资源与链下资源具有一定的对应关系,链上资源与链下资源之间可以相互兑换。例如,假设链上资源以token为单位,链下资源以元为单位,链上资源和链下资源之间可以以m个token兑换1元。
70.在步骤403中,区块链的节点执行提现交易,并在提现交易执行完成之后,将提现交易完成的信息发送给管理服务器。
71.在本实施例中,区块链的节点通过执行上述提现交易,将由融资交易涉及的资方用户转送的第一数目的链上资源从该融资方用户的区块链账户消除。完成提现交易之后,区块链的节点将提现交易完成的信息发送给管理服务器。其中,参见步骤402,融资交易涉及的资方用户可以是一个资方用户,也可以是多个不同的资方用户。
72.在步骤404中,管理服务器在从区块链节点接收提现交易完成的信息之后,从上述资方用户的链下账户获取待转送的链下资源,并向该融资方用户的链下账户转入该待转送的链下资源中的至少部分。
73.在本实施例中,管理服务器在从区块链节点接收到提现交易完成的信息之后,接着,可以从上述资方用户的链下账户获取待转送的链下资源,该待转送的链下资源的第二数目与链上资源的第一数目相对应。其中,资方用户的链下账户中包括冻结的与转送的链上资源对应的待转送的链下资源。具体来说,在对资方用户的区块链账户进行充值时,冻结的资方用户的链下账户中的链下资源,该充值的过程,具体参见图2提供的实施例。
74.在本实施例中,可以向该融资方用户的链下账户转入该待转送的链下资源中的至少部分,剩余的第三数目的链下资源可以转入融资交易的处理方的链下账户和/或提现交易的处理方的链下账户的处理方的链下账户。例如,假设第二数目为10,可以将数目为9的链下资源转入该融资方用户的链下账户,数目为1(第三数目为1)的链下资源转入融资交易的处理方的链下账户和/或提现交易的处理方的链下账户。
75.可选地,管理服务器还可以管理保理方用户的链下账户和平台方用户的链下账户,保理方用户的链下账户中包括冻结的用于支付平台使用费用的链下资源,该用于支付平台使用费用的链下资源与保理方用户的区块链账户中的链上资源对应。管理服务器在区块链的节点完成提现交易之后,可以指示区块链节点从保理方用户的区块链账户消除用于支付平台使用费用的链上资源,从保理方用户的链下账户获取冻结的用于支付使用费用的链下资源,并向平台方用户的链下账户转入获取的该链下资源。
76.对于本实施例,一种具体的应用场景可以为,融资方用户b发起金额为1000万的融资,财务管理平台为用户提供财务管理服务,融资平台提供融资服务。在资方用户a,资方用户c和资方用户d通过融资平台向融资方用户b融资之后,融资方用户b向财务管理平台发送提现请求。财务管理平台从存储的数据中查找出用于从资方用户a的区块链账户向融资方用户b的区块链账户转送500个token的交易,用于从资方用户c的区块链账户向融资方用户b的区块链账户转送300个token的交易,用于从资方用户d的区块链账户向融资方用户b的区块链账户转送200个token的交易。通过聚合计算得到从资方用户的区块链账户向融资方用户b的区块链账户总共转送了1000个token。财务管理平台向区块链发送提现交易,以从融资方用户b的区块链账户消除转送的1000个token。并且,财务管理平台从资方用户a,资方用户c和资方用户d的链下账户,分别获取与500个token对应的冻结的500.5万元,与300个token对应的冻结的300.3万元和与200个token对应的冻结的200.2万元,共计1001万元。并向融资方用户b的链下账户转入1000万元,按照预设分润规则计算融资过程的各个处理方(融资平台、区块链平台方等)应得的分润额度,将剩余的1万元按照所计算的分润额度转给各个平台方。
77.本实施例并不限于上述的应用场景,还可以应用到其他场景中。本说明书的上述实施例提供的基于区块链的融资方法,通过响应于融资方用户的资源转换请求,服务器根
据从资方用户的区块链账户向融资方用户的区块链账户转送链上资源的数据,向区块链的节点发送用于从融资方用户的区块链账户消除转送的链上资源的交易,在区块链节点完成该交易之后,服务器从资方用户的链下账户获取待转送的链上资源,并向融资方用户的链下账户转入该待转送的链上资源中的至少部分。从而通过将链上交易过程和链下融资资源转移过程进行分割,使得融资方用户提现时在链下设备中进行链下融资资源的转移,从而有效提高了区块链系统中的交易执行效率,更好地满足了日益增大的交易量。
78.如图5所示,图5是根据一示例性实施例示出的一种基于区块链的融资方法的流程图,该实施例描述了从区块链拉取交易数据的过程,其中,该方法应用于可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:
79.在步骤501中,访问区块链的节点以获取区块链的当前最新块高。
80.其中,区块链的当前最新块高是指在当前时刻区块链的最晚一个区块的块高。在一些实施例中,访问区块链的节点可以包括配置区块链的区块链信息以访问区块链的节点。利用区块链的区块链信息可以直连到区块链的节点。区块链的区块链信息例如可以包括区块链的节点的ip地址及端口号、以及与在区块链上配置的区块拉取角色对应的公钥及私钥。
81.在步骤502中,将区块链的从当前起始块高至当前最新块高的待拉取块高范围分成一个或多个段。
82.在本实施例中,当前起始块高等于前次最新块高加一。前次最新块高是前次从区块链拉取交易数据时获取的最新块高。所述一个或多个段中的每个段对应区块链的待拉取块高范围的相应子集,这些子集彼此不重叠并且共同构成完整的所述待拉取块高范围。例如,对于新开发的一条行业链,初次拉取时获取到该行业链在那时的最新块高为1000,因此对于第二次拉取而言,前次最新块高为1000,则当前起始块高为1001。如果第二次拉取时获取到该行业链在此时的最新块高为2000,则当前最新块高为2000,那么此时的待拉取块高范围为1001至2000。
83.在一些实施例中,在步骤501与步骤502之间,还可以比较当前最新块高与前次最新块高。如果当前最新块高小于或等于前次最新块高(说明从前次拉取之后尚未有新区块产生),则可以仅更新最新拉取时间而不进行步骤502。
84.可以采取任何合适的分段策略来将区块链的从当前起始块高至当前最新块高的待拉取块高范围分成一个或多个段。在一些实施例中,分段策略可以是以下中的一种:等长策略,其中每个段包括相同数量的区块(该相同的数量可以称为等长策略的步长);等频策略,其中每个段包括相同长度的时间段内生成的区块(该相同长度的时间段可以称为等频策略的步长)。其它自定义的分段策略也是可以的。当等长策略的步长为1时,也可以称为单块分段策略。在前述示例中,如果采用步长为100的等长策略,则待拉取块高范围1001至2000可以被分为10个段,每个段包括100个区块。
85.在一些实施例中,还可以根据区块链的标识信息确定用于区块链的分段策略;以及根据所述分段策略将区块链的待拉取块高范围分成一个或多个段。可以对不同类型的区块链预先配置不同的分段策略。例如,可以对区块增长平稳的区块链应用等长策略,而对区块增长迅猛的区块链应用等频策略。还可以设置默认分段策略,这样当没有针对某种类型的区块链预先配置分段策略时可以自动采取默认分段策略。例如,默认分段策略可以被设
置为步长为10的等长策略。设置合适的分段策略可以帮助不同性能的区块链控制区块拉取效率,以免区块链承受不住拉取操作。当将每个段分得越长时,对区块链的性能要求越低。另外,对于同一区块链而言其分段策略并不一定是不变的,而是可以根据区块链的性能变化相应调整用于该区块链的分段策略(例如,分段策略的类型、步长等)。
86.在步骤503中,启用多任务处理以分别从一个或多个段中的每个段拉取该段中包括的区块的交易数据。多任务处理可以针对每个段启用一个单独的任务来进行交易数据的拉取。
87.在一些示例中,每个单独的任务可以从所处理的段的段初始块高至段终止块高顺序地拉取该段中的每个区块的交易数据。各个单独的任务可以并行进行。多任务处理的非限制性示例可以是多线程处理,当然也可以采用现在已知的或以后开发的任何合适的技术来实现多任务处理。
88.由于本实施例通过将区块链的待拉取块高范围分段,并通过多任务处理来并行处理这些段,可以提高从区块链拉取交易数据的效率。
89.当区块链的长度增长十分迅猛时,分段数量可能非常大,此时可能无法一直通过增加多任务处理的任务个数来维持或提高区块拉取效率,甚至有可能造成区块链节点的雪崩。另外,当接入越来越多条区块链时,可能会导致多任务处理阻塞,使得当一条区块链的区块拉取效率低下时其它各条区块链都无法被高效拉取。因此,可选地,在分段操作后,可以进一步增加了分桶操作。通过将分段操作得到的多个段分配到能够单独进行多任务处理的多个桶中,可以使不同桶中的段的多任务处理彼此独立。这种先分段、再分桶的区块拉取方法可以具有进一步提高的区块拉取效率。
90.具体地,在一些实施例中,在启用多任务处理以分别从所述一个或多个段中的每个段拉取该段中包括的区块的交易数据之前,还可以进行如下操作:设置多个桶,多个桶中的每个桶能够单独进行多任务处理以分别从分配到该桶的每个段拉取该段中包括的区块的交易数据;以及将一个或多个段分配到所述多个桶中。这样,对于单个区块链,即使链上的交易非常快速地增长,也能够实时或接近实时地从该区块链拉取交易数据。另外,这种先分段、再分桶的区块拉取方法也可以适用于多个区块链的情况。在一些实施例中,可以先对多个区块链中的每个区块链执行如前所述的分段操作,并且在将每个区块链的待拉取块高范围分成一个或多个段后,将所述多个区块链的所有段都分配到所述多个桶中。
91.如图6a所示,图6a是根据一示例性实施例示出的一种基于区块链的融资方法的流程图,该实施例描述了存储从区块链拉取的交易数据的过程,其中,该方法应用于可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:
92.在步骤601中,从区块链节点获取链上数据的数据结构。
93.在本实施例中,数据结构用于对链上数据中的多个字段进行定义。区块链中存储的数据例如包括交易体、交易收据、区块数据、账户状态数据等多种类型的数据,不同类型的数据可具有不同的数据结构。或者,区块链中可设置多个业务场景,如融资业务场景、佣金业务场景、交易业务场景等,不同的业务场景可设置不同的数据结构。下文中以融资业务场景为例进行描述。
94.在本实施例中,在区块链中可通过创世合约或系统合约设置区块链中的数据的数据结构,这些合约的代码中包括数据的数据结构,并提供用于获取该数据结构的函数(或查
询接口)。例如,区块链中通过部署融资合约来设置融资数据结构,其中,该融资合约中包括融资数据结构,并提供对该融资数据结构的查询接口。所述融资数据结构例如用于对融资场景中的各个字段进行定义。另外,该融资合约可提供其他函数(如融资函数)以用于开展融资业务,例如,融资方用户可通过向区块链中发送调用该融资合约的融资函数的交易,区块链节点在执行该交易之后,从资方用户的区块链账户向融资方用户的区块链账户转入请求数目的token,生成该交易的交易收据并存入区块链中,该交易收据包括在融资数据结构中定义的多个字段的字段数据,例如senderid(即融资方账户)、receiverid(即资方账户)、数据结构名称(例如合约名称financing)、融资额度(tokennum)等。
95.管理服务器可通过向任一区块链节点发送对该查询接口的调用,从而可从区块链节点接收到该数据结构。具体是,对于上述融资数据结构,管理服务器可向任一区块链节点发送查询请求(或交易),该查询请求中调用融资合约提供的查询接口,区块链节点在接收到该查询请求之后,执行该查询接口,获取融资合约的代码中包括的融资数据结构,并将该融资数据结构返回给管理服务器。
96.在步骤602中,对获取的数据结构进行解析,生成并存储各个字段的字段表。
97.在本实施例中,可以对获取的数据结构进行解析,生成并存储各个字段的字段表。图6b为本说明书一实施例中在管理服务器中存储的表格示意图,其中包括字段表61。如图6b所示,字段表61可以用于定义数据结构中的单个字段的信息。本例中,上述字段表61中可以包括对应字段的字段标识(例如,字段名称)和该字段的属性信息。其中,字段的属性信息可以包括与字段的属性相关的各种信息,包括但不限于创建时间、更新时间、所属数据结构的索引标识、该字段对应的字段数据的索引标识、字段code(代码)、字段类型、是否是唯一键、是否是索引、是否非空、是否复杂类型、关联的数据结构的索引标识等等。其中,字段数据的索引标识为由管理服务器成的在数据结构多个字段中唯一标识目标字段的字段数据的名称或编号。通过生成字段数据的索引标识,管理服务器在存储具有该数据结构的数据时,可将各个字段数据的索引标识与对应的字段数据关联的存储,从而可通过索引标识进行对存储数据中的目标字段数据的读取。“数据结构的索引标识”为管理服务器生成的与该数据结构对应的索引标识。
98.在一些可选的实现方式中,上述步骤602还可以具体如下进行:
99.首先,对获取的数据结构进行校验。举例来说,可以校验数据结构内数据间的语法是否符合语法规则,或者是否存在语法错误。
100.然后,在确定数据结构校验通过后,确定数据结构所使用的编程语言。作为示意,数据结构可以使用的编程语言可以包括但不限于:solidity编程语言、golang编程语言、c 编程语言等等。
101.最后,根据编程语言对数据结构进行解析,生成各个字段的字段表。举例来说,针对不同编程语言,可以预先设定对应的解析方式,由此,可以实现根据编程语言对数据结构进行解析。通过本实现方式,可以实现对不同编程语言的数据结构的解析。
102.在一些可选的实现方式中,上述提供区块链服务的方法还可以包括以下内容:生成并存储数据结构的数据结构表。作为示例,图6b示出的管理服务器中存储的表格示意图中还包括数据结构表62。该数据结构表62中可以包括主键id(标识)、数据结构的名称、数据结构的索引标识、数据结构代码、数据结构版本、以及所属区块链的区块链id(标识)和区块
链名称等信息。其中,数据结构的索引标识为由管理服务器生成的在多个数据结构中唯一标识目标数据结构的数据结构的名称或编号。通过生成数据结构的索引标识,管理服务器在存储具有该数据结构的数据时,可将各个数据结构的索引标识与对应的数据结构的多个字段的字段数据的索引标识关联的存储,从而可通过索引标识进行对存储数据中的目标数据结构的多个字段的字段数据的读取。
103.可选的,上述提供区块链服务的方法还可以包括以下内容:
104.步骤s1,实时从区块链节点接收链上数据。其中,链上数据可以包括但不限于数据标识、各个字段的字段标识、各个字段的与字段标识关联的字段数据,该链上数据中包括的字段标识指示了该链上数据所对应的数据结构,或者该链上数据中也可以包括对应的数据结构的名称。其中,该链上数据例如为上述融资交易的交易收据。该交易收据例如具有如下所述的形式:
105.{receipt1
106.tokennum:1000
107.……
108.senderid:a
109.receiverid:b}
110.其中,“receipt1”为数据标识,交易收据receipt1中包括tokennum、senderid、receiverid等多个字段的字段名称(或字段标识)和字段值。
111.步骤s2,根据各个字段的字段标识获取各个字段的字段表。
112.具体是,确定链上数据对应的数据结构表,从数据结构表中确定数据结构的索引标识。例如,根据上述交易收据receipt1中包括的tokennum、senderid、receiverid等多个字段,可以确定交易收据receipt1中包括的多个字段与数据结构中定义的多个字段一致,从而确定交易收据receipt1与数据结构表对应。或者,在交易收据receipt1中包括数据结构的名称(financing)或者对应的合约名称的情况下,可根据数据结构的名称确定数据结构表。
113.然后可根据各个字段的字段标识和数据结构的索引标识确定字段表。
114.步骤s3,存储上述数据receipt1,并通过各个字段表中各个字段数据的索引标识建立各个字段标识与各个字段数据的索引关系。具体是,可建立各个字段数据的索引标识与对应的字段数据的存储位置(或存储地址)的映射关系表,从而可根据字段的字段表确定字段标识对应的字段数据的索引标识,并根据该映射关系表确定字段数据的存储位置,从而读取该字段数据。
115.具体是,可生成并存储链上数据的数据表,其中,数据表中可以包括数据标识、数据结构的索引标识、各个字段数据、以及各个字段数据的索引标识。作为示例,图6b示出的管理服务器中存储的表格示意图中还包括数据表63。
116.在步骤603中,根据字段表进行对区块链的数据的查询。
117.具体是,管理服务器可从用户终端接收到链上数据查询请求,响应于该查询请求进行数据查询操作,或者管理服务器可响应于业务的需求进行数据查询操作。
118.例如,管理服务器在融资业务场景中需要根据融资交易的数据向区块链发起提现交易,因此需要从拉取的区块链数据中查询融资方的融资交易。即,管理服务器可查询
senderid为a的具有financing数据结构的全部交易。具体是,管理服务器可根据senderid定位到financing数据结构中senderid字段对应的字段表,从字段表中获取senderid字段的索引标识(例如v5),根据该索引标识检索全部v5=a的数据表,并从检索到的数据表中获取由a发送的交易。
119.由于本实施例将区块链的链上数据的数据结构自动映射为管理服务器中的字段表,管理服务器基于映射得到的字段表可以提供边缘算力。由此,可以快速为区块链搭建可以提供边缘算力的服务节点。
120.应当注意,尽管在上述实施例中,以特定顺序描述了本说明书实施例的方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
121.与前述基于区块链的融资方法实施例相对应,本说明书还提供了基于区块链的融资装置的实施例。
122.如图7所示,图7是本说明书根据一示例性实施例示出的一种基于区块链的融资装置框图,该装置部署于服务器,服务器与区块链的节点对接,服务器中存储有从区块链的节点获取的第一交易的数据,第一交易用于从资方用户的区块链账户向融资方用户的区块链账户转送第一链上资源,服务器管理资方用户的链下账户和融资方用户的链下账户,资方用户的链下账户中包括冻结的与第一链上资源对应的融资资源,该装置可以包括:发送模块701,获取模块702和转入模块703。
123.其中,发送模块701,用于响应于融资方用户的资源转换请求,根据第一交易的数据向区块链的节点发送第二交易,第二交易用于从融资方用户的区块链账户消除第一链上资源。
124.获取模块702,用于在从区块链的节点接收第二交易完成的信息之后,从资方用户的链下账户获取冻结的融资资源。
125.转入模块703,用于向融资方用户的链下账户转入获取的融资资源中的至少部分。
126.在一些实施方式中,该装置还可以包括:拉取模块和存储模块(图中未示出)。
127.其中,拉取模块,用于周期地从区块链拉取新的区块的数据。
128.存储模块,用于存储拉取的新的区块的数据。
129.在另一些实施方式中,拉取模块被配置用于:获取区块链的当前最新块高,将从当前起始块高至当前最新块高的待拉取块高范围分成一个或多个段,当前起始块高等于前次最新块高加一,前次最新块高是前次从区块链拉取交易数据时获取的最新块高,以及启用多任务处理以分别从一个或多个段中的每个段拉取该段包括的区块的交易数据。
130.在另一些实施方式中,该装置还可以包括:确定模块和分段模块(图中未示出)。
131.其中,确定模块,用于根据区块链的标识信息确定用于区块链的分段策略。
132.分段模块,用于根据分段策略将待拉取块高范围分成一个或多个段。
133.在另一些实施方式中,该装置还可以包括:数据结构模块和解析模块(图中未示出)。
134.其中,数据结构模块,用于从区块链的节点获取链上数据的数据结构,数据结构对
链上数据中的多个字段进行定义。
135.解析模块,用于对获取的数据结构进行解析,生成并存储各个字段的字段表,字段表中包括对应字段的字段标识、字段数据的索引标识和该字段的属性信息。
136.其中,存储模块被配置用于:存储拉取的数据,通过各个字段表中各个字段数据的索引标识建立拉取数据的各个字段标识与各个字段数据的索引关系。
137.在另一些实施方式中,发送模块701被配置用于:根据第一交易中包括的字段数据对应的索引关系查询出第一交易的数据,根据第一交易的数据向区块链的节点发送第二交易。
138.在另一些实施方式中,发送模块701被配置用于:根据第一交易的数据,确定从资方用户的区块链账户向融资方用户的区块链账户转送的第一链上资源的第一数目。向区块链的节点发送用于从融资方用户的区块链账户消除第一数目的第一链上资源的第二交易。
139.在另一些实施方式中,该装置还可以包括:分润模块(图中未示出)。
140.其中,分润模块,用于向第一交易的处理方的链下账户和/或第二交易的处理方的链下账户转入第三数目的融资资源;第三数目的融资资源为获取的融资资源中的部分。
141.在另一些实施方式中,该装置还可以包括:充值模块和冻结模块(图中未示出)。
142.其中,充值模块,用于向区块链发送第三交易,第三交易用于对资方用户的区块链账户充值预设数目的第一链上资源。
143.冻结模块,用于冻结资方用户的链下账户中与预设数目的第一链上资源对应的融资资源。
144.应当理解,上述装置可以预先设置在服务器中,也可以通过下载等方式而加载到服务器中。上述装置中的相应模块可以与服务器中的模块相互配合以实现基于区块链的融资方案。
145.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书一个或多个实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
146.本说明书一个或多个实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2至图6任一实施例提供的基于区块链的融资方法。
147.本说明书一个或多个实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述图2至图6任一实施例提供的基于区块链的融资方法。
148.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件
(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
149.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
150.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为服务器系统。当然,本技术不排除随着未来计算机技术的发展,实现上述实施例功能的计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
151.虽然本说明书一个或多个实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的
过程、方法、产品或者设备中还存在另外的相同或等同要素。例如若使用到第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
152.为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
153.本发明是参照根据本发明实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
154.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
155.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
156.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
157.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
158.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储、石墨烯存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
159.本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或
结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
160.本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
161.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
162.以上所述仅为本说明书一个或多个实施例的实施例而已,并不用于限制本本说明书一个或多个实施例。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献