论文部分内容阅读
Internet上的商务活动具有越来越复杂的快速集成异类系统的需求,因为不存在统一的标准,所以大量不同平台、软件和硬件的组合阻碍了这种需求的实现。Web服务正是一种满足于这种需求的技术,它可以构建一个完整的商业企业运用。网络缓存尤其是Web缓存技术是一种提高网络性能,降低网络拥塞的有效方法。如何将Web缓存技术运用到Web服务技术当中成了人们关心的一个问题。Web服务并没有针对缓存有特殊设计,相反其几乎不支持缓存。Web服务是用SOAP(Simple Object Access Protocol)消息的格式以POST方式加载在HTTP(HyperText Transport Protocol)上在Internet进行发送,而一般的缓存软件只对HTTP的GET方式起作用;Web服务消息的HTTP头部中的Cache-Control域会被指定为no-cache。因此,目前的缓存软件均不支持对Web服务的缓存。通过对目前常用的几种代理缓存软件的比较分析,发现Squid是一种良好的代理缓存服务器软件,对于Web用户来说它是一个高性能的代理缓存服务器。Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有客户的请求,有良好的缓存管理功能和访问控制功能,能满足绝大多数缓存需求,以现有Squid软件作为基础设计Web服务缓存软件可以利用Squid这些良好功能。通过分析SOAP消息格式规范,找到Web服务的SOAP请求消息的特定格式,通过这种特定的格式使得Squid可以识别SOAP请求,在此基础上将Squid的客户端的工作流程和服务器端的工作流程针对Web服务消息的特点重新做了设计,使得经改进后的Squid软件可以支持Web服务的缓存。缓存软件需要一种可以灵活指定的缓存策略来达到Web服务追求的高效、安全的目标,通过Web页面指定缓存策略可以让缓存软件更加高效、实用。