【问题标题】:Is it possible share an object between to WCF services that are on different sites是否可以在不同站点上的 WCF 服务之间共享一个对象
【发布时间】:2018-02-05 16:04:57
【问题描述】:

我一直在谷歌搜索和搜索互联网,看看是否可以在不同站点上的两个 WCF 服务之间共享对象。 例如: 当用户访问时,我在 http//site1/service1.svc 上有一个服务,在 http://site2/service2.svc 上有另一个服务

如果我调用 service1.svc 并将对象存储在上下文/会话中,是否可以在 service2.svc 中使用相同的对象?

我正在阅读有关 InstanceContextSharing 的内容,这可能是我想要的方式吗?

【问题讨论】:

  • 为什么不将信息作为 SOAP 消息传递给第二个服务?
  • 你能控制两端吗
  • @Musab ,是的,我确实可以控制两端,但我不想调用所有服务来“强制启动”所有服务,而只需调用一个服务和这会将这个会话数据传播到所有其他服务。当我调用不同的服务时,它将具有相同的“会话数据”。我希望我能解释一下我的想法。

标签: c# asp.net .net wcf session-variables


【解决方案1】:

您是否正在寻找进程外状态共享。考虑 SOSS (http://static.scaleoutsoftware.com/docs/soss_help/content/index.html#_introduction) 或 Redis (https://redis.io/)caching

如果这些解决方案对于您的问题来说太大了,这里有几个替代方案

  1. 您可以考虑使用双工通道,
  2. 创建一个数据库表,帮助 service2 访问 service1 创建的对象。您必须设计一种方法,以便 Service2 可以正确识别数据库记录

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多