当前位置:网站首页>漫话Redis源码之一百二十二

漫话Redis源码之一百二十二

2022-06-22 18:33:00 涛歌依旧

在看redis源码时,心中要时刻有rediscontext这个结构体,你可以看到,这个context几乎到处都有,其后的注释是比较明确的:


typedef struct _client {
    redisContext *context;
    sds obuf;
    char **randptr;         /* Pointers to :rand: strings inside the command buf */
    size_t randlen;         /* Number of pointers in client->randptr */
    size_t randfree;        /* Number of unused pointers in client->randptr */
    char **stagptr;         /* Pointers to slot hashtags (cluster mode only) */
    size_t staglen;         /* Number of pointers in client->stagptr */
    size_t stagfree;        /* Number of unused pointers in client->stagptr */
    size_t written;         /* Bytes of 'obuf' already written */
    long long start;        /* Start time of a request */
    long long latency;      /* Request latency */
    int pending;            /* Number of pending requests (replies to consume) */
    int prefix_pending;     /* If non-zero, number of pending prefix commands. Commands
                               such as auth and select are prefixed to the pipeline of
                               benchmark commands and discarded after the first send. */
    int prefixlen;          /* Size in bytes of the pending prefix commands */
    int thread_id;
    struct clusterNode *cluster_node;
    int slots_last_update;
} *client;

看多了,就自然眼熟了,也不要求死记硬背。

原网站

版权声明
本文为[涛歌依旧]所创,转载请带上原文链接,感谢
https://blog.csdn.net/stpeace/article/details/125364288