External logging service is my favorite way of doing replication. It provides nice features. Specifically:
- Cross vendor replication which makes migration much easier.
- No dependency on vendor provided replication protocols.
- Ability to use in-app databases such RocksDB, SQLite, ...
- Upgrading DB nodes becomes way easier since they are totally separated from each other.