gpt4 book ai didi

java - Kafka创建大量分区(64k)的Topic失败

转载 作者:行者123 更新时间:2023-12-02 02:31:51 26 4
gpt4 key购买 nike

我在 Windows 上运行 Kafka 0.10.1.0。

我正在尝试使用 kafka-topics.bat 创建一个具有 64k 分区的大型主题。但它无法创建并出现错误 -

[2017-10-26 15:35:01,232] WARN Session 0x25f59be4474000f for server <ZK server name>/<ZK Server IP>:<ZK server port>, unexpected error, closing socket connection and attempting reconnect (org.apache.z
ookeeper.ClientCnxn)

java.io.IOException: An established connection was aborted by the software in your host machine
at sun.nio.ch.SocketDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:65)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
at org.apache.zookeeper.ClientCnxnSocketNIO.doIO(ClientCnxnSocketNIO.java:117)
at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:366)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1141)

还有其他人遇到过这个问题吗?另外,具有如此大量分区的 Kafka 主题是否存在任何已知问题?或者我最好将它们分成多个主题?

谢谢,维奈

最佳答案

要查看应用程序在给定时间打开的句柄总数(不仅仅是文件句柄):只是为了确保它是句柄限制。

https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx 下载 Process Explorer确保设置适当的刷新速度。打开它并转到“查看”->“选择列”-> 按“流程性能”选项卡,然后单击“处理计数”。

对于 Windows 7 x64 位,一个进程可以同时打开 16.711.680 个句柄。如果您想亲自检查限制,请阅读以下内容。使用 Windows Internals Book ( https://technet.microsoft.com/en-us/sysinternals/bb963901.aspx ) 中的工具进行检查。工具的名称是 TestLimit,您可以在页面下部的“图书工具”标题下找到它。

据我所知,没有办法增加 Windows 操作系统的此限制,我也研究过。

正如其他人所说,考虑一种方法来最小化大量线程。也许您的应用程序关闭了文件,但没有关闭句柄。我的建议是,如果您确实需要使用非常大的句柄数,请在每次句柄数约为 16m 时启动一个新进程。

关于java - Kafka创建大量分区(64k)的Topic失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46965344/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com