Memcached 공식 사이트에 대한 java_memcached-release_2.0.1 버전은 읽기 분석을 하고 Memcached Java 클라이언트lib 라이브러리에서 주로 제공하는 호출 클래스는 SockIOPool과MemCachedClient?,관건적인 유형과 방법의 정리 설명은 다음과 같다.
SockIOPool
이 클래스는 관리 클라이언트와 서버 통신 연결 탱크를 만드는 데 사용되는데 클라이언트의 주요 업무는 데이터 통신, 서버 포지셔닝,hash코드 생성 등을 포함하여 모두 이 클래스에서 완성된 것이다.
public static SockIOPool getInstance()
연못을 연결하는 단태 방법을 얻는다.이 방법은 getInstance (String poolName) 를 다시 불러오는 방법이 있습니다. 모든 poolName은 SockIO Pool 실례만 구성합니다.기본 구조의 poolName은 default입니다.
클라이언트에 여러 개의memcached 서비스를 설정하면 poolName을 명시해야 합니다.
public void setServers( String[] servers )
연결 풀에서 사용할 수 있는cache 서버 목록을 설정하고 서버의 구성 형식은 IP:PORT(예: 127.0.1:11211)
public void setWeights( Integer[] weights )
연결 탱크가cache 서버에 사용할 수 있는 권한을 설정하고 서버 그룹의 위치와 일일이 대응
그 실현 방법은 모든 권한에 따라 연결 탱크의 버킷에 같은 수의 서버를 설치하는 것이다. 따라서 모든 권한의 최대 공약수는 1이어야 한다. 그렇지 않으면 버킷 자원의 낭비를 초래할 수 있다.
for ( int i = 0; i < servers.length; i+/+ ) { if ( this.weights /!= null && this.weights.length > i ) { for ( int k = 0; k < this.weights[i].intValue(); k+/+ ) { this.buckets.add( servers[i] ); if ( log.isDebugEnabled() ) log.debug( "++++ added " + servers[i] + " to server bucket" ); } }
public void setInitConn( int initConn )
설정이 시작될 때cache 서버당 사용 가능한 연결 수
public void setMinConn( int minConn )
서버당 최소 접속 수 설정
public void setMaxConn( int maxConn )
서버당 최대 가용 접속 설정
public void setMaxIdle( long maxIdle )
사용 가능한 연결 풀의 최대 대기 시간 설정
public void setMaintSleep( long maintSleep )
연결 탱크 유지 보수 라인의 수면 시간 설정
0으로 설정하고 유지 보수 스레드가 시작되지 않음
유지보수 라인은 주로log를 통해 socket의 운행 상황을 출력하고 연결 수량과 빈 대기 시간 등 파라미터를 모니터링하여 연결의 생성과 닫기를 제어한다.
public void setNagle( boolean nagle )
Nagle 알고리즘을 사용할지 여부를 설정합니다. 통신 데이터의 양이 통상적으로 비교적 크고 (TCP 제어 데이터에 비해) 신속한 응답을 요구하기 때문에 이 값은false(기본값true)
로 설정해야 합니다.
ublic void setSocketTO( int socketTO )
socket의 읽기 대기 시간 초과값 설정
public void setSocketConnectTO( int socketConnectTO )
socket의 연결 대기 시간 초과값 설정
public void setAliveCheck( boolean aliveCheck )
심장 박동 모니터링 스위치를 설치한다.
true로 설정하면 매번 통신할 때마다 연결이 효과적인지 모니터링을 하여 통신 횟수를 배로 늘리고 네트워크 부하를 증가시켜야 한다. 따라서 이 파라미터는 HA에 대한 요구가 비교적 높은 장소에true로 설정해야 한다. 기본 상태는false이다.
public void setFailback( boolean failback )
연결 실패 복구 스위치 설정
true로 설정합니다. 다운된 서버가 시작되거나 끊긴 네트워크 연결을 사용하면 이 socket 연결을 계속 사용할 수 있습니다. 그렇지 않으면 더 이상 사용하지 않습니다. 기본 상태는true입니다. 기본값을 유지하는 것을 권장합니다.
public void setFailover( boolean failover )
오류 스위치 설정
현재 socket을 사용할 수 없을 때 프로그램이 자동으로 사용 가능한 연결을 찾아 되돌려줍니다. 그렇지 않으면 NULL로 돌아갑니다. 기본 상태는true입니다. 기본값을 유지하는 것을 권장합니다.
public void setHashingAlg( int alg )
hash 알고리즘 설정
alg=0 String을 사용합니다.hashCode()는 JDK에 의존하여 다른 클라이언트와 호환되지 않을 수 있으므로 사용하지 않는 것을 권장합니다
.
alg=1original 호환hash 알고리즘을 사용하여 다른 클라이언트 호환
alg=2 CRC32 호환hash 알고리즘을 사용하여 다른 클라이언트를 호환하고 original 알고리즘
보다 성능이 우수함
alg=3 MD5 hash 알고리즘 사용
전 세 가지hash 알고리즘을 사용할 때cache 서버의 나머지 방법을 찾습니다.마지막hash 알고리즘으로cache 서비스를 찾을 때consistent 방법을 사용합니다.
public void initialize()
pool 파라미터를 설정한 후 마지막으로 이 방법을 호출하여pool을 시작합니다.
MemCachedClient?
public void setCompressEnable( boolean compressEnable )
cache에 압축된 데이터를 설정
기본값은ture
이 값을 true로 설정하려면 CompressThreshold를 설정해야 합니까?
public void setCompressThreshold( long compressThreshold )
압축이 필요한cache 데이터의 한도값 설정
기본값은 30k
public void setPrimitiveAsString( boolean primitiveAsString )
cache 데이터 설정의 원래 유형은 String
기본값은false
cache의 데이터 형식이string임을 확정한 경우에만true로 설정하여 처리 속도를 높일 수 있습니다.
public void setDefaultEncoding( String defaultEncoding )
primitiveAssString이true일 때 사용하는 인코딩 변환 형식
기본값은 utf-8
주요 쓰기 데이터가 중국어와 같은 비 ASCII 인코딩 문자인 경우 GBK 등 더 짧은 인코딩 형식
을 사용하는 것이 좋습니다.
cache 데이터 쓰기 작업 방법
set 방법
데이터를cache 서버에 저장하고 저장에 성공하면true
로 돌아갑니다
cache 서버에 같은 키가 존재하면 교체
set에는 5개의 재부팅 방법이 있습니다. 키와value는 필수적인 매개 변수입니다. 그리고 만료 시간,hash코드,value 문자열 세 가지 선택 가능한 매개 변수가 있습니다
add 방법
cache 서버에 데이터를 추가하고 저장에 성공하면true
로 돌아갑니다
cache 서버에 같은 키가 존재하면false
로 돌아갑니다
add는 4개의 재부팅 방법이 있습니다. 키와value는 필수적인 매개 변수입니다. 그리고 만료 시간,hash코드 두 개의 선택할 수 있는 매개 변수
replace 방법
데이터를cache 서버에서 같은 키로 교체하고 저장에 성공하면true
로 되돌려줍니다.
cache 서버에 같은 키가 존재하지 않으면false
로 돌아갑니다
replace는 4개의 재부팅 방법이 있습니다. 키와value는 필수적인 매개 변수이고 만료 시간도 있습니다. 해시 코드 두 개의 선택할 수 있는 매개 변수
key의 규칙을 분석하고 어떤 규칙이 질서정연하게 나타나면hash코드를 자체적으로 구축하여 저장 효율을 높일 것을 건의한다
cache 데이터 읽기 조작 방법
get 방법을 사용하여cache 서버에서 데이터를 가져옵니다.
만약 쓸 때 압축되거나 서열화되면 get의 반환은 자동으로 압축 해제 및 반서열화
get 방법은 세 가지 재부팅 방법이 있습니다. 키는 필수적인 매개 변수입니다.hash코드와value 문자열이 선택할 수 있는 매개 변수인지 여부
getMulti 방법으로cache 서버에서 데이터 세트 가져오기
get 방법의 수조 실현, 입력 매개 변수 키스는 하나의 키 수조
되돌아오는 것은 맵
cache를 통해 계수기 사용
storeCounter 방법으로 계수기 초기화
incr 방법으로 계수기 증량 조작
decr를 사용하여 계수기 감량 조작
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다: