c# - Windows 服务托管 WCF 服务的 IIS 代理

标签 c# wcf iis proxy

我有一个通过 net.tcp channel 公开 WCF 服务的 Windows 服务。

现在我希望通过 IIS 公开此服务,而不是托管在其中。通过这样做,我将能够维护 Windows 服务中的状态,并且我将受益于底层 IIS 身份验证和安全性。

是否可以仅通过使用一些配置来做到这一点?也许是一种代理或直通?

更新

我为什么要这样做?一个好问题:

  • 一些进程以预定的时间间隔异步运行。

  • IIS 正在回收 AppPools 并触发它,通常应发出 Web 请求,以便启动 AppPool。

  • 我无法直接将服务公开为 Windows 服务中的 Web 服务,因为 IIS 已安装并绑定(bind)到我要使用的 IP 地址。

  • 如果我想为许多客户公开服务,使用他们自己的 TLD,我不希望在每个网站上运行相同的进程(可能是为了独占锁,或者只是为了内存/CPU 使用)

也许这澄清了一点需要...

最佳答案

不,您必须在 IIS 中实现全新的层。您将公开新的 WCF 服务,该服务将调用 Windows 服务中托管的 WCF 服务。真的需要吗?为什么不直接在 IIS 中托管服务,或者为什么不在 Windows 服务上公开 HTTP 端点?您在 Windows 服务中维护什么状态?

关于c# - Windows 服务托管 WCF 服务的 IIS 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3556458/

相关文章:

asp.net - IIS 如何识别 .NET 中的不同 session ?

c# - WCF REST 消息记录、POST 请求问题

c# - 如何使用makecert创建WCF接受的X509证书

.net - 将字符串参数发送到 WCF 服务会导致反序列化错误

c# - 方法重载中的 Expression<Func<T,bool>> 与 Func<T,bool>

nginx - Kubernetes nginx-ingress 入口 Controller 由应用程序处理的 CORS

iis - 如何在 Azure 计算模拟器上配置 Web 角色以像本地 IIS(静态 URL)一样工作

c# - 接口(interface) C# 中的可选空隙

c# - 最新版本的 Unity 和 Google 无法生成 APK 构建并显示 Android Manifestation 脚本错误

c# - 最快的方法从部分位中获取整数