1.使用Kafka2.0 API Socket创建Topic:
import org.apache.kafka.common.protocol.ApiKeys;
import org.apache.kafka.common.requests.*;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.nio.ByteBuffer;
import java.util.HashMap;
import java.util.Map;
public class TopicTest {
public static void main(String[] args){
try {
TopicTest topicTest=new TopicTest();
topicTest.createTopics(10, (short) 1);
}catch (IOException e){
}
}
//Kafka对每一种操作都定义了一对Request和Response类,比如这里用到的CreateTopicsRequest和CreateTopicsResponse
public void createTopics(int partitions,short replicationFactor) throws IOException {
Map<String, CreateTopicsRequest.TopicDetails> topics=new HashMap<>();
topics.put("newtopic",new CreateTopicsRequest.TopicDetails(partitions,replicationFactor))