이 글에서는 주로 Memcached의 작동 원리를 소개합니다.
Memcached에서 처리되는 아톰은 각각의 (키, 값) 쌍(이하 kv 쌍)입니다. 키는 검색, 비교 및 해싱을 최대한 용이하게 하기 위해 해시 알고리즘을 통해 해시 키로 변환됩니다. 동시에 memcached는 대규모 해시 테이블을 통해 유지 관리되는 2단계 해시를 사용합니다.
Memcached는 서버와 클라이언트라는 두 가지 핵심 구성 요소로 구성됩니다. Memcached 쿼리에서 클라이언트는 먼저 키의 해시 값을 계산하여 kv 쌍의 서버 위치를 결정합니다. 서버가 결정되면 클라이언트는 정확한 데이터를 찾을 수 있도록 해당 서버에 쿼리 요청을 보냅니다. 이들 사이에는 상호 작용이나 멀티캐스트 프로토콜이 없기 때문에 Memcached 상호 작용이 네트워크에 미치는 영향이 최소화됩니다.
예: 세 개의 클라이언트(c1, c2, c3)와 세 개의 ms(즉, s1, s2, s3)가 있다고 가정합니다.
Set kv pair
c1은 key="com", value=를 설정하려고 합니다. "iQiyi"
c1은 서버 목록을 가져오고, 키에 대해 해시 변환을 수행하고, 해시 값을 기반으로 kv 쌍에 저장된 서버의 위치를 결정합니다
s2가 선택됩니다
c1이 s2에 연결되고, s2가 요청을 받고, puts(key="com" , value=”iQiyi”)가 저장되었습니다
kv 쌍 가져오기
c3은 key=”com”의 값을 가져오려고 합니다
c3는 동일한 해시 알고리즘을 사용하여 해시 값을 계산하고 확인합니다. key=”aa” 값이 s2에 저장되어 있음
c3 s2에 연결하고 s2에서 value=”iQiyi” 가져오기
c1, c2, c3에서 key=”com” 값을 가져오려는 다른 요청이 전송됩니다. to s2
Memcached에 대해 더 자세히 알고 싶다면 PHP 중국어 웹사이트에서 Memcached 비디오 튜토리얼 또는 Memcached 매뉴얼을 따라가세요.
위 내용은 Memcached는 어떻게 작동하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!