2011-01-25 5 views
4

두 개의 가상 사설 서버가 있습니다. 첫 번째는 웹 서버 프런트 엔드이고 두 번째는 데이터베이스 백 엔드입니다. 실시간 자료에 Redis를 사용하고 싶습니다. 질문은 : Redis를 어디에 설치해야합니까? 웹 또는 데이터베이스 서버에 있습니까?웹 서버 프런트 엔드 또는 데이터베이스 서버 백엔드에 대한 Redis

+1

redis에 무엇을 저장 하시겠습니까? 주로 캐시로 사용 하시겠습니까? 만약 그렇다면, 나는 웹 서버에 넣어 두었습니다. 또한, 어떤 컴퓨터에는 redis에 줄 수있는 여유 메모리가 더 있습니까? –

+0

Redis는 실시간으로 읽고 전달되는 채팅 기록 및 통계 데이터를 클라이언트에 저장하는 데 사용됩니다. VPS는 동일한 양의 메모리와 디스크 공간을 가지고 있습니다. – yojimbo87

답변

6

장점 : 당신은 많은 양의 데이터가있는 경우

  • 레디 스의 데이터베이스 크기가 커질 수 있습니다. 통계를 저장하고 많은 양을 저장하는 경우 데이터베이스가 메모리 양이 될 수 있습니다. HTTP 서버에서 메모리를 제거 할 수 있으므로 웹 서버의 모든 데이터를 메모리에 보관하고 싶지는 않을 것입니다. 데이터에 대한 폴링 서버가이 아니므로 경우
  • 그것은

    • 높은 네트워크 응답 시간이있을 것입니다 이유 당신의 데이터베이스 서버에 레디 스를 설치

    단점에 대한 데이터베이스 서버라고 로컬

  • 서버가 다운되면 데이터가 부족합니다.

많은 데이터를 제공 할 수 있기 때문에 개인적으로 Redis를 자체 서버에 보관할 것이지만, 작업하는 환경에 따라 달라집니다. 속도를 최우선 순위로 설정하려면 여분의 50ms 정도는 받아 들일 수 없을 것입니다.) 127.0.0.1에 대한 요청 시간이 로컬 서브넷 내부에 있더라도 외부 네트워크 주소보다 훨씬 빠르기 때문에 웹 서버에서 실행해야합니다. 그렇지 않다면 웹 서버에서 꺼내야합니다.

2

당신이 말한 것처럼 Redis가 사용 중이며 웹 프로세스가 많은 메모리를 사용하지 않는다면, 나는 둘 모두에 넣고 db 서버에 복제 할 것입니다. 이는 중복성과 성능을 제공합니다. 이 데이터는 단순한 캐시 데이터보다 더 중요해 보임으로써 중복성이 좋을 것입니다.

웹 서버의 사용 가능한 메모리가 적고 사용 가능한 메모리가 데이터 크기보다 작 으면 데이터베이스 서버에 모두 보관하십시오. 데이터베이스 서버에 레디 스를 설치