저희 레일즈 서비스가 Database를 USER_DB 와 SERVICE_DB로 나누어 사용하고 있었습니다.
방법은 단순히 User 모델에
establish_connection "users_database_#{RAILS_ENV}"
를 넣어서 사용했었죠.
그런데, DB트래픽 분산을 위해서 SERVICE_DB 를 Master/Slave replication을 하려고 합니다.
아래와 같이 Master/Slave replication을 도와주는 두가지 플러그인이 있는데요.
1. http://github.com/technoweenie/masochism
2. http://github.com/mauricio/master_slave_adapter
둘다 시도해 보았는데, 단순 Master/Slave DB만 나누어 사용하는 것은 잘 되는데,
User 모델에 establish_connection "users_database_#{RAILS_ENV}"
설정해 놓은것까지 override되어서.. "users_database_#{RAILS_ENV}" 로 접근을 못하는 상황입니다.
제가 하고자 하는 설정은,
특정 모델은 establish_connection 로 특정 database로 보내고, 나머지를 master/slave로 잡는 방
법은 없을까요?
혹시 같은 문제로 고민해 보신 분이 계신지 모르겠습니다.
조언 부탁드립니다.~^^
user 모델을 제외한 모든 모델만 replicated 설정하면 될 것 같기도 한데요.
http://github.com/mperham/data_fabric
10. 7. 26. 오후 4:26, jaehyun 쓴 글: