标签: cometd

意外响应408登录cometd客户端

我正在使用java cometd客户端.它已连接几分钟,但过了一段时间后它记录了以下错误.我该怎么办error 408?我应该断开连接,终止,中止还是忽略,请调用Java GC?

java.net.ProtocolException:意外响应408 HTTP错误408请求超时

Web服务器(运行Web站点)认为间隔时间过长

  • 在客户端(例如您的Web浏览器或我们的CheckUpDown机器人)与服务器之间建立IP连接(套接字)
  • 收到该套接字上的任何数据,因此服务器已断开连接.

套接字连接实际上已丢失 - Web服务器timed out在该特定套接字连接上.必须及时重复客户的请求.

扩展了BayeuxClient

    public class EventHostClient extends BayeuxClient {
        private final Logger logger = LoggerFactory.getLogger(EventHostClient.class);

        public EventHostClient(String url, ClientTransport transport, ClientTransport... transports) {
            super(url, transport, transports);
        }

        @Override
        public void onFailure(Throwable x, Message[] messages) {
            logger.info("Messages failed "+ x.getMessage());
            logger.debug("Messages failed. Reason : " + Arrays.toString(messages), x);
        }
}
Run Code Online (Sandbox Code Playgroud)

这是日志消息

2017-06-22 17:59:37.221 [HttpClient-2123] DEBUG c.q.q.n.i.eventhost.EventHostClient - Messages failed. Reason : [{id=4681, connectionType=long-polling, channel=/meta/connect, …
Run Code Online (Sandbox Code Playgroud)

java jetty cometd

5
推荐指数
1
解决办法
360
查看次数

Cometd/bayeux 客户端 + salesforce 流媒体 API 问题

我有我的 .NET 客户端(Windows 服务),它订阅了 Salesforce 流 API 推送主题。

我能够连接到 Salesforce 并且可以将通知发送给我的客户。一切正常,但是:

如果我更新对象一段时间(可能是 2 小时)后通道上没有活动(Salesforce 对象没有更改),我将不会收到来自 Salesforce 的任何通知。

我曾尝试让听众登录,并在下面说的日志中

{"clientId":"f6xo67iet55w5j7ek6ldw72nfc6","channel":"/meta/connect","id":"82","successful":true} 5/15/2018 8:12:28 PM

{"advice":{"interval":0,"reconnect":"handshake"},"channel":"/meta/connect","id":"83","error":"403::Unknown client ","successful":false} 2018 年 5 月 15 日下午 8:12:28

{"clientId":"hbx1v2cxebbeder11s99dqkxmasre","advice":{"interval":0,"timeout":110000,"reconnect":"retry"},"channel":"/meta/connect","id": "85","successful":true} 5/15/2018 晚上 8:12:29

{"clientId":"hbx1v2cxebbeder11s99dqkxmasre","channel":"/meta/connect","id":"86","successful":true} 5/15/2018 8:14:20 PM

{"clientId":"hbx1v2cxebbeder11s99dqkxmasre","channel":"/meta/connect","id":"87","successful":true} 5/15/2018 8:16:10 PM

所以根据日志,有时我会收到“403::Unknown client”,但紧接着它又说通道成功。

但正如我所说,当我在 2 小时后尝试更新 Salesforce 对象时(根据日志,它连接成功)我没有收到任何通知。

如果我重新启动 Windows 服务并再次收到通知。

在我的客户中,我使用的是来自 - https://github.com/couchand/CometD.NET/tree/headers 的Cometd ,对于推送主题订阅,我正在使用它 - https://github.com/foluis/Salesforce_PushTopics

任何帮助将不胜感激。

salesforce cometd bayeux

5
推荐指数
1
解决办法
1923
查看次数

Python中是否有任何Bayeux客户端?

我需要从wxPython APP连接到Bayeux服务器.

我会很感激任何提示.

python cometd bayeux

4
推荐指数
1
解决办法
2166
查看次数

什么是实时系统的 Comet?

Comet 是一种架构风格,而 Websockets/HTTP Streaming/SSE/BOSH/Bayeux 是这种架构风格的不同实现吗?

comet cometd

0
推荐指数
1
解决办法
624
查看次数

标签 统计

cometd ×4

bayeux ×2

comet ×1

java ×1

jetty ×1

python ×1

salesforce ×1