>  기사  >  Java  >  Java의 고급 기술은 무엇입니까?

Java의 고급 기술은 무엇입니까?

WBOY
WBOY앞으로
2023-05-31 14:04:061117검색

Redis에서 일반적으로 사용되는 데이터 유형

Redis에서 일반적으로 사용되는 5가지 데이터 유형은 String, Hash, List, Set 및 Sorted set입니다.

Java의 고급 기술은 무엇입니까?

Redis의 사용 시나리오

1. 가장 최근, 가장 인기 있는, 가장 높은 클릭률, 가장 높은 활동 등을 포함하는 상위 목록입니다.
3. 사용자의 최근 액세스 기록은 Redis 목록에 대한 좋은 응용 시나리오이기도 합니다.
4 lpop 및 lpush 인터페이스를 통해 대기열을 작성하고 사용합니다.
5. Redis의 Lua 기능 확장은 실제로 Redis에 더 많은 응용 프로그램 시나리오를 제공하며 작은 비차단 트랜잭션 또는 업데이트 논리로 여러 명령 조합을 작성할 수 있습니다.
6. 실제로 이것은 캐시에 대한 강력한 기능 확장입니다

요약

Redis의 모든 기능에서 분리할 수 없는 수많은 애플리케이션이 있습니다

Redis의 미스터리를 밝혀보세요

Redis는 오픈 소스입니다(키-값 키-값 쌍). ), 데이터베이스, 캐시 및 메시지 대기열 브로커로 사용할 수 있는 인메모리 데이터 구조 서버입니다. 단일 프로세스 단일 스레드 모델을 채택하고 강력한 동시성 기능을 갖추고 있으며 현재 인터넷 아키텍처의 주류 분산 캐싱 도구입니다.

Java의 고급 기술은 무엇입니까?

Redis 고성능 캐시 아키텍처 설계

1. 아키텍처 설계

redis는 단일 포인트로 프로젝트에서 사용해야 하므로 배포는 직접 구현해야 합니다. 기본 아키텍처 다이어그램은 다음과 같습니다.

Java의 고급 기술은 무엇입니까?

2. 분산 구현

키를 사용하여 일관된 해싱을 수행하여 키에 해당하는 Redis 노드의 배포를 실현합니다.

일관적 해싱 구현:

해시 값 계산: MD5와 MurmurHash라는 두 가지 계산 방법을 지원하여 효율적인 해시 계산을 위해 MurmurHash가 기본적으로 사용됩니다.

일관성 달성: 균일한 분포를 달성하기 위해 Java의 TreeMap을 통해 링 구조를 시뮬레이션합니다.

3. 클라이언트 선택

jedis의 주요 수정 사항은 파티션 모듈을 수정하여 BufferKey를 지원하도록 하는 것입니다. 동시에 다른 Redis 노드 정보를 기반으로 JedisPool의 기본 구현을 수정하여 연결 풀 풀이 키와 값의 구성 방법을 지원하고 다른 ShardInfo를 기반으로 다른 Jedis를 생성할 수 있습니다. 클라이언트는 애플리케이션 계층에서 호출되는 파티셔닝 효과를 달성합니다.

4. 모듈 설명

더티 데이터 처리 모듈은 실패한 캐시 작업을 처리합니다.

Shield 모니터링 모듈은 jedis 작업의 비정상적인 모니터링을 위해 노드에 이상이 발생할 경우 redis 노드 제거 및 기타 작업을 제어할 수 있습니다.

전체 분산 모듈은 Hornetq를 사용하여 비정상적인 Redis 노드를 제거합니다. 새로운 노드를 추가하는 것은 reload 메소드를 통해서도 가능합니다. (이 모듈은 새 노드를 추가하기 위해 쉽게 구현할 수도 있습니다)

위 내용은 Java의 고급 기술은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제