【IT168 技术文档】本节通过简短的语言讲解 Microsoft .NET Services (Dec 2008 CTP) SDK 里的实例,向大家展示 Service Bus 的入门知识。
需要安装 Microsoft .NET Services (Dec 2008 CTP) SDK
第一篇:Azure Services实例:玩转SQL Data Services(SDS)
第三篇:Azure Services实例:开发部署Azure留言板
第四篇:Azure Services实例:使用Blob Storage搭建简单网络硬盘
第五篇:Azure Services实例:Windows Azure日志与队列的使用
第六篇:Azure Services实例:实现Windows Azure聊天室
第七篇:Azure Services实例:在Windows Azure中使用PHP
使用实例:
首先,打开 Microsoft .NET Services (Dec 2008 CTP) SDK\Samples\ServiceBus\GettingStarted\Echo\CS35\ 目录下的 Visual Studio 解决方案 EchoSample.sln。
在 Service 项目上点击右键,启用新实例。
输入方案的用户名和密码。在 http://portal.ex.azure.microsoft.com 中设置的)验证成功后控制台会给出一个类似 "sb://servicebus.windows.net/services/sixsix/EchoService” 的 URI。
然后再启用一个客户端(Client)的调试实例。同样要求输入 Solution 名和密码。
此时客户端已经已经连上服务端的服务了。
相信大家通过解决方案名都已经知道这个服务的作用了,很简单,就是客户段输入字符串到服务端,服务端向客户端传回同样的字符串。
通过实例看 Service Bus 有啥用:
显然,这个实例中使用的服务是网络编程中最基础的 Echo 服务。我们使用了 Username/Password 的验证方式。
读者可以尝试关掉服务端。你会发现,客户端没有任何变化,只是不能再调用服务,不能得到 Echo 而已。这说明 Service Bus 其实起了一个桥接作用。服务端程序无论运行在怎样的网络环境下,无论是在 NAT 之内还是公共环境,也不在乎这个服务的 IP 如何更改,甚至服务处于防火墙后面,客户端对其的定位依赖于 Service Bus 提供的统一 URI,Service Bus 为服务提供了注册与地址解析。在本例中,Echo 服务的地址始终是 "sb://servicebus.windows.net/services/sixsix/EchoService/”,该服务的实际网络环境和地理位置,对客户机是完全透明的。这是上一节提到的,Service Bus 的一个实用的牛X功能。
另外,此时如果你打开 http://servicebus.windows.net/services/{your solution name}/,可以看到 Service Bus 把你 Solution 下的都以 Atom 1.0 Feed 的格式装在了 "Bus" 中(只显示当前可以使用的服务,也就是说,如果你关掉了服务端程序,就不会看到内容)。下面截图了显示了http://servicebus.windows.net/services/sixsix/ 。"sixsix" 是我的 Solution 名。目前这个 Solution 下只有 1 个 echoservice。
明白 Service Bus 的使用方法和目的后,编程操作是很容易的。请自行查看代码。