当前位置: 首页 > 知识库问答 >
问题:

来自远程服务器的Kafka Producer

文彭祖
2023-03-14

我正在用ApacheKafka版本(2.1.0)开发一个流式API。我有一个Kafka群集和一个外部服务器。外部服务器将生成要在Kafka群集上使用的数据。

让我们将外部服务器表示为E,将集群表示为C。E没有安装Kafka。我在上面运行一个JAR文件来生成消息。以下是Producer属性的代码段:

properties.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "bootstrapIp:9092");
properties.put(ProducerConfig.CLIENT_ID_CONFIG, "producer");

我将bootstrapIp设置为Kafka代理IP。

在集群端,我使用以下命令启动使用者控制台:

kafka-console-consumer --bootstrap-server bootstrapIp:9092 --topic T1 --from-beginning

我将bootstrappip设置为集群引导服务器IP。

当在集群上运行生产者和消费者时,它工作得很好,但是当我在外部服务器(E)中运行生产者和集群(C)中运行消费者时,数据没有被消耗。

在localhost中,当我在集群中运行producer和consumer时,一切都正常(C)当在外部运行producer时,我不能使用集群中的数据。

从集群(C)到外部服务器(E)的ping正在工作,但我看不出问题到底出在哪里。

我不知道如何使用来自外部服务器的消息。

编辑

从外部服务器(E)我telnet(bootstrapIp):telnet bootstrapIp 9092,它可以工作,我不理解这个问题

共有1个答案

闾丘鸣
2023-03-14

Tbis为我工作:来自server.properties评论

listeners=PLAINTEXT://:9092

advertised.listeners=PLAINTEXT://<HOST IP>:9092

用实际IP替换。我的案例:

advertised.listeners=PLAINTEXT://192.168.75.132:9092
 类似资料:
  • 我们最近将一些数据移植到MongoDB,现在正在考虑运行日常备份,最好是从cron作业,并将其中一个备份恢复到辅助mongo数据库。 我们的系统设置如下: 服务器1:开发mongo数据库 服务器2:两个mongo数据库,一个用于暂存数据,一个用于生产 服务器3:是我们运行所有cron作业/批处理脚本的地方 (我尝试了将用户名和密码连接到主机,但没有将用户名和密码连接到主机) 我收到以下信息: Mo

  • 我正试图通过bitbucket管道自动将我的应用程序部署到数字海洋。以下是部署的步骤: 使用ssh连接到远程数字海洋水滴 通过使用ssh运行git克隆来克隆我的存储库 使用docker-compose启动我的应用程序 我已经成功地设置了对远程的ssh访问。我还配置了对存储库的ssh访问,并且可以从远程服务器成功执行git克隆。但是,在管道中,当与远程服务器的连接成功时,git克隆命令失败,出现以下

  • 下面尝试过,但是直到并且除非我使Acyah geShipmentIn绑定节点为空(删除释放ID="9.2"xmlns="http://schema.infor.com/InforOAGIS/2"xmlns: xs="http://www.w3.org/2001/XMLSchema")选择查询不获取值。

  • 尝试远程启动服务时遇到奇怪的行为。 编辑:我进一步研究了这个问题,发现只有在尝试运行我的特定服务时才会出现这种情况。这意味着我的服务必须从已经登录的用户的会话中运行(这就是为什么如果我之前使用mstsc访问服务器,它仍然可以工作)。所以我想我的新问题是--有没有一种方法可以让我从PowerShell登录到远程机器? 多谢了。

  • 问题内容: 我正在使用JBoss运行客户端/服务器应用程序。 如何连接到服务器JVM的MBeanServer?我想使用MemoryMX MBean来跟踪内存消耗。 我可以使用JNDI查找连接到JBoss MBeanServer,但是java.lang.MemoryMX MBean没有在JBoss MBeanServer中注册。 编辑:要求是从客户端以编程方式访问内存使用情况。 问题答案: 与JBo

  • 我正在开发一个SMS应用程序,并在其中使用JMS。下面是一个简单的图表,显示了我将如何实现该应用程序: 所以基本上,最终用户通过主服务器发送SMS消息。主服务器将消息重定向到JMS服务器。JMS服务器接收消息并将其放入队列以立即或稍后处理。 我有几个关于设计的问题,关于实现JMS的正确方法是什么: 将ConnectionFactory放置在JMS服务器上是正确的,还是应该将其移动到主服务器上?或者