SOA中的Mid-tier caching
SOAs需要持久化的机制来持久信息,例如应用程序中每个商业步骤的状态、长期的商业执行进程的状态、Web services的管理、信息的监视、可用Web services的列表,还有更多。通常,大部分的这类信息是被频繁请求和访问的,因此这就产生了middle tier中cache的需要,它减轻了由于大量访问同样信息存储而带来的运行瓶颈。
当SOA数据和元数据都是XML时,我们提议建立一个简单,但是有效的mid-tier caching架构,这包括一个充当mid-tier cache的XML数据库和大量的XQuery-powered服务。一个SOA存储库可以通过一个有效的mid-tier caching提高原SOA的运行效率、可靠性、富功能性以及重用性。而这一切是由以下的服务驱动的:
基于策略的caching服务:为了提高运行效率和服务质量
一个基于策略的caching服务可以建立基于XQuery的策略,而对一些低效服务进行cache。这些策略在cache被更新前同样被构造成包括time-to-live。基于time-of-day请求的策略可以决定cache中的数据对该请求是否合法或者源数据是否必须使用。
同样,基于服务可用性的策略可以确认当前服务是否可用,结果是否可以从缓存中获得。一个cache的更新控制可以基于时间或者通过其他的配置变量来触发XML的持久性机制。这种设计同样可以包括对XML持久性机制服务请求而带来的动态just-in-time日志跟踪。
数据用途重定向服务:为了富功能化和提高运行效率
一个数据用途重定向服务可以允许附加的过滤器和服务结果内容的搜寻标准。并且,XQuery可以被用来驱动重用内容的转换和提供对返回结果内容的分析和报告。XQuery还可以传递部分结果集和生成基于多个服务内容聚合的最终结果集。
数据抽象服务:为了简化部署和方便维护。拥有一个数据抽象服务, 系统中的web services就没有必要再认识所有单独的数据源。图2显示了一个Web services的很好的例子,消除了为每个操作开发单独的客户端和web services的需要。这样的话,异构的数据源例如JDBC、HTTP、WSDL或文件系统的数据源管理都可以使用这个服务。
Figure 2. A data abstraction service eliminates the requirement of different Web services clients for different operations.
除此之外,既然服务可以运行在任何系统上,一个SOA存储库可以被用来整合SOA中的各种服务,也可以通过与数据处理尽可能接近的数据收集来减缓center-tier process-abstracting远程服务的效率问题。作为一个在central-tier的persistence layer,SOA存储库可以用来存储事务数据从而实现很多用途,包括分析和集成管理,例如日志记录。通过在central-tier处理抽象与合成的数据元素,一个集中的SOA数据存储库形成了。
现存的SOA技术,例如企业服务总线和orchestration引擎都可以部署SOA存储库进行状态管理、工作流持久化和信息持久化。一个SOA存储库同样可以在SOA注册中提供持久化中枢,不管他们是UDDI (Universal, Description, Discovery, and Integration) 还是ebXML 注册,从而来允许发现、发布、签定服务。
对SOA中复杂多变的XML数据管理的需要
正如前面讨论过,web services和SOA在产生了大量复杂的、作为程序间交换的data-rich XML消息形式的新数据,而这些数据必须存储然后用来审核和分析。当我们看着这些可以实现SOA的各种各样的技术,很明显的是,SOA的关键特征和带来的好处构成了厂商在这个领域的准则。如图3,这些功能构成了核心的SOA和web services的基础构造
–Web services 管理
–Web services监视
–SOA管理
–Web services安全
–SOA持久化和caching
–SOA发现、发布和签署
Figure 3. Core Web services infrastructure (Source: Burton Group).
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
SAP收购CallidusCloud 与Salesforce竞争
一直被称为后台办公巨头的SAP现在似乎也想在前台办公大展拳脚。 最新的迹象是SAP收购CallidusClou […]
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。