Consistency and Availability in Microservice Architectures