最近,一个项目符合要求...... 1.构建一个持续检查网站可用性的C#控制台应用程序。 2.在某处保存网站状态,以便不同的平台可以访问状态。
控制台应用程序已完成,但我正在努力保存状态。我在想一个SQL记录。
您如何处理保存状态的位置,以便它可扩展,灵活并可用于x个框架或平台?
更新:看起来我使用RESTful服务使用数据库存储。我还将状态保存为xml文件,作为服务中断的后备。
答案 0 :(得分:1)
您可以创建Web服务,并且您可能需要在防火墙上打开较少的异常端口以连接到HTTP服务器而不是连接SQL Server数据库。您还可以扩展该服务层,以便比在数据库级别更轻松地添加业务规则。
答案 1 :(得分:1)
可以将网站的可用性发布到第二个网站服务,该服务返回关于所述网站的可用性的JSON / Xml结果。这几乎意味着能够进行网络服务调用的任何平台/语言都可以检查网站的可用性。
不可否认,这确实会带来单点故障(状态Web服务),但不可避免地,除非您想要开始使用故障转移Web服务等,否则您最终会遇到这种情况。
答案 2 :(得分:1)
您可以将其另存为XML,这与平台无关。然后分享它,您可以使用Web服务器并在那里发布它。在其他网站上分享网站可用性似乎很讽刺,但就像网站一样,其他类型的服务器/服务也可能有停机时间。
答案 3 :(得分:1)
我猜webservice是最好的选择。只需公开一个restful api即可获得一个简单的Json响应和服务器状态。快速且资源便宜。
答案 4 :(得分:1)