缓存数据处理方法及装置与流程

文档序号:12718469阅读:211来源:国知局
缓存数据处理方法及装置与流程
本申请涉及计算机
技术领域
,特别是涉及缓存数据处理方法及装置。
背景技术
:企业交易总线,是传统中间件技术与XML、Web服务等技术结合的产物,作为网络中最基本的连接中枢,可消除不同系统、不同应用之间的技术差异,让不同的应用服务器协调运作,实现不同服务之间的通讯与整合。在现有中国保信技术架构中,以企业交易总线作为重要的公共平台,可以统筹管理中国保信技术框架中各组件群之间的交互,同时还可扩展到不同的应用场景,以及提供面向公司级、行业级等的服务重用、数据共享等。为了解决现有企业交易总线以(BrokerArchive,BAR)文件的压缩包(可称为BAR包)的形式对外提供服务,而导致的人力及时间成本高、占用大量的系统存储资源等问题,本申请人提出了“一种基于图形化的数据处理方法及装置”中,无需进行BAR包的开发,而是提供用于对第一类型服务(比如原子服务)进行组装的图形化操作界面,以拖拽形式在所述操作界面中添加第一类型服务节点、在相关两节点之间添加连接线、编辑第一类型服务节点的身份信息等,进而根据所述操作界面中第一类型服务节点的身份信息、节点间的先后顺序生成由第一类型服务组装成的第二类型服务(比如业务服务)所对应的服务配置模板,并可将服务配置模板推送至预置缓存,以便在请求相关业务服务时调用对应的服务配置模板以对外提供服务。关于缓存,目前比较主流的解决方案是使用Redis或者MemCache,一般会使用独立的缓存服务器用于专门安装此类软件以提供缓存服务,其他应用服务器可通过网络访问所述缓存服务器以获取数据,上述方案虽然可提供良好的缓存管理,但对于网络带宽的要求比较高,网络带宽可直接影响缓存性能。现有中国保信技术架构中的企业交易总线是基于IBMWMB7.0发开出来的,而IBMWMB7.0产品本身并没有提供缓存功能,导致总线运行时需要从相关缓存服务器的数据库中实时查询运行参数,假设WMB集群有8个节点,在满负荷运行时则有2048个线程同时进行查询操作,数据库的压力非常大,若数据库不堪压力而导致宕机,还将直接导致整个WMB集群的崩溃。为解决上述数据库压力和集群稳定性的问题,IBM还提供了第三方缓存插件“IA91Cache”,此插件只提供基础的缓存功能并且与WMB产品高度耦合,数据存储结构较为复杂,需手动读写缓存,且缺少内存管理机制,长期运行时容易出现内存泄漏等问题,稳定性较低。技术实现要素:本申请提供了缓存数据处理方法及装置,可提高查询效率,进而可提高总线运行速度,且无需使用专门的缓存服务器,无网络带宽要求并节省硬件成本。本申请提供了如下方案:一方面,提供了一种缓存数据处理方法,应用于预置缓存中,包括:获取服务配置模板,所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板;为每个服务配置模板分配一个服务标识;对每个服务标识进行加密以生成对应的查询标识;将所述服务配置模板与其对应的查询标识存储于系统内存中。可选的,所述为每个服务配置模板分配一个服务标识,包括:根据服务内容对获取到的服务配置模板进行区分;为区分后的每个服务配置模板分配一个服务标识。可选的,所述方法,还包括:当接收到调用任一服务配置模板的请求时,根据该服务配置模板的服务标识生成校验值;将所述校验值与系统内存中的查询标识进行比对;当所述校验值与任一查询标识相匹配时,从系统内存中调用与该查询标识对应的服务配置模板,以便根据服务配置模板获得相应的运行参数,并对所述运行参数进行运算以得到与所述服务配置模板所对应服务相关的运算结果。可选的,所述方法,还包括:在通过第三方浏览器应用接收到进入服务配置模板查询页面的请求时,提供用于接收服务标识及提交查询请求的第一操作选项;当通过所述第一操作选项接收到服务标识及查询请求后,根据接收到的服务标识生成校验值;将所述校验值与系统内存中的查询标识进行比对;当所述校验值与任一查询标识相匹配时,从系统内存中获取与该查询标识对应的服务配置模板并以网页形式进行显示。可选的,所述方法,还包括:提供用于对服务配置模板进行删除的第二操作选项;当通过所述第二操作选项接收到删除服务配置模板的请求时,执行对服务配置模板进行删除的操作。可选的,所述方法,还包括:提供针对操作结果的反馈信息。另一方面,提供了一种缓存数据处理装置,设置于预置缓存中,包括:服务配置模板获取单元,用于获取服务配置模板,所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板;服务标识分配单元,用于为每个服务配置模板分配一个服务标识;查询标识生成单元,用于对每个服务标识进行加密以生成对应的查询标识;存储单元,用于将所述服务配置模板与其对应的查询标识存储于系统内存中。可选的,所述服务标识分配单元,具体用于:根据服务内容对获取到的服务配置模板进行区分;为区分后的每个服务配置模板分配一个服务标识。可选的,所述装置,还包括:校验值生成单元,用于当接收到调用任一服务配置模板的请求时,根据该服务配置模板的服务标识生成校验值;比对单元,用于将所述校验值与系统内存中的查询标识进行比对;服务模板调用单元,用于当所述校验值与任一查询标识相匹配时,从系统内存中调用与该查询标识对应的服务配置模板,以便根据所述服务配置模板获得相应的运行参数,并对所述运行参数进行运算以得到与所述服务配置模板所对应服务相关的运算结果。可选的,所述装置,还包括:第一操作选项提供单元,用于在通过第三方浏览器应用接收到进入服务配置模板查询页面的请求时,提供用于接收服务标识及用于提交查询请求的第一操作选项;校验值生成单元,用于当通过所述第一操作选项接收到服务标识及查询请求后,根据接收到的服务标识生成校验值;比对单元,用于将所述校验值与系统内存中的查询标识进行比对,显示单元,用于当所述校验值与任一查询标识相匹配时,从系统内存中获取该查询标识对应的服务配置模板并以网页形式进行显示。可选的,所述装置,还包括:第二操作选项提供单元,用于提供用于对服务配置模板进行删除的第二操作选项;删除单元,用于当通过所述第二操作选项接收到删除服务配置模板的请求时,执行对服务配置模板进行删除的操作。可选的,所述装置,还包括:反馈信息提供单元,用于提供针对操作结果的反馈信息。根据本申请提供的具体实施例,本申请公开了以下技术效果:通过本申请实施例,在预置缓存获取推送来的服务配置模板(所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板)后,可为每个服务配置模板分配一个服务标识并对每个服务标识进行加密以生成对应的查询标识,然后将所述服务配置模板与其对应的查询标识存储于系统内存中。以此,一方面,可根据所述查询标识对服务配置模板进行查询,可提高查询效率,进而提高企业交易总线运行速度;另一方面,无需使用专门的缓存服务器来实现缓存,因此无网络带宽求并且可节省硬件成本;再一方面,可与WMB产品完全解耦,可运行在任何支持JAVA语言的企业交易总线产品上,同时规避了内存管理、内存泄露等,独立性及稳定性更强。当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的方法流程图;图2是本申请实施例提供的方法中的界面示意图;图3是本申请实施例提供的装置示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。首先,对
背景技术
中提到的现有缓存解决方案进行简单介绍。Memcache,是一种分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著。Redis,是一种key-value存储系统,与Memcache类似,但支持存储的value类型更多样,包括string(字符串)、list(链表)、set(集合)等,这些数据类型都支持push/pop、add/remove及取交集并集和差集等操作。在此基础上,Redis与Memcache一样,为了保证效率,数据都是缓存在内存中,区别在于Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主-从)同步。Redis的出现,很大程度补偿了Memcache这类key-value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。下面参看图1,本申请实施例首先提供了一种缓存数据处理方法,可应用于预置缓存中,包括以下步骤:S101,获取服务配置模板,其中,所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板。在本实施例中,可通过本申请人提出了“一种基于图形化的数据处理方法及装置”中的用于对第一类型服务(比如原子服务)进行组装的图形化操作界面,以拖拽形式在所述操作界面中添加第一类型服务节点、在相关两节点之间添加连接线、编辑第一类型服务节点的身份信息等,进而根据所述操作界面中第一类型服务节点的身份信息、节点间的先后顺序信息,生成由第一类型服务组装成的第二类型服务(比如业务服务)所对应的服务配置模板。然后,可将生成的服务配置模板(即服务配置模板中包含的所有数据)推送至预置缓存,也就是说,预置缓存可获取推送来的服务配置模板。S102,为每个服务配置模板分配一个服务标识。在具体实现时,服务配置模板可为逐个推送,也可为批量推送,当预置缓存接收到推送来的服务配置模板后,可根据服务内容(比如该服务配置模板对应的业务服务内容)对获取到的服务配置模板进行区分,然后再为区分出来的每个服务配置模板分配一个对应的服务ID(比如,服务ID可为数字与字母的组合),以作为服务标识。S103,对每个服务标识进行加密以生成对应的查询标识。在具体实现时,可以哈希算法进行加密,即计算每个服务标识(每个服务ID)的哈希值,以作为每个服务标识对应的查询标识。由于哈希值是一种数据唯一且极其紧凑数值表示形式,因此,可将计算得到的哈希值作为每个服务配置模板唯一的查询ID,以便于后续对服务配置模板进行查询时使用。S104,将所述服务配置模板与其对应的查询标识存储于系统内存中的预置位置,该系统内存的预置位置可用于存储所有推送来的服务配置模板的数据及其对应的查询标识。在本实施例中,服务配置模板与查询标识的存储形式可如表1所示:模板查询标识001X1X1X002A1B1C…………表1以此,可通过所述查询标识查询服务配置模板,由于哈希值的数据唯一性及紧凑性,因此,在需要对服务配置模板进行查询、调用等情况下,可大大提高对于服务配置模板的查询速度,进而提高企业交易总线的运行速度,经性能测试,每次查询仅需需要2ms,查询效率已经完全满足当前以及未来的发展需要。在实际应用中,当通过企业交易总线平台请求任一业务服务时,则为接收到调用该业务服务对应的服务配置模板的请求,可根据该服务配置模板的服务标识(服务ID)生成校验值。在本实施例中,可通过计算该服务ID的哈希值以作为校验值,然后将所述校验值与系统内存中的查询标识进行比对,当所述校验值与任一查询标识相匹配时,则从系统内存中调用与该查询标识对应的服务配置模板,以便对所述服务配置模板进行解析等操作以获得相应的运行参数,然后对所述运行参数进行预置的业务运算(比如,加和运算、取余预算等),以得到与所述服务配置模板所对应服务相关的运算结果,比如服务配置模板所对应的服务为某人员的参保次数及参保总金额,则运算结果即可对应为该人员参保的总次数及总金额,等等。以此,即使在企业交易总线的实际应用中经常需要调用大量的服务配置模板以提供相关的服务的情况下,通过服务ID、查询标识进行服务配置模板的查询、调用,仍可大大提高查询及调用速度,进而提高企业交易总线整体的运行速度。在本实施例中,还提供通过网页形式对服务配置模板进行显示,以便于技术人员对模板数据进行查看,对模板数据的正确性进行检查等。在具体实现时,可在通过第三方浏览器应用接收到进入服务配置模板查询页面的请求时,提供用于接收服务标识及提交查询请求的第一操作选项。参看图2所示,比如,可通过在第三方浏览器应用界面20的地址栏中21输入预置地址(所述预置地址可为多种形式,可为IP地址等,例如1.1.1.1)并执行访问该预置地址的操作,比如,在地址栏输入该预置地址后,比如可点按键盘中的“回车”键等,即可对应为通过第三方浏览器应用接收到进入服务配置模板查询页面的请求,则可进入与该预置地址相关的查询页面22,并提供用于接收服务标识及提交查询请求的第一操作选项23(可包括用于接收服务标识的输入框、“查询”按钮等)。当通过所述第一操作选项23接收到服务标识(比如手动输入服务ID)及查询请求(点按“确定”按钮)后,则可根据接收到的服务标识(服务ID)生成校验值。其中,输入服务ID,可输入单个的服务ID,以进行系统内存中单个服务配置模板的查询,也可输入预置的全部模板查询ID,比如“ALL”等(当然也可为预置的其他形式的查询ID),以进行系统内存中全部服务配置模板的查询。在本实施例中,比如输入单个服务ID,可以计算该服务ID的哈希值以作为校验值,然后将所述校验值与系统内存中的查询标识进行比对,当所述校验值与任一查询标识相匹配时,可从系统内存中获取该查询标识对应的服务配置模板,并以网页形式对服务配置模板中的数据进行显示;比如输入“ALL”,则可获取预置缓存中所有服务配置模板的服务ID,然后可依次计算每个服务ID的哈希值作为其对应的校验值,然后将所有校验值依次与系统内存中的查询标识进行比对,当校验值与任一查询标识相匹配时,从系统内存中获取该查询标识对应的服务配置模板,可将获取到的所有服务配置模板中的数据以网页形式进行显示(比如可以滚动页面或以翻页的形式进行查看)。以此,可方便于相关人员在网页中查看服务配置模板中的数据,以进行数据检查等工作。此外,还可提供用于对服务配置模板进行删除的第二操作选项24,当通过所述第二操作选项24接收到删除服务配置模板的请求时,则可执行对服务配置模板进行删除的操作。比如,当如上述输入单个服务ID并查询到对应的服务配置模板后,以网页形式对该服务配置模板中的数据进行显示的情况下,可提供第二操作选项(比如,“删除”按钮)24,当点按所述“删除”按钮24,则为接收到删除该显示的服务配置模板的请求,可执行对该显示的服务配置模板进行删除的操作。比如,当如上述输入“ALL”并查询到全部服务配置模板后,以网页形式对全部服务配置模板的数据进行显示的情况下,可提供第二操作选项(比如,可为“全部删除”按钮,图中未示出),当点按所述“全部删除”按钮,则为接收到删除全部服务配置模板的请求,可执行对给全部服务配置模板进行删除的操作。在本实施例中,还可提供针对操作结果的反馈信息,所述操作结果可包括上述执行查询的查找结果、执行删除的操作结果等,可将该些操作结果(操作成功或操作失败)以提示信息的方式进行反馈,比如,“删除成功”、“查询失败”,等等,以更方便相关人员及时了解到自己的操作情况,以进行后续操作。通过本申请实施例,在预置缓存获取推送来的服务配置模板(所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板)后,可为每个服务配置模板分配一个服务标识并对每个服务标识进行加密以生成对应的查询标识,然后将所述服务配置模板与其对应的查询标识存储于系统内存中。以此,一方面,可根据所述查询标识对服务配置模板进行查询,可提高查询效率,进而提高企业交易总线运行速度;另一方面,无需使用专门的缓存服务器来实现缓存,因此无网络带宽求并且可节省硬件成本;再一方面,可与WMB产品完全解耦,可运行在任何支持JAVA语言的企业交易总线产品上,同时规避了内存管理、内存泄露等,独立性及稳定性更强。与前述实施例中提供的缓存数据处理方法相对应,本申请实施例还提供了一种缓存数据处理装置,参见图3,设置于预置缓存中,该装置可以包括:服务配置模板获取单元31,用于获取服务配置模板,所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板。服务标识分配单元32,用于为每个服务配置模板分配一个服务标识。其中,所述服务标识分配单元32,可具体用于:根据服务内容对获取到的服务配置模板进行区分,为区分后的每个服务配置模板分配一个服务标识。查询标识生成单元33,用于对每个服务标识进行加密以生成对应的查询标识。存储单元34,用于将所述服务配置模板与其对应的查询标识存储于系统内存中。在具体实现时,所述装置,还可包括:校验值生成单元,用于当接收到调用任一服务配置模板的请求时,根据该服务配置模板的服务标识生成校验值;比对单元,用于将所述校验值与系统内存中的查询标识进行比对;服务模板调用单元,用于当所述校验值与任一查询标识相匹配时,则从系统内存中调用与该查询标识对应的服务配置模板,以便根据所述服务配置模板获得相应的运行参数,并对所述运行参数进行运算以得到与所述服务配置模板所对应服务相关的运算结果。进一步的,所述的装置,还可包括:第一操作选项提供单元,用于在通过第三方浏览器应用接收到进入服务配置模板查询界面的请求时,提供用于接收服务标识及用于提交查询请求的第一操作选项。基于此,所述校验值生成单元,还可以用于:当通过所述第一操作选项接收到服务标识及查询请求后,根据接收到的服务标识生成校验值。以及显示单元,用于当所述校验值与任一查询标识相匹配时,从系统内存中获取该查询标识对应的服务配置模板并以网页形式进行显示。此外,所述装置,还可包括:第二操作选项提供单元,用于提供用于对服务配置模板进行删除的第二操作选项;删除单元,用于当通过所述第二操作选项接收到删除服务配置模板的请求时,执行对服务配置模板进行删除的操作。在实际应用中,所述装置,还可包括:反馈信息提供单元,用于提供针对操作结果的反馈信息。通过本申请实施例,在预置缓存获取推送来的服务配置模板(所述服务配置模板为通过预置图形化操作界面将第一类型服务进行组装以生成第二类型服务所对应的配置模板)后,可为每个服务配置模板分配一个服务标识并对每个服务标识进行加密以生成对应的查询标识,然后将所述服务配置模板与其对应的查询标识存储于系统内存中。以此,一方面,可根据所述查询标识对服务配置模板进行查询,可提高查询效率,进而提高企业交易总线运行速度;另一方面,无需使用专门的缓存服务器来实现缓存,因此无网络带宽求并且可节省硬件成本;再一方面,可与WMB产品完全解耦,可运行在任何支持JAVA语言的企业交易总线产品上,同时规避了内存管理、内存泄露等,独立性及稳定性更强。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上对本申请所提供的缓存数据处理方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1