【IT168 技术文档】首先还是在Web Role中定义一个临时的文件系统,然后再由Web Role提供一个WCF的服务,让Worker Role来调用,从而达到对这个临时文件系统的共享和写入。
第一篇:Azure Service探索:存储之本地存储
第二篇:Azure Service探索:存储之队列存储
第四篇:Azure Services探索:存储之表(Table)存储
其实变换一下,就是要解决如何在Azure 服务中提供一个 WCF服务,然后这个WCF如何被配置,以及被其他角色(Worker Role,其它的Web role)或另外一个Azure服务调用。
基本的界面设计如下,唉没创意,还是用之前的那个例子进行修改
前台的Web Role 界面没有变化,还是向一个LocalStorage中写入消息,但同时也提供一个WCF的服务,也可以向这个LocalStorage写入消息,而后台的Worker Role就定期的调用这个WCF服务,写入Ping信息。
流程确定之后,就可以开始操作了。
首先还是创建一个Web Role + Worker Role的项目
接着在服务定义文件中定义文件存储,然后再Web Role中复制之前的代码。F5 运行,没有问题,然后我们开始增加WCF服务
点击Web Role项目,选择增加一个新的选项(Add New Item),如下图,
之后定义一个WCF的ServiceContract
1: namespace HostingWCFServices_WebRole
2:
3: {
4:
5: [ServiceContract]
6:
7: public interface IMessageLogger
8:
9: {
10:
11: [OperationContract]
12:
13: void LogMessage(string message);
14:
15: }
16:
17: }
18:
2:
3: {
4:
5: [ServiceContract]
6:
7: public interface IMessageLogger
8:
9: {
10:
11: [OperationContract]
12:
13: void LogMessage(string message);
14:
15: }
16:
17: }
18:
然后在myMessageLogger.svc.cs中实现这个Interface,具体的实现非常简单,就是向文件存储中写消息。