Professional Documents
Culture Documents
Modul Praktikum Sistem Terdistribusi Pertemuan 6
Modul Praktikum Sistem Terdistribusi Pertemuan 6
Sistem Terdistribusi
Pertemuan 6
Pokok Bahasan :
Kebutuhan
Komputer / Laptop
NetBeans
Nandang Hermanto
UNIVERSITAS AMIKOM PURWOKERTO
Sistem Terdistribusi – Nandang Hermanto – Universitas AMIKOM Purwokerto
Jika java belum terinstall silakan install java dari alamat berikut ini
https://www.oracle.com/java/technologies/downloads/
2. Membuat Producer Kafka
a. Buka NetBeans Kemudian Buat Project Java With Maven - Java Application
<dependencies>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>3.3.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
</dependencies>
} while (!baca.equalsIgnoreCase("keluar"));
}
}
Kode Program
public static void main(String[] args) {
Properties props = new Properties();
props.setProperty("bootstrap.servers", "localhost:9092");
props.setProperty("group.id", "test3");
props.setProperty("enable.auto.commit", "true");
props.setProperty("auto.commit.interval.ms", "1000");
props.setProperty("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
props.setProperty("value.deserializer",
"org.apache.kafka.common.serialization.StringDeserializer");
KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
consumer.subscribe(Arrays.asList("quickstart-events"));
while (true) {
ConsumerRecords<String, String> records = consumer.poll(Duration.ofMillis(100));
for (ConsumerRecord<String, String> record : records) {
System.out.printf("offset = %d, key = %s, value = %s%n", record.offset(), record.key(),
record.value());
}
}
}
dataDir=/data/zookeeper
clientPort=2181
maxClientCnxns=0
Keterangan :
dataDir adalah alamat tempat menyimpat data
clientPort adalah port tempat zookeeper dijalankan
maxClientCnxns adalah jumlah client maksimal yang dapat terkoneksi
broker.id=0
log.dirs=/data/kafka-logs
zookeeper.connect=localhost:2181
Keterangan :
broker.id adalah id server kafka, jika server lebih dari 1 maka harus unik untuk
sertiap server
log.dirs adalah tempat menyimpan data log
zookeeper.connect adalah lokasi zookeeper
a. Buka command prompt baru kemudian masuk ke folder Kafka dengan cara
Cd\kafka
b. Ketikan perintah berikut ini
bin\windows\kafka-server-start.bat config/server.properties
keteranan :
bin\windows adalah alamat file kafka-server-start.bat berada
kafka-server-start.bat adalah file yang dieksekusi/dipanggil
config/ adalah alamat file konfigurasi kafka server
server.properties adalah file konfigurasi kafka server yang digunakan
c. pastikan jendela command prompt ini tetap terbuka agar server kafka tetap
berjalan
8. Jalankan Konsumer yang sudah dibuat pada langka 2 dengan cara click kanan pada file
KonsumerKafka.java kemudian pilih Run File
Percobaan :
1. Jalankan konsumer beberapa kali dengan terlebih dahulu mengganti grup.id dengan nama
yang unik, kemudian kirmkan beberapa pesan dari producer. Amati apakah semua
konsumer tersebut dapat menerima pesan yang dikirimkan dari producer
2. Jalankan konsumer beberapa kali tanpa mengganti grup.id dengan nama yang unik,
kemudian kirmkan beberapa pesan dari producer. Amati apakah semua konsumer
tersebut dapat menerima pesan yang dikirimkan dari producer
3. Ulangi percobaan1 dan percobaan2 beberapa kali dengan topik yang berbeda