Fielding系统为大大小小的中上游石油和天然气公司提供两种强大的基于web的服务,帮助运营商精简生产活动和增加外勤业务管理、远程监控和生产分析。每个应用程序都包括一个全功能的移动版本,允许所有客户访问他们的数据并从任何现代智能手机上进行操作,包括iPhone、Android 和 Windows Phone。
FieldVisor 是一个领域自动化和数据采集应用程序,可以用于跟踪在石油和天然气生产操作中的任何动向。用户可以跟踪生产、装备、服务、处理历史、任务和许多其他方面的生产操作。FieldVisor更加侧重于以手动方式输入数据取代纸和笔等外业操作并提供稳健的分析并发出报告。ScadaVisor 监视远程设备如流量计、pump-off控制器、tanks、压缩机、PLC's、人工升降机和其他各种实时监控设备。同类之中它是唯一真正基于云计算的服务,因为它由我们自己的叫做VisorBridge的基于云计算的通信和轮询引擎所支持。
本来所有的Fielding系统应用程序都被托管在我们自己的数据中心中。这些应用程序都被升级以充分利用Windows Azure所带来的优势,并在2011年7月份完全被迁移到Windows Azure上。做迁移到云的决定是因为我们想集中精力和资源研究前沿技术而不是花大量的精力在每个应用程序的服务器、备份和网络的管理上。我们认识到通常情况下公司花费了大量的时间和资源来支持他们的业务而不是集中精神研究技术,而云计算就允许我们这样做。迁移到云还有利于通过减少过剩的服务器资源和包含在维护数据中心和主机代管的软件许可上花费的昂贵费用来大大节约成本。通过衡量云的各种选择,我们选择了Windows Azure,因为它提供给我们一个更强大的开发平台。Windows Azure比其他服务提供了更快的投入市场的速度和更好的可伸缩性,利用这一优势的同时实际上只托管了虚拟机。
迁移到Windows Azure起初只是节省了现有数据中心的机架空间、电源、备份和辅助热战主机代管的费用。然而,迁移后,随着我们扩展服务和客户群,成本一直在下降。
体系结构
FieldVisor、 FieldVisor Mobile、ScadaVisor和 ScadaVisor Mobile在Windows Azure里都以独立的带有每个客户的单租户SQL Azure 数据库的多租户web应用程序的形式存在。这些应用程序由中央的SSO管理应用程序所支持,管理所有的用户、角色、安全和一些其他应用程序配置,连同为处理警报和通知、维护客户数据库并从field设备上执行远程数据收集的多线程worker角色。
目前,我们利用了Windows Azure的几乎所有方面,包括:
计算实例:多个web和worker角色 Blob 存储: Blob 存储用于站点增量升级以及使用BacPac进行SQL Azure数据库的自动备份。 Table存储: Table用来处理集中的数据以及为计算系统记录提供性能计算数据。 Queue存储: Queue用于事件调度、实时设备数据请求、自动通知和worker角色管理。 SQL Azure: 所有客户
应用数据都与多租户的几个核心管理数据库一起保存在单租户数据库中。 SQL Azure报告: FieldVisor 和 ScadaVisor的报告由SQL Azure 报告所支持。客户使用Report View ASP.NET 控件选择运行报告并且有一个worker角色控制的用户定义的时间表管理着所有预定的报告。 Caching: Caching在每个应用程序中与每个web应用程序支持的cache一起被当作session供应者。Caching也用来限制每个SQL Azure数据库的负载。
我们考虑了升级每个应用程序时使用Table Storage的多项工序。由于数据的复杂性并且需要已经存在的SQL数据库,我们决定为所有主要进程利用数据库,但为后台进程、数据插入、自动导入/导出和远程设备轮询选择依附到一个pub/sub模型上。
单点登录(SSO)/中央多线程Worker 角色
我们自定义的单点登录(SSO)服务与所有worker角色一起处理定时任务、通知、自动导入/导出和其他需要驻留在几个小实例中的进程。大多数实际工作和进程在SQL Azure中是被分成较小单元来执行的,所以这些计算实例所需要的费用比较低。
应用程序
FieldVisor 和 ScadaVisor以及它们的移动版本支持web和Odata服务,都被托管在两个中等计算实例里。我们的多租户部署过程处理rollouts和管理IIS来启动新的网站和服务。图表描述了每个应用程序的单租户数据库。
SQL Azure报告
初次将应用部署到Windows Azure上,我们必须确保SQL Server 2008 R2 Reporting Services的实例处于运行状态,处理FieldVisor 和 ScadaVisor的所有报告。从那时起,我们将所有报告迁移到SQL Azure 报告中,也是使用SQL Azure报告进行生产的第一家公司之一。