Skip to content

A curated list of additional reading material following my talk at Zuhlke Days 2018.

License

Notifications You must be signed in to change notification settings

ToastShaman/awesome-microservices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

Awesome Microservices

A curated list of additional reading material following my talk at Zuhlke Days 2018.

Recommended Books

Recommended Articles

Technologies we used in the Microservices

Microservice Framework

Core Java Libraries

Caching

  • Caffeine: A high performance caching library for Java 8

Circuit Breaker

Monitoring

Networking

XML Parsing

Testing

Performance Testing

  • Vegeta: HTTP load testing tool and library
  • usl4j: a Java library for modeling system performance given a small set of real-world measurements.

Security

Avoid stringly typed stystems

Rather than passing a lot of Strings around in your system, try to use strongly typed objects. ValueTypes can help with that.

import org.jetbrains.annotations.NotNull;

import java.util.Objects;

public abstract class ValueType<T extends Comparable<T>> implements Comparable<T> {

    public final T value;

    public ValueType(T value) {
        this.value = value;
    }

    @Override
    public int compareTo(@NotNull T other) {
        return value.compareTo(other);
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        ValueType<?> valueType = (ValueType<?>) o;
        return Objects.equals(value, valueType.value);
    }

    @Override
    public int hashCode() {
        return Objects.hash(value);
    }
}

Example usage:

public class Username extends ValueType<String> {
    public Username(String value) { super(value); }
}

Username alice = new Username("alice@hotmail.com");

About

A curated list of additional reading material following my talk at Zuhlke Days 2018.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published