Skip to content

Instantly share code, notes, and snippets.

@adamkotwasinski
adamkotwasinski / BinarySearchWithKafkaBackedList.java
Created July 26, 2022 11:34
Binary search with Kafka-backed list, using Collections.binarySearch
package fun.stuff;
import java.time.Duration;
import java.util.AbstractList;
import java.util.Collections;
import java.util.Properties;
import java.util.RandomAccess;
import java.util.concurrent.ThreadLocalRandom;
import org.apache.kafka.clients.CommonClientConfigs;
@adamkotwasinski
adamkotwasinski / BinarySearchWithKafkaExplicitly.java
Created July 26, 2022 11:33
Binary search with a Kafka partition (using Consumer explicitly)
package fun.stuff;
import java.time.Duration;
import java.util.Collections;
import java.util.Properties;
import java.util.concurrent.ThreadLocalRandom;
import org.apache.kafka.clients.CommonClientConfigs;
import org.apache.kafka.clients.consumer.Consumer;
import org.apache.kafka.clients.consumer.ConsumerConfig;
@adamkotwasinski
adamkotwasinski / envoy.yaml
Last active September 13, 2021 17:13
Example config for Envoy to use Kafka-mesh-filter
static_resources:
listeners:
- address:
socket_address:
address: 127.0.0.1
port_value: 19092
filter_chains:
- filters:
# Just metrics.
@adamkotwasinski
adamkotwasinski / KafkaMirrorMakerRewriterExample.java
Last active November 25, 2020 18:51
KafkaMirrorMakerRewriterExample
package example;
import java.time.Duration;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Properties;
@adamkotwasinski
adamkotwasinski / server2clientonly.properties
Last active February 20, 2020 21:04
Kafka server 2 that will have only client traffic routed through Envoy proxy
broker.id=2
listeners=CLIENT://127.0.0.1:9093,REPLICATION://127.0.0.1:9193
listener.security.protocol.map=CLIENT:PLAINTEXT,REPLICATION:PLAINTEXT
advertised.listeners=CLIENT://127.0.0.1:19093,REPLICATION://127.0.0.1:9193
inter.broker.listener.name=REPLICATION
log.dirs=/home/adam.kotwasinski/broker2
zookeeper.connect=localhost:42181
@adamkotwasinski
adamkotwasinski / server1clientonly.properties
Last active February 20, 2020 21:04
Kafka server 1 that will have only client traffic routed through Envoy proxy
broker.id=1
listeners=CLIENT://127.0.0.1:9092,REPLICATION://127.0.0.1:9192
listener.security.protocol.map=CLIENT:PLAINTEXT,REPLICATION:PLAINTEXT
advertised.listeners=CLIENT://127.0.0.1:19092,REPLICATION://127.0.0.1:9192
inter.broker.listener.name=REPLICATION
log.dirs=/home/adam.kotwasinski/broker1
zookeeper.connect=localhost:42181
@adamkotwasinski
adamkotwasinski / server2alltraffic.properties
Created February 20, 2020 20:09
Kafka server 2 that will have all incoming traffic routed through Envoy proxy
broker.id=2
listeners=PLAINTEXT://127.0.0.1:9093
advertised.listeners=PLAINTEXT://127.0.0.1:19093
log.dirs=/home/adam.kotwasinski/broker2
zookeeper.connect=localhost:42181
@adamkotwasinski
adamkotwasinski / server1alltraffic.properties
Created February 20, 2020 20:04
Kafka server 1 that will have all incoming traffic routed through Envoy proxy
broker.id=1
listeners=PLAINTEXT://127.0.0.1:9092
advertised.listeners=PLAINTEXT://127.0.0.1:19092
log.dirs=/home/adam.kotwasinski/broker1
zookeeper.connect=localhost:42181
@adamkotwasinski
adamkotwasinski / envoy.yaml
Created February 20, 2020 20:03
Envoy proxy instance proxying two Kafka brokers at localhost:9092 & 9093
static_resources:
listeners:
- address:
socket_address:
address: 127.0.0.1
port_value: 19092
filter_chains:
- filters:
- name: envoy.filters.network.kafka_broker
typed_config: