stomp协议

scyqe7ek  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(533)

我正在使用websocket协议为web平台开发一个聊天模块,并将stomp作为消息协议。
这是我第一次使用任何消息代理,kafka是公司(我为之工作的公司)web平台上使用的,我猜是其他模块使用的。在我刚开始工作的时候,我曾经和rabbitmq一起工作过,现在我不得不转向Kafka。我在rabbitmq的网站上看到了一整篇关于如何使用stomp的文章,但在Kafka的官方网站上却没有这样的文章。
但是我已经研究了其他的一些资源,很多教程,我找不到任何与Kafka使用stomp协议相关的东西,这让我问是否可能?
下面是我的websocket配置类:

@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer{

    @Override
    public void registerStompEndpoints(StompEndpointRegistry registry) {
        registry.addEndpoint("/ws").withSockJS();
    }

    @Override
    public void configureMessageBroker(MessageBrokerRegistry registry) {
        registry.setApplicationDestinationPrefixes("/app");
        registry.enableSimpleBroker("/topic");

//Here's the line I wrote to use Kafka as a MB, but doesn't work        
registry.enableStompBrokerRelay("/topic").setRelayHost("localhost").setRelayPort(9092);

在启动kafka,然后运行我的javaspring应用程序之后,我从java.io.ioexception中得到一个“connectionreset by peer”,如果一切正常,就不应该抛出这个异常。
我使用kakfa的2.2.0版本,zookeeper的3.4.14版本,并使用sts3作为我的ide。
任何帮助都将不胜感激。

gblwokeq

gblwokeq1#

rabbitmq本机不支持stomp,但它有一个stomp插件;Kafka对跺脚没有内在的支持。

相关问题