【问题标题】:Publish-subscribe over clients in Progress 4GL在 Progress 4GL 中的客户端上发布-订阅
【发布时间】:2010-11-02 13:32:23
【问题描述】:

有没有办法在 Progress 4GL 中的网络中的客户端之间发布。

一种(丑陋的)方法是“发布”(写入)到数据库并让所有客户端轮询数据库 - 但我当然想避免这种情况。

我正在使用 OpenEdge Release 10.0B02。

【问题讨论】:

    标签: client-server publish publish-subscribe progress-4gl


    【解决方案1】:

    没有。无法跨会话边界使用内置的 PUBLISH 和 SUBSCRIBE 语句。

    这是人们不时向产品管理人员提出的要求之一,但它似乎从未出现在计划的功能列表中。

    【讨论】:

    • 在某种程度上,您可以隐藏一些处理 PUB 和 SUB 的通用实用程序函数背后的“丑陋”。这将使使用各种间接方法变得更容易一些,例如数据库记录、声音消息、套接字调用等。它还可以让您更轻松地改变您对在不同情况下哪种方法最好的想法。
    • 这是我听说的。也谢谢你的建议,我会考虑的。
    【解决方案2】:

    您可以使用 Apache ActiveMQ 之类的 JMS 来实现您的目的。发布者称为生产者,订阅者称为消费者。 ActiveMQ 支持 STOMP 协议;我写了一个开源 OpenEdge ABL framework,它允许您使用 STOMP 帧在纯 ABL 中创建生产者或消费者。

    【讨论】:

    • 谢谢。乍一看它看起来不错,但是我可以看到代码不会在非面向对象的 10.0B02 中运行。
    • 啊,真可惜。我在工作中被 10.1C 困住了,它缺少后来版本的一些我真正想要的功能,所以我感受到了你的痛苦。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-02
    • 2012-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-26
    • 1970-01-01
    相关资源
    最近更新 更多