개발 Q&A

제목 mysql 리플리케이션 select 요청 분기 질문입니다.
카테고리 PHP
글쓴이 작성시각 2021/10/29 14:48:15
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 7871   RSS

안녕하세요.

디비 안정성을 위해서 리플리케이션 설정을 테스트하고 있습니다.

제 컴퓨터에 가상화를 해서 master slave 구성을 하였고

master에 insert 시 slave에도 반영되는걸 확인했습니다.

이걸 현재 운영중인 사이트로 설정하더라도, master로 커넥션 맺더라도

자동으로 slave에서 select가 안되는걸로 확인이 되서 어플리케이션단에서

분기 처리를 해야할거 같습니다.

1. 모델에서 각각 select 마다 분기처리를 해야하나 싶어서 작업량이 상당할거 같아 고민입니다.

2. 그래서 ci4에서 자동으로 select만 분기되도록 설정하는 방법이 있을지 찾아보다가 질문 드립니다.

 

 

 다음글 게시판에 글쓰기 작성시 해시태그를 구현하고 싶은데 방법... (1)
 이전글 클라우드 DBMS 써보신분 계실까요?? (2)

댓글

한대승(불의회상) / 2021/10/29 15:57:36 / 추천 0
현재까지는 자동으로 처리되도록 설정하는 방법은 공식적으로 지원하지 않습니다.
/ 2021/10/29 16:20:06 / 추천 0

@불의회상

답변 감사합니다. 어쩔 수 없이 코드에서 분기 처리 해야 겠네요 ㅠ_ㅠ

변종원(웅파) / 2021/11/01 08:23:16 / 추천 0
select 비율이 훨씬 높아서 $this->db 는 slave용으로 사용하고 $this->mdb 라고 마스터db 연결을 1개 더해서 사용중입니다.
당근병아리 / 2021/11/01 16:48:53 / 추천 0

제 경험상으로 이렇게 구성하였습니다. 

slave 는 LB로 연결하고  master는 중요 select 에만 활용하였습니다.

그리고 Transaction 할때 프로시져로 처리하였습니다.

또한 model를 분리하여 관리하였습니다.

 

PureAni / 2021/11/04 12:19:25 / 추천 0

자동으로 해주지는 않고, 별도로 파일 만드셔서 extends 하셔야합니다.

https://github.com/yks118/Manana-CMS-for-Codeigniter/blob/master/app/Models/BaseModel.php

참고하셔서 필요하신걸로 커스텀 하시면 됩니다.