Php ActiveMQ作业调度器删除消息

Php ActiveMQ作业调度器删除消息,php,activemq,scheduling,stomp,Php,Activemq,Scheduling,Stomp,是否可以通过Stomp从PHP订阅ActiveMQ代理并访问JobScheduler(随后通过其jobId删除计划消息) 我有一组从2台web服务器生成的队列“PROD”的计划消息,并且在同一web服务器上发生事件(知道jobIds)时,希望将它们从JobScheduler中删除,以便使用者(用Java编写并位于多个远程服务器上)不会收到它们 我正在使用ActiveMQ broker v5.9.1和Stomp连接到代理表单PHP。您可以通过Stomp在ActiveMQ中管理计划作业。我已经展示了

是否可以通过Stomp从PHP订阅ActiveMQ代理并访问JobScheduler(随后通过其jobId删除计划消息)

我有一组从2台web服务器生成的队列“PROD”的计划消息,并且在同一web服务器上发生事件(知道jobIds)时,希望将它们从JobScheduler中删除,以便使用者(用Java编写并位于多个远程服务器上)不会收到它们


我正在使用ActiveMQ broker v5.9.1和Stomp连接到代理表单PHP。

您可以通过Stomp在ActiveMQ中管理计划作业。我已经展示了如何使用ActiveMQ Java客户机实现这一点,但原理是一样的。您可以发送设置了特定标头的邮件,这些标头将对计划邮件进行操作

要删除使用Java客户端计划的消息,请执行以下操作:

    Message remove = session.createMessage();
    remove.setStringProperty(ScheduledMessage.AMQ_SCHEDULER_ACTION,
            ScheduledMessage.AMQ_SCHEDULER_ACTION_REMOVE);
    remove.setStringProperty(ScheduledMessage.AMQ_SCHEDULED_ID,
            scheduled.getStringProperty(ScheduledMessage.AMQ_SCHEDULED_ID));
    producer.send(remove);

使用调度程序时可以使用的完整消息属性值集都有文档记录,在STOMP中,只需使用每个值的字符串文字作为消息属性

您可以通过STOMP在ActiveMQ中管理计划作业。我已经展示了如何使用ActiveMQ Java客户机实现这一点,但原理是一样的。您可以发送设置了特定标头的邮件,这些标头将对计划邮件进行操作

要删除使用Java客户端计划的消息,请执行以下操作:

    Message remove = session.createMessage();
    remove.setStringProperty(ScheduledMessage.AMQ_SCHEDULER_ACTION,
            ScheduledMessage.AMQ_SCHEDULER_ACTION_REMOVE);
    remove.setStringProperty(ScheduledMessage.AMQ_SCHEDULED_ID,
            scheduled.getStringProperty(ScheduledMessage.AMQ_SCHEDULED_ID));
    producer.send(remove);

使用调度程序时可以使用的完整消息属性值集都有文档记录,在STOMP中,只需使用每个值的字符串文字作为消息属性

谢谢@tim bish我去试试看!非常感谢!谢谢@tim bish我去试试看!非常感谢!