전체를 싱크맞추는 경우와, 전혀 싱크를 맞추는 않는 방식을 이야기 하겠습니다.
만약 전체 싱크를 맞추는 ( Fully-Synchronous) 리플리케이션 구성이 되어있다면,
마스터에 연결된 세션이 커밋을 날렸을 때에 연결되어있는 모든 슬레이브에서도 커밋을 적용 완료 해야지만 트랜잭션 완료 메세지를 세션에 반납하는 방식입니다.
따라서 트랜잭션 시간이 길어지게 되는 문제가 있었습니다.
전혀 싱크를 맞추지 않는 (Ssynchronous) 방식으로 리플리케이션이 구성되어 있다면,
슬레이브에 트랜잭션 내용을 적용 완료했는지의 여부와 상관없이 마스터에서는 트랜잭션을 완료하고, 계속적으로 새로운 트랜잭션이 진행됩니다.
이 경우에는 트랜잭션 완료시간은 빨리지겠지만, 가용성에서는 문제가 있을 것입니다.
새로 등장한 SEMI 싱크를 맞추는 개념(Semi-Synchronous)은, 이 두 구성의 절충점 정도라 보시면 됩니다.
모든 리플리케이션 슬레이브에 대한 싱크가 맞추어지기를 기다리는 것이 아니라, (최소) 단 하나의 슬레이브에서만 싱크가 맞추어 졌다면 트랜잭션을 완료시키는 방식입니다.