下面是自承载的缺点:
◆可用性受到限制:服务只有在应用程序运行时才能被访问。
◆功能受到限制:自承载的应用程序在对高可用性、易管理性、可靠性、可恢复性、版本控制和部署方案的支持方面受到一定限制。至少,现有的 WCF 无法提供这些支持,因此在自承载的情况中,您必须自己实现这些功能;例如,默认情况下 IIS 提供了这些功能中几项。
换句话说,对于企业级方案来说不应考虑自承载方式。自承载适用于企业项目的开发或演示阶段。此外,当您希望用户桌面应用程序进行相互通信或在点对点情况下,可以对服务进行自承载。本书第 12 章对此进行了描述。
第 3 章介绍了几个自承载的方案示例,这些示例全都使用简单的控制台应用程序。为了在实际工作环境中更好地说明自承载,本章提供了一个 WinForms 应用程序,该程序所承载的服务用于跟踪 QuickReturns Ltd. 案例研究中证券商发布的报价。
在此方案中,有两个不同的 WinForms 应用程序。一个是证券商管理器应用程序,证券商可以使用该程序发布报价并进行证券交易。另一个程序是单独的 WinForms 应用程序,用于跟踪发布的报价。如列表 5-1 所示,该程序公开一个服务,所公开的服务实现了 ITradeTrackingService 约定,从而实现对报价的跟踪。证券商管理器应用程序会在成功通过 TradeService 发布报价后调用该服务。
列表 5-1:TradeTrackingService 的 ServiceContract
|
在 Windows 服务中进行承载
在 Windows 服务中承载 WCF 服务是一种合理的选择。不应将 Windows 服务与 WCF 服务混为一谈。它们都使用“服务”一词,但却具有不同的含义。Windows 服务是由操作系统管理的进程。Windows 提供了服务控制管理器,用于控制操作系统上安装的服务。Windows 通过服务来支持诸如网络、USB、远程访问、消息队列等操作系统功能。您可以使用 Visual Studio 2005,利用 Windows 服务项目模板(如图 5-2 所示)创建 Windows 服务。
![]() |
| 图 5-2:Visual Studio 2005 Windows 服务项目模板 |
Windows 服务项目模板会生成一个项目,其中包含两个文件:service1.cs 文件和 program.cs 文件。其中 service1.cs 文件包含服务实现,而 program.cs 文件则用于实例化并实质上承载 Windows 服务。要在 Windows 服务内部承载 WCF 服务,只需执行 Windows 服务的 Start() 方法和 Stop() 方法,如列表 5-2 所示。由于启动 Windows 服务的范例与启动 WCF ServiceHost 内的服务相似,因此最后需要将 WCF 服务的生存期与 Windows 服务的生存期相连。
列表 5-2:承载 WCF ServiceHost 的 Windows 服务
|
由此可见,编写用于承载 WCF 服务的 Windows 服务非常容易,而且与本章前面的自承载方案相比,它还有几个好处。另一方面,编写承载 WCF 服务的 Windows 服务也有一些您必须了解的缺点。
| 共18页: 上一页 [1] [2] [3] 4 [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] 下一页 | |||||||||||||||||||
|
|
· 并购专家:雅虎和微软14.. · Google官员露天机 Andr.. · 微软多管齐下推广Silve.. · 在PPC上安装pythonce · WindowsMobile应该如何.. · 如何用正则删除不包含.. |
· GitHub:基于Rails的Gi.. · Django是否已经达到顶.. · 开源!数据库的新道路 · 系统服务终结者 · 服务器正常连接网络但.. · 华为与服务器网络连接.. |
|
||||
| · WCF开发基础 · 珊瑚虫QQ作者侵权案开庭 · SQL Server 2008/2005.. · 华为员工自杀频频拷问.. · 计算机网络维护入门 · 开源虚拟化技术Xen · 贝恩资本携手华为22亿.. · 如何优化IT 控制能耗 |
· VMware技术应用 · 打造安全服务器 · iSCSI应用与发展 · FTTx光纤接入 · Windows Server 2008专.. · Linux——从菜鸟到高手 · 微软出价446亿美元收购.. · RAID——磁盘阵列基础 |
|||
|
||||
| · iSCSI应用与发展 · SQL Server 2008/2005.. · SQL Server 2008/2005.. · iSCSI应用与发展 · RAID——磁盘阵列基础 · 中间件应用技术专题 · 深入了解PGP加密技术 · 病毒查杀专题 |
· 国际文档格式标准开战 · SSL VPN详细知识 · Linux防火墙 · 打造安全服务器 · Sniffer安全技术从入门.. · 木马原理与防范 · ADSL应用面面俱到 · 入侵防护系统(IPS)初探 |
|||
|
||||
| · iSCSI应用与发展 · 中间件应用技术专题 · SQL Server 2008/2005.. · iSCSI应用与发展 · RAID——磁盘阵列基础 · 身份认证技术 · 病毒查杀专题 · 清除流氓软件——51CTO.. |
· SSL VPN详细知识 · Sniffer安全技术从入门.. · 了解统一威胁管理(UTM).. · 网络钓鱼 · ADSL应用面面俱到 · ADSL应用面面俱到 · 木马原理与防范 · 反垃圾邮件技术应用 |
|||