【问题标题】:C# call server service from wcf web serviceC# 从 wcf Web 服务调用服务器服务
【发布时间】:2012-08-24 11:47:36
【问题描述】:

我使用 C# 开发了一个 WCF Web 服务,该服务可以使用与我的后端数据对话的 COBOL VM 向我的移动客户端提供我需要的数据。它有效,但非常不可靠。我认为这与 Web 服务的生命周期有关,我只是不明白它是如何崩溃的。我相信问题是COOBL VM,它是一个单例,以及每次关闭它的过程。我已经试过了

lock(myobject)
{
... run my code here
}

我想将 COBOL VM 移动到服务器服务,我可以在其中保留我的 COBOL VM 并调用它。我不知道如何在所有 WCF Web 服务调用中保留 COBOL VM。我正在寻找显示 wcf Web 服务与服务器服务通信的示例,这样我就可以将我的业务层代码移出服务,并让它调用服务器服务以获取所需的数据。这样我就可以让 COBOL VM 一直运行,而不是像在 Web 服务中那样经历加载、执行和关闭过程。

有没有人有任何 WCF Web 服务与 WCF 服务器服务通信的好例子?

【问题讨论】:

  • “服务器服务”是什么意思? WCF Web 服务已经在服务器上。目前还不清楚您要建立什么架构。另外,COBOL VM 到底是什么?它是像 JVM 一样的语言解释器意义上的虚拟机吗?还是像 VMWare 这样的虚拟计算机?
  • VM 是一个通过对象实例化的执行环境。它可能类似于 Java VM,尽管我没有研究过 Java 的执行架构。我正在尝试设置一个体系结构,允许我对只能实例化一次的 VM 执行 COBOL 程序(单例)。我想阻止对 VM 对象的多个请求,因为它似乎不是线程安全的(因此尝试锁定)并且请求相互踩踏。我的想法是提供服务器服务,以便 VM 可以保持运行。希望有 web srv 到 srv 服务的例子。

标签: wcf


【解决方案1】:

让 COBOL VM 一直运行,而不是像我在 Web 服务中那样经历加载、执行然后关闭过程。

然后创建一个托管此 VM 客户端的 Windows 服务,因此您只需连接一次即可使其保持运行。然后,您可以让该服务也托管 WCF 服务,然后查询 VM 客户端。

【讨论】:

  • 我不确定您的回答中遗漏了什么。我最初的问题已经详细说明了这是我正在考虑的方向,但我无法弄清楚如何让 Web 服务与服务器服务进行通信。那部分我可能解释得不好。无论哪种方式,它都没有回答最后的问题:有没有人有任何 WCF Web 服务与 WCF 服务器服务通信的好例子?
  • @Martin How to: Host a WCF Service in a Managed Windows Service。然后让 WCF ServiceHost 对象与 Windows 服务的代码进行通信。
【解决方案2】:

您最好还是研究一下 CORBA 解决方案 - CORBA 是唯一可以让您访问已经运行的进程的远程处理技术。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-23
    • 2012-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多