Dealing with Failures in Polyglot Microservices Architectures