레이블이 replication인 게시물을 표시합니다. 모든 게시물 표시
레이블이 replication인 게시물을 표시합니다. 모든 게시물 표시

20130613

mysql replication 을 활용한 분산처리

아.. 솔직히 돈있으면 이런 고민하지 말고 클러스터링 쓰자... 그게 답이다.


돈 없어서 이렇게 쓰는 건데... 영 힘들다...


원리는 이렇다.


mysql master 와 slave 여러개 로 구축을 하고....

php에서 memcache 서버에 현 접속 디비 slave를 기록해두고 순차적으로 slave를 갈아타는 아주 아주 단순한 방법이다.

insert/update/delete 등 데이터 조작이 일어날 경우에만 master로 연결하고 나머지 경우에는 slave로만 가는 형태이다.


이렇게 서버가 있다고 가정하다.

php-fpm


memcached
 mysql master

mysql slave 1

mysql slave 2...


php-fpm에서는 mysql master의 접속이 아닌 경우 데이터베이스 접근 전에 memcached 에다가 바로 전에 slave 몇 번 서버에 접근했는지 정보를 가져와서 순차적으로 다음번 slave 접속해서 질의하는 형태이다.


이 경우 좃되는 경우가 하나 있다.

동기화의 문제인데... 그건 검증 로직을 활용하여 프로시저를 만들어 관리해야 하고

문제가 있다고 판단이 될 경우 해당 slave 서버를 서비스 중단을 해야 한다.


이렇게 감시관리하는 데몬을 뛰워 분산처리를 시도하였다.


뭐 그런대로는 쓸만하긴 하나... 돈 있으면 오라클 쓰자..ㅡㅡ;;


이런 !@#!%!@!@#!#@



Articles