Windows Azure AppFabric
AppFabric概述
-
AppFabric为本地应用和云中应用提供了分布式的基础架构服务
-
用户本地应用与云应用之间进行安全联接和信息传递
-
云应用和现有应用或服务之间的连接及跨语言、跨平台、跨不同标准协议的互操作变得更加容易
-
AppFabric目前主要提供互联网服务总线(Service Bus)、访问控制(Access Control)服务和高速缓存服务
-
Windows Azure AppFabric的所有部件都是在Windows Azure的基础上创建的
-
服务总线:通过云中应用公开的终端简化公开应用服务,终端是可以被其他应用访问的。服务总线同样能够处理网络地址转换所带来的挑战,并且可以在没有打开新的公开应用端口的情况下通过防火墙。
-
访问控制:AppFabric访问控制服务简化支撑身份认证的工作,同时定义规则来控制用户访问。
-
高速缓存:提升应用的访问速率,缓存经常被访问的信息,减少查询数据库的次数。
AppFabric关键技术
服务总线
- 一个WCF服务可以通过服务总线注册终端,然后由客户端发现和使用这些终端访问服务。
- 用户服务需要使用AppFabric服务总线的开放TCP连接显示终端,并保持这个连接一直处于开放的状态。服务总线充当了一个外部DMZ(Demilitarized Zone,隔离区)的角色,起到了间接阻止攻击的作用。
访问控制
- 应用接受来自多个ldPs发出的身份和常见声明的Token,而不是处理包含不同声明的各种Tokens
- 访问控制是为一些ldPs提供支撑服务的,它同样可以对支持OpenID的ldP有效
- 浏览器和其他客户端可以通过OAuth2或WS-Trust请求ACTokens
- 为创建应用,Windows开发者使用WIF(WindowsIdentityFoundation)接受AC Tokens
- 访问控制的目标是为使创建过程变得简单
高速缓存
- AppFabric高速缓存服务为Windows Azure应用提供分布式缓存,同时为访问高速缓存提供一个库
- 高速缓存服务保存每个应用角色实例近期访问数据条款副本的缓存。
- 如果应用需求的数据条款不在本地的高速缓存中,高速缓存库将会自动地连接高速缓存服务提供的共享高速缓存。
- 高速缓存可以通过一些Windows Azure实例进行传播,每个实例都保存不同的缓存数据。
- 在Windows Azure中AppFabric高速缓存并不是缓存最近的访问信息
- Windows Server AppFabric与Windows Azure AppFabric之间最大的区别在于:Windows Azure AppFabric是一种服务,它不需要配置服务器和管理高速缓存,而且是面向多租户的,每个应用都可以获得实例。