什么.NET 4.0技术提供模块化固定飞行(HOTSWAP)REST服务托管?
题
因此,这是多年来的梦想,但希望永恒。是否有框架/服务(WCF/WAS/MVC/等),您可以添加/更新服务,对正在进行的请求或“同级”服务的影响最小。
梦想看起来像这样:
IIS7
可插入的休息服务主机
共享资源(存储库,QA)
服务A-在生产中掉入文件夹,提供新的休息方法
服务b-更新“飞行”以修复错误,请求最少中断
我认为答案可能涉及或可能是AppFabric(梦想并不谨慎),但是由于我从未设法找到一种简单的方法来使其正常工作,因此我欢迎您对如何最好地实现我认为我们认为我们的PHP同志的意见做就是了”。
解决方案
MEF +自托管WCF带有WebHttpBinding。或MEF与httplistener。新的WCF HTTP堆栈 http://wcf.codeplex.com 将来会变得容易得多
其他提示
这并不是真正的休息问题 - 这是HTTP服务器问题。
过去,我所做的是将新版本的应用程序的新版本部署到服务器上的新位置,也许仅在内部使用URL。然后,我只是切换了IIS属性以指向新的URL。
这是一个奇怪的问题。首先,我们在.NET世界中进行了编译,这对其他事物产生了很大的影响。
因此,基本上是的,如果您开始像PHP程序员一样开始编程,则可以做您想做的事情。打开您的.svc文件,然后将整个服务直接写入此文件。这也称为内联编码。您将能够使用部署到网站的GAC和BIN文件夹的类型。只需将.SVC文件复制到您的Web应用程序目录即可使您的服务可用。修改也很容易。您必须使用.NET 4.0,并且在“部署”新服务时不需要任何配置更改。
编辑:
根据评论,我添加了一些未来的解释。
IIS和任何依赖IIS(WAS,AppFabric)的任何内容始终在添加新组装时回收域。我认为原因直接位于.NET Core -AppDomain中。加载和卸载组件动态需要新的域。