These are the differences between them:
Synchronous protocol. It is characterized for being a system that implies isolating each microservice as much as possible, since sub-processes get locked. HTTP/HTTPS would be a typical example of asynchronous microservice communication protocol, where the client can only continue its operation when it receives a response from the server.
Asynchronous protocol. In this case, the sub-processes are not locked and protocols that are compatible with many operating systems and cloud environments are used. One example would be the AMQP protocol, where the client’s or message sender’s code usually does not wait for a reply. What is does is simply send a message to a RabbitMQ queue or any other messaging agent.