Advertisement

Redis源码阅读(三)——配置初始化

阅读量:

redis自顶向下源码阅读(三)——配置初始化

initServerConfig()

1. 设置服务器运行 ID

  • getRandomHexChars()

通过采用SHA1哈希算法对标识符进行处理,可有效保障各服务器所分配的ID具有唯一性。这意味着,当标识符存在差异时,对应的设备必然属于不同的服务器,或为同一台设备在重启后生成的新ID。

复制代码
    void getRandomHexChars(char *p, unsigned int len) {
    char *charset = "0123456789abcdef";
    unsigned int j;
    
    /* Global state. */
    static int seed_initialized = 0;
    static unsigned char seed[20]; /* The SHA1 seed, from /dev/urandom. */
    static uint64_t counter = 0; /* The counter we hash with the seed. */
    
    // 对 SHA1 seed 进行初始化, SHA1 是一种加密算法
    if (!seed_init

全部评论 (0)

还没有任何评论哟~