Consuming messages is similar with producing messages because of abstraction offered by kafka library. There are two methods for consuming messages, subscribe(List<String>) can be used to consume messages from one or more topics, assign(List<TopicPartition>) should be used when we are interested to consume messages from specific partitions.
The central part of the KafkaProducer API is KafkaProducer class. The KafkaProducer class provides an option to connect a Kafka broker.
This is not a tutorial about Apache Kafka – just notes about setting up few brokers, producing and consuming from a topic. Achieving high-troughput is done by horizontally scale (increasing the number of brokers). Linkedin 14000 brokers -> 2 petabytes per week. Cluster – a Kafka cluster is a grouping multiple brokers (it doesn’t matter […]
Will discuss details about debugging a local application, then will apply the same techniques for remote debugging.
Few times I was debugging an application and it was possible to reproduce a problem only using remote available data. I will explain how it is possible to solve this in a easy way. Possible applications are: remote Mysql/Elasticsearch service exposed to your machine, replacement of remote service with a local one that contains a […]
There are times when it’s necessary to follow a path in your application and logs related to that path are relevant, in this video I will explain how to use tail -f with grep in order to filter a continuous stream.
In this blog post I will describe required steps in order to build with Spring boot a fully executable application as a jar file, deploy over ssh, run it as a System V service using a custom user for this. I have generated a Spring Boot application using Initializr and configured the build.gradle script to […]
Sometimes you will need to observe changes from a file that should match a regex. The above script can do this for you. I haven’t yet worked out how to do this without a temp file, but here is a script that demonstrates a functional grep-filtered less +F (which cleans up its temp file). I […]
Few days ago I had a problem on one of the projects that I am working on, we observed that after a number of requests, ScriptEngine from Nashorn starts to work slower. Everything which I’m going to talk about is not a rocket science, there’s no clever and tricky tips, it’s just a straightforward explanation […]
Choosing the next career step in such a diverse and fast-paced industry is not an easy task. But when it comes to our careers, there is no right or wrong. Or there is? How do we know? In this talk author will be talking about different career choices, how can we choose good companies to […]