【发布时间】:2015-02-12 20:15:16
【问题描述】:
我有一个网站,我正在迁移到第 2 版。与大爆炸相反,这是一个交错推出。我打算做的是向新站点发送一定量的流量,其余的向旧版本发送。我不想在负载均衡器上执行此操作(我不想讨论的几个原因,因为它是业务驱动的,而不是技术驱动的)。我的服务器数量有限,因此我不希望将新代码放在专用服务器上。我还想确保 URL 没有差异,以免混淆客户
第二版代码是全新的,不是也不会是第一版代码库的一部分。两者必须隔离。再次;业务驱动,但不可协商。
(例如:他点击http://example.com/somepage,我不想重定向到http://new.example.com/somepage)。
我正在使用 IIS 和 ASP.NET MVC 4.0。我更喜欢基于代码的解决方案(例如 httpmodules 并在查询字符串中添加一些内容),但看不到这是如何工作的。
除了将大量 iRules 放入负载平衡器之外,我很高兴听到任何类型的解决方案,无论是硬件/软件/中间件。
【问题讨论】:
-
您总是可以放入 URL 重写模块(我知道这很痛苦),然后简单地将 url 重写为 new.example.com/somepage 而最终用户不会意识到 url 正在被重写在引擎盖下。
-
@DavidL 最终将应用程序请求路由和 URL 重写一起使用;反向代理,有规则。还不错,比配置负载均衡器好。
标签: c# asp.net-mvc iis