【问题标题】:Windows Azure role is state full or notWindows Azure 角色状态是否已满
【发布时间】:2011-01-07 07:20:53
【问题描述】:

根据 MSDN,Azure 服务可以包含任意数量的辅助角色。据我所知,Windows Azure Fabric 可以随时回收工作角色。如果是真的,那么:

  1. 工人角色应该是无状态或
  2. 辅助角色应将其状态保存到 Windows Azure 存储服务。

但我想创建一个包含客户端数据的服务,并且不想使用 Azure 存储服务。我怎样才能做到这一点?

【问题讨论】:

    标签: azure azure-worker-roles


    【解决方案1】:

    AppFabric 的速度(不管它叫什么)组件是一个分布式缓存,可以在这些情况下使用。

    【讨论】:

      【解决方案2】:

      Azure 的 Web 和计算角色是无状态的,这意味着它的所有本地数据都是易变的,如果您想维护状态,您需要使用一些外部资源来维护该状态和应用程序中的逻辑来处理它。为简单起见,您可以使用 Azure 驱动器,但在内部还是使用 Blob 存储。

      【讨论】:

        【解决方案3】:

        您可以使用标准文件 IO API 写入辅助角色的本地存储 - 但实例关闭时将被删除。

        您还可以使用 SQL Azure,或通过 HTTP 将数据发布到另一个存储服务(例如 Amazon S3 或您自己的服务器)。

        但是,这可能会对性能产生影响。根据您要存储的数据量、频率和大小,使用 Azure 存储可能会更好!

        为什么不想使用 Azure 存储?

        【讨论】:

          【解决方案4】:

          如果数据可以存储在 Azure 中,您有很多选择:Azure 分布式缓存、SQL Azure、blob、表、队列或 Azure 驱动器。听起来您需要持久性,但不能使用任何这些 Azure 存储机制。如果数据安全是问题,你能加密/散列数据吗?了解为什么会有用。

          一种替代方法可能根本不持久,通过将同步 Web 服务调用链接/嵌套在一起,从而实现可靠的消息传递。

          另一个可能是使用 Azure Connect 将 Azure 计算资源域加入到您的本地数据中心(如果有的话),并使用您的本地存储。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-09-21
            • 1970-01-01
            • 2011-10-30
            相关资源
            最近更新 更多