Redis 모니터링

통합 인프라 및 APM을 통한 Redis 성능 인사이트

무료 체험

선도적인 기업들의 신뢰

  • ebay
  • anthem
  • allscripts
  • dachers

Redis란 무엇인가?

Redis (Remote Dictionary Server) is an in-memory data structure store, used as a distributed, in-memory key-value database, cache and message broker, with optional durability. Redis supports different kinds of abstract data structures, such as strings, lists, maps, sets, sorted sets, HyperLogLogs, bitmaps, streams, and spatial indices. Redis is open-source software released under a BSD 3-clause license although commercially supported paid versions are also available for enterprise users; Redis, Inc. commercially supports Redis Enterprise, which is available as an on-premises software deployment and a fully-managed cloud service.

redis-logo

Redis’ popularity is owed to its ability to support high performance caching at scale, making it particularly well-suited to cloud, large datacenter and microservices use cases. Redis enables faster application interactions such as quick data retrieval and a balanced load of backend services with caching.

Redis의 일반적인 사용 사례는 다음과 같습니다:

  • 데이터베이스
  • 캐싱
  • 채팅, 메시징 및 큐
  • 세션 저장소
  • 지리 공간 인덱스

Redis를 모니터링하는 방법

eG Enterprise monitors Redis effectively as it supports end-to-end monitoring of the whole application and infrastructure stack. Domain specific functionality provides deep insights, observability and root-cause diagnosis of the applications reliant on Redis, Redis servers and the resources they depend on.

Beyond this, eG Enterprise monitors all underlying and interconnected infrastructure and dependencies to identify issues that impact on Redis performance and availability but lie beyond the Redis stack itself. eG Enterprise supports both agent-based and agentless monitoring of Redis.

Out-of-the-box alerting and metric thresholds, dedicated help desk features, rich dashboards, service topology maps, live and historical reports, synthetic monitoring and user-experience views enable Redis monitoring to be integrated with modern IT workflows and business processes and with ITSM platforms such as ServiceNow, Microsoft Teams, WhatsApp and more.

eG Enterprise is available for use on-premises, in the cloud or via our ready-to-go SaaS service. 24x7, follow-the-sun support enterprise options serviced by 12 regional offices worldwide supporting 8 native languages ensure you can rely on eG Innovations.

Redis를 위한 가시성 플랫폼

eG Enterprise is a powerful AIOps observability platform designed to remove manual effort and human error from the Redis administrator, capable of scaling beyond the capabilities of the human operator and automating deployment, root-cause diagnosis and anomaly detection. eG Enterprise is a cloud-ready performance monitoring solution:

  • Automatically detect your Redis servers on all monitored hosts and start monitoring in minutes with no manual intervention
  • Auto-discover application dependencies (Java, .NET, Node.js, PHP) to downstream Redis infrastructure on all monitored hosts
  • Track slow Redis requests to optimize your Redis server and cluster performance. Trace business transactions getting affected due to infrastructure problems
  • Out-of-the-box monitoring, alerting and analytics
  • Visibility into key Redis metrics, including response time, cache hit ratio, cache usage, memory fragmentation, number of connections, hits, misses, and more
  • Pre-built monitoring dashboards to track key performance indicators for all application tiers, infrastructure and cloud services
  • Auto-baseline your Redis infrastructure and Redis based services and applications - get alerted about excessive usage patterns or anomalies

Redis 클러스터 및 서버 접근성 모니터링

Redis 액세스 레이어는 Redis 서버에 대한 클라이언트 연결을 모니터링하고 연결의 이상 여부(있는 경우)를 보고합니다.

클러스터 상태가 모니터링되며, 클러스터가 정상 상태가 아닌 경우 관리자에게 알림이 전송됩니다.

네트워크에서 서버에 연결할 수 없는 경우에도 알림이 전송됩니다.


Redis 성능 및 Redis 엔진에 대한 심층적인 인사이트

분산 메모리-객체 캐싱 시스템의 즉각적인 가시성 및 선제적 알림이 다음을 포함한 일반적인 문제를 식별합니다:

  • Redis 서버의 메모리 및 CPU 경합
  • 느린 명령 실행
  • 낮은 키스페이스 히트율
  • 높은 서버 지연
  • 예정되지 않은 서버 재부팅
  • 클라이언트 연결 거부
  • 부분 동기화 시도 실패
  • Redis 슬로우 로그의 능동적 모니터링이 지정된 실행 시간을 초과한 쿼리를 식별합니다

Redis 데이터베이스를 위한 핵심 문제 해결 정보

eG Enterprise는 관리자가 복잡한 문제를 해결하여 Redis 성능을 최적화할 수 있도록 다음과 같은 일반적인 문제를 진단하기 위한 핵심 지표를 포함합니다:

  • Redis 서버의 CPU 집약적 명령;
  • 만료 예정인 키가 많은 데이터베이스;
  • 영속성 및 복제 작업의 문제

Redis 엔드투엔드 모니터링을 넘어서

eG Enterprise는 단일 통합 인터페이스 내에서 다음을 포함한 Redis를 지원하는 모든 상호 의존성과 기반 인프라 및 서비스에 대한 진정한 엔드투엔드 모니터링을 제공합니다:

  • A full suite of Application Performance Monitoring (APM) tools to allow the quality, performance and availability of the end user experience and service quality
  • Synthetic monitoring tools including protocol, full session and web application simulators allow the performance and behavior of Redis to be tested within the full context of applications and services depending on it
  • Cloud and on-premises datacenter monitoring to ensure issues such as faulty RAM, server CPU capacity, cloud capacity and so on are correctly identified
  • Network monitoring - networking issues can have a significant impact on Redis performance and comprehensive networking monitoring is essential for optimal behavior
  • Full support for authentication stacks including Active Directory enables traceability and auditing of secure access
  • Cloud billing, subscription and account monitoring enables you to correlate and optimize your Redis costs and performance in the cloud

Redis 모니터링에 관한
자주 묻는 질문(FAQ)

Redis began as a caching database, but it has since evolved into a primary database. Many applications built today use Redis as a primary database. However, most Redis service providers support Redis as a cache but not as a primary database.

With Redis Enterprise, you can use Redis as both an in-memory cache and a primary database in a single system, thus eliminating the complexity and latency of two separate systems. Not only that, you can use it as a multi-model primary database, enabling you to build modern applications, as well as low-latency microservice-based architectures, all on top of Redis.

See: Redis as a Cache vs Redis as a Primary Database in 90 Seconds | Redis

Redis는 오픈소스 인메모리 키-값 데이터 구조 저장소로, 데이터베이스, 캐시 또는 메시지 브로커로 사용할 수 있습니다. NoSQL 데이터베이스입니다.

eG Enterprise supports over 200 different technology stacks, see: End-to-End Monitoring: Applications, Cloud, Containers (eginnovations.com), including many popular database offerings such as: MongoDB, Maria, Oracle, Microsoft SQL Server, Azure SQL Managed Instances and Database, Azure Cosmos DB, SAP HANA, MySQL and others.

The Redis architecture contains two main processes: Redis client and Redis Server. Redis client and server can be on the same computer or VM / container or on distinct separate computers/VMs.

Redis server is responsible for storing data in memory. It handles all kinds of management and forms the major part of the Redis architecture. Redis client can be Redis console client or any other programming language’s Redis API.

Redis is a storage of data structures of the NoSQL type. Redis stores everything in primary operational memory. Primary memory is volatile and therefore we will lose all stored data once we restart our Redis server or computer. Therefore, for data persistence, Redis supports the following mechanisms:

  • RDB: At specified intervals, RDB makes a copy of all the data in memory and stores them in permanent storage.
  • AOF: AOF logs all write operations received by the server, thereby making all data persistent.
  • SAVE command: Redis server can be forced to create an RDB snapshot any time using the SAVE command.

Redis also supports replication for fault-tolerance and data accessibility. To enhance storage capacity, you can also group two or more Redis servers to form a cluster. As such, Redis employs a primary-replica architecture and supports asynchronous replication where data can be replicated to multiple replica servers. This provides improved read performance as requests can be split and distributed amongst the servers and enables faster recovery when the primary server experiences an outage.

An excellent community article on Redis terminology and architectures is, How Redis Internally works ? What is redis ? | by N Singh | Nov, 2022 | Medium.

As mentioned already, all Redis data resides in-memory, in contrast to databases that store data on disk or SSDs. By eliminating the need to access disks, in-memory data stores such as Redis avoid seek time delays and can access data in microseconds.

Because of the reduced seek time and improved accessibility of data, Redis is the 'go-to' database for search engines.

Also, Redis supports Pub/Sub with pattern matching and a variety of data structures such as lists, sorted sets, and hashes. This allows Redis to support high performance chat rooms, real-time comment streams, social media feeds and server intercommunication such as Twitter, Flickr, Pinterest etc.

To summarize, many widely popular applications rely on Redis for their data storage and retrieval needs. This means that even a short break in the availability of the database or any slowness in its performance, no matter how negligible, can adversely impact user experience with that business-critical application. To avoid this, administrators should continuously monitor the health and performance of the Redis server and capture performance issues, well before they impact the quality of user interactions with the dependent applications.

eG Enterprise’s proactive monitoring and out-of-the-box alerting ensures administrators can avoid most issues and outages and when issues do impact performance resolve them rapidly.

Third-party platforms such as eG Enterprise simplify the monitoring of Redis Servers. Redis does provide some functionality to access performance data and metrics directly. MONITOR is a debugging command that streams back every command processed by the Redis server. It can help in understanding what is happening to the database. This command can both be used via redis-cli and via telnet. See: MONITOR | Redis.

예, 지원합니다. 문서에서 지원에 대해 자세히 읽을 수 있습니다. 참조: Azure Redis 캐시 테스트(eginnovations.com).

Redis용 eG Enterprise를 사용하면 관리자는 다음과 같은 일반적인 성능 질문에 신속하고 정확하게 답변을 찾을 수 있습니다:

  • Redis 서버가 네트워크에서 이용 가능한가?
  • 서버가 ping 요청에 pong으로 응답하는가?
  • 서버가 최근에 재부팅되었는가? 그렇다면 계획된 재부팅이었는가, 예정되지 않은 재부팅이었는가?
  • Is any client connection to Redis been idle for too long a time? If so, what is that client's IP address?
  • Redis 서버에 대한 장기 실행 클라이언트 연결은 어느 것인가?
  • maxclients 제한에 도달하여 서버가 연결을 거부한 것이 있는가?
  • Is there enough space in the Redis query buffer? Which client's query buffer is running out space?
  • Is the output list of any client very long? If so, which client has a long output list? Is the abnormal output list length because of lack of memory in the output buffer of that client?
  • Is the Redis server consuming CPU excessively? If so, what is contributing to this erratic CPU usage - resource-intensive system processes? or resource-hungry user processes?
  • 서버가 maxmemory 제한을 곧 소진하려 하는가?
  • 서버에서 높은 메모리 단편화가 감지되었는가?
  • 서버가 처리해야 할 명령으로 과부하 상태인가?
  • 지속적으로 CPU 집약적인 명령이 있었는가?
  • Has the Slowlog captured any slow commands? If so, which are these commands and when were they executed?
  • Are keys in any Redis database expiring soon? If so, which database do these keys belong to?
  • 많은 키가 만료되었는가?
  • 키가 제거된 것이 있는가?
  • Is the keyspace able to service all requests to it, or are too many keyspace hits going unserviced? Is the poor hit ratio increasing server latency?
  • 마지막 RDB 저장 작업이 완료되는 데 너무 오래 걸렸는가?
  • Has it been a long time since the last successful RDB save operation occurred?
  • 서버에서 Append Only File(AOF) 로깅이 활성화되어 있는가?
  • Is the target Redis server the master or slave in a replication configuration?
  • If the target is a slave, then is it able to connect to the master? Has the link to the master been down too long?
  • 슬레이브가 마스터와 매우 느리게 동기화되고 있는가?
  • 복제 백로그의 크기가 적절한가?
  • 부분 동기화보다 전체 동기화가 더 많이 발생하고 있는가?
  • 부분 동기화 시도가 실패한 것이 있는가?
  • Is the monitored Redis instance part of a cluster? If so, is the cluster operating normally at present?
  • Are any hash slots in the cluster in the FAIL or PFAIL state?
  • Were any nodes recently added to or deleted from the cluster? If so, which nodes are these?

예, 핵심 eG Enterprise 제품에는 라이브 및 과거 보고서가 기본으로 포함되어 있으며, 간단한 GUI 사용자 정의 보고서 작성기와 함께 감사, KPI 및 SLA 추적, 경영 인사이트를 위한 보고서를 예약하고 생성할 수 있습니다. 장기 추세 및 사용 패턴을 분석하고 추적하여 Redis 인프라를 계획할 수 있습니다.


무료 체험판을 시작하거나 엔지니어와 맞춤형 데모 일정을 잡으세요

  • 클라우드 환경, 하이브리드 클라우드 설정 및 온프레미스 배포에서 작동
  • SaaS 플랫폼 또는 온프레미스를 사용하여 eG Enterprise 배포
  • 클라우드 애플리케이션, 디지털 워크스페이스 및 IT 인프라 모니터링에 적합
Please Enter Valid Work Email
eG Enterprise