您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 电子政务-设计高性能四层解决方案
医疗行业管理专家Ncking电子政务-设计高性能四层解决方案医疗行业管理专家Ncking议程现存模型的主要问题中间层+缓存编程模型WCF简介Memcached介绍WCF编程实践Memcached编程实践医疗行业管理专家Ncking基本没有安全性可言系统之间的扩展性级差服务器资源多数浪费在保持强连接上系统遭遇性能瓶颈时,基本上是束手无策在网络不稳定时,客户体验度差程序可读性、兼容性、测试方便度都不好现存单层模型主要问题医疗行业管理专家Ncking中间层+缓存编程模型简介浏览器memcachedWCF中间层客户端移动设备MsSQLOracle数据库memcachedmemcachedmemcached首次访问:从数据库中取得数据保存到memcached第二次后:从memcached中取得数据显示到前台医疗行业管理专家NckingWCF简介.NET框架的一部分分布式、面向服务应用的统一编程模型WebServices.NETRemotingMSMQCOM+/EnterpriseServicesWCF医疗行业管理专家Ncking什么是Memcached?Memcached是国外社区网站LiveJournal的开发团队开发的高性能的分布式内存缓存服务器。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。LiveJournal团队开发了包括Memcached、MogileFS、Perlbal等不错的开源项目。官方网站:介绍:医疗行业管理专家NckingMemcached介绍谁在用Memcached?国外国内医疗行业管理专家Ncking支持多种通讯协议:HTTP,TCP等更改通讯协议代价低一个服务可同时支持多种通讯协议支持多种服务宿主:IIS,任何.NETmanaged程序安全性、事务、可靠性支持多种消息格式:SOAP,REST等WCF简介–优点医疗行业管理专家NckingWCF简介-SOA面向服务的架构(SOA)1.服务端与客户端是松耦合的2.通过传递消息来通讯3.消息的格式4.服务的内容医疗行业管理专家Ncking服务端EndPoint•Address定义通讯的地址•Binding定义如何通讯•Contract定义通讯的内容WCF编程模型医疗行业管理专家Ncking客户端服务描述WSDL服务代理WCF编程模型医疗行业管理专家NckingWCF宿主Self-hostingWCFHostingProcess公开WCF元数据WCF客户端获取WCF元数据生成WCF客户端代理WCF编程模型医疗行业管理专家Ncking代码System.ServiceModel命名空间EndPoint:System.ServiceModel.ServiceEndPointAddress:System.UriBinding:System.ServiceModel.BindingContract:接口、System.ServiceModelattributesWCF编程模型医疗行业管理专家NckingServiceContract:WCF编程模型医疗行业管理专家Ncking配置(App.config/Web.config)system.ServiceModelservicesserviceendpointendpoint//service/servicesbindingsbinding/binding/bindings/system.ServiceModelWCF编程模型医疗行业管理专家Ncking编写WCF应用的步骤:1.定义Contract接口例如,interfaceIService2.实现Contract接口例如,classService3.定义DataContract4.配置Address,Binding5.宿主程序6.编写客户端程序,添加服务引用WCF编程实践医疗行业管理专家Ncking代码示例:Ncking.Wcf1.Ncking.Wcf服务示例程序2.编写Ncking.WCFService契约及服务3.编写Ncking.Wcf.WindowsService服务的宿主程序(Win服务)4.编写Wcf.Client服务客户端程序,调用WCF服务WCF编程实践医疗行业管理专家NckingBinding–定义WCF如何进行消息通讯协议(WS-*)、编码方式、传输方式(Http,Tcp)Binding的类型BasicHttpBinding,WSHttpBinding,NetTcpBinding等自定义Binding通过配置更改Binding–示例Ncking.WcfWCF编程实践-Binding医疗行业管理专家Nckingvarpool=SockIOPool.GetInstance(cache1);pool.SetServers(new[]{192.168.1.101:1235,192.168.1.101:1235});pool.Initialize();varclient=newMemcachedClient();client.Set(a,100);//存入client.Get(a);//获取varb=client.KeyExists(a);//判断client.Delete(a);//删除Memcached编程实践医疗行业管理专家Ncking谢谢!
本文标题:电子政务-设计高性能四层解决方案
链接地址:https://www.777doc.com/doc-4605711 .html