A look at the Camel Kafka Consumer

In this post let's look at the Kafka Camel Component. Apache Camel is an implementation of the enterprise integration patterns. The class we want is KafkaConsumer @Override protected void doStart() throws Exception { //... executor = endpoint.createExecutor(); //... for (int i = 0; i < endpoint.getConfiguration().getConsumersCount(); i++) { KafkaFetchRecords task = new KafkaFetchRecords(topic, pattern, i… Continue reading A look at the Camel Kafka Consumer


Maven parent version

It most cases when we need maven, we need a parent child like structure. I personally like to start my projects with a parent bom file where I manage all my dependencies and plugins. https://unsplash.com/@vikceo <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <artifactId>commons</artifactId> <packaging>pom</packaging> <version>1.0-SNAPSHOT</version> <parent> <groupId>com.sergiuoltean.test</groupId> <artifactId>bom</artifactId> <version>1.0-SNAPSHOT</version> <relativePath/> </parent> </project> Now… Continue reading Maven parent version


Introduction to Architecture characteristics

Also known as *ilities(scalability, deployability), NFRs(non-functional requirements), quality attributes. There is no fixed list of these. We do however have a standard for these. It's ISO25010 and it looks like https://iso25000.com/images/figures/en/iso25010.png We extract these from business requirements(business characteristics), from the way we expect to operate the system(operational characteristics) and they are implicit, cross-cutting characteristics which… Continue reading Introduction to Architecture characteristics