Category: coding

  • Testing Spring Cloud Gateway

    Here you’ll find an approach to cover your Spring Cloud Gateway Filters with tests. Intro There are so many articles on internet about how to use Spring Gateway. There are many articles on internet about how to implement authorization inside Spring Gateway. But none of them explain how to cover your code with tests. Let […]

  • Why every Kafka message must be versioned?

    Apache Kafka – is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.

    It is not the secret that Apache Kafka became a standard of communication between microservices last time.

    Becoming a standard entails the need for proper operation and using.

    The hint of being proper used is to provide every message sent to Kafka with version information. And here is why.

  • ‘At least one’ validator

    Are you familiar with Java Validation API? And Spring validation? (if not, take a look at the end of this article for links to read)

    In my practice I had an interesting case. The task was to implement an web endpoint accepting the request which body consisted of three fields. And only one of them must be specified at the time.

  • How to deal with Money model when constructing API in Java

    Most of Enterprise projects are about money. And most of them implement an API.

    API implements the way the datum are migrating from one application to another one. The money consists of an amount and a currency. The amount may be fractional.

    So this post is about how to deal with fractional amount of money when implementing an API in Java.

  • Normalized Logger for OpenFeign

    Standard OpenFeign logger provides the only approach to log communications — it logs every header in separated log entries, the body goes into another log entry.

    It is very inconvenient to deal with such logs in production especially in multithreaded systems.

    ‘Normalized Logger’ is intended to combine all log entries related to one request-reply communication into one log entry.