Tag: network programming

为什么Kafka消费者表现缓慢?

我有一个简单的主题,一个简单的Kafka使用者和生产者,使用默认配置。 程序很简单,我有两个线程。 在生产者中,它不断发送16个字节的数据。 在消费者方面,它不断接收。 我发现生产者的吞吐量大约是10MB / s,这很好。 但消费者的吞吐量仅为0.2MB / s。 我已经禁用了所有的调试日志,但这并没有让它变得更好。 测试在本地计算机上运行。 什么机构都知道出了什么问题? 谢谢! 我使用的代码如下:制片人: KafkaProducer producer = new KafkaProducer(props); int size = 16; byte[] payload = new byte[size]; String key = “key”; Arrays.fill(payload, (byte) 1); ProducerRecord record = new ProducerRecord(“test”,0,key.getBytes(),payload); while(true){ producer.send(record); } 消费者: Properties consumerProps = new Properties(); consumerProps.put(“zookeeper.connect”, “localhost:2181”); consumerProps.put(“group.id”, “test”); ConsumerConnector […]

客户端 – 服务器中的JmDNS服务发现

我正在尝试使用JmDNS在我的客户端 – 服务器应用程序中启用服务发现。 我完全理解服务器端的服务注册表,代码类似于: JmDNS jmdns = JmDNS.create(localhost); jmdns.register(serviceInfo); 但是,我无法弄清楚如何让我的客户端从注册的服务中检索端口号和IP地址,并使用此数据打开TCP连接。 我搜索了如何使用JmDNS的例子,但无济于事。 这里有人能给我一些基本的例子吗? 或者,如果任何人有关于JmDNS的良好资源/教程的任何链接,他们可以提供吗? 注意:JmDNS在这里是必要的,所以我很感激只有JmDNS的答案,而不是提供替代方案。 另外,我已经广泛地查看了JmDNS API,但仍然无法弄清楚,所以请不要将文档链接发布为资源。 谢谢。

如何使用SSLv2启动ssl连接

我想使用SSLv2启动与远程服务器的SSL连接。 我正在使用Java。 我尝试使用以下方法在套接字中获取支持的协议: String[] suppProtocols=socket.getSupportedProtocols(); System.out.println(“The protocols supported for this socket are: “+Arrays.toString(suppProtocols)); 我在输出中得到了这个: [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2] 现在,我读到Java不支持SSLv2,而SSLv2Hello只使用SSLv2发送hello消息。 我无法理解这意味着什么? 是不是客户端支持SSLv2? 如何使用SSLv2建立SSL连接。