우연히 리눅스 공부하다가 라운드 로빈 식 웹사이트 운영을 봤는데
웹서버 3대 db 서버 2대 해서 웹서버 3대가 db서버 (읽기전용) db서버 (쓰기전용) 번갈아 가면서
이런식으로 운영하시는 분 계신가요 !!! 이런식의 웹서버 운영하면 서버부하나 렉 기타 보안 쪽에서도
괜찮타고 하던데 ..
우연히 리눅스 공부하다가 라운드 로빈 식 웹사이트 운영을 봤는데
웹서버 3대 db 서버 2대 해서 웹서버 3대가 db서버 (읽기전용) db서버 (쓰기전용) 번갈아 가면서
이런식으로 운영하시는 분 계신가요 !!! 이런식의 웹서버 운영하면 서버부하나 렉 기타 보안 쪽에서도
괜찮타고 하던데 ..
DB를 마스터/슬레이브로 나눠서 쓰는 건 이미 XE도 지원합니다. db.config.php를 수정하면 돼요. 단, 완벽하게 세팅하기가 쉽지 않으므로 둘 중 하나만 다운되거나 렉이 걸려도 둘 다 못쓰게 되는 경우가 비일비재합니다.
문제는 웹서버예요. 여러 대의 서버를 쓰려면 서로 파일이 동기화되도록 하는 것이 중요한데요... (한쪽에 파일을 업로드하면 다음에 다른 서버에 접속하더라도 그 파일을 다운받을 수 있어야 하지요) XE는 캐시파일이 실시간으로 업데이트되어야 하기 때문에 흔히 사용하는 5분 간격 동기화 같은 건 안 통합니다. 그렇다고 NFS로 공유하면 성능이 심각하게 떨어지고요. DRBD는 좀 나으려나... 아무튼 여러 대의 서버를 효율적으로 사용하려면 프로그램 자체를 거기에 맞게 설계해야 합니다. 평소 쓰던 프로그램을 그냥 얹어놓으면 포인트가 꼬이는 등 여러가지 문제가 생겨요.
아무튼 이래저래 귀찮습니다. 서버 한 대로 감당이 안 될 만큼 사이트 규모가 크고, 여러 대의 서버를 꾸준히 관리해줄 전문인력이 없다면 절대 권장하지 않습니다. 그렇지 않으면 해킹당할 위험도 서버수에 비례해서 늘어나기만 하지, 절대 더 안전해지지 않아요.
게다가 요즘은 서버 사양이 워낙 좋아져서 동접수 1만 명도 웹서버 한 대, DB서버 한 대로 충분히 감당이 됩니다 ㅎㅎ 32코어짜리 서버 써보셨나요? 64코어는 어떠세요?