prozhou

2
获赞数
1
关注数
0
粉丝数
北京
山东女子学院 | 计算机科学与技术
IP 属地未知
2019-10-12 加入
浏览 6.6k
开源爱好者

. 重新学习redis源码中
. 曾就职与环球购物、滴滴,现在字节跳动
. GitHub
. 希望交流的加微信 zhou_sheng_zheng 注明:sg 拉到交流群
. 使用linux系统,用vim编程,热爱编程,努力学习中。
. 工作中使用 php go python 语言,不局限语言

9 声望
源码
8
网络编程
8
redis
8
分屏任务
0
windows10
0
黄金勋章
暂未获得该勋章
如何获得
白银勋章
暂未获得该勋章
如何获得
个人动态
  • 发布了文章2021-11-08
    Redis源码-5 异步事件
    在Redis源码-3 网络编程, 学习了redis封装的网络库。其中用了循环不断去执行anetTcpAccept, 这是机制效率差,为了提高程序的并发数,操作系统引入了epoll等类似的机制,避免了死等,可以做到当事件发生时通知用户。Redis没有才用现有的异步库,自研了一个适合redis的...
  • 发布了文章2021-11-08
    Redis源码-4 日志和时间
    redis中的日志模块写在了server.c中,没有独立成一个文件。本文以最小可运行的方式,抽离出日志模块,以及日志依赖的时间模块。对于日志,redis封装了serverLog, 该方法第一个参数是日志等级,剩余参数会拼接成字符串。保持了和高级语言一样的方式。可以把日志输出到...
  • 发布了文章2021-11-06
    Redis源码-3 网络编程
    anet把封装的了socket编程的接口, 原先需要socket, bind, listen, accept , connect等接口封装为很少的接口,屏蔽了一些复杂的参数,开发网络编程更加接近Go、Python等高级语言。
  • 发布了文章2021-11-05
    Redis源码-2 Redis中的内存分配和原子操作
    内容redis中的内存分配apiredis中的原子操作api源代码源码代码构建 {代码...} zmalloc.c中引用了config.h, 删除掉新建server.c, 内容如下 {代码...} 新建Makefile {代码...} 再看一下zmalloc_test的内容 {代码...} 输出 {代码...} 解释对于zmalloc函数,可以直接对应...
  • 发布了文章2021-11-04
    Redis源码-1 准备知识:如何编译多个c文件
    源码源码编译多文件我们有以下三个文件file1.c {代码...} file2.h {代码...} file2.c {代码...} 执行 gcc file1.c file2.c -o server 生成可执行程序server, 执行./server 我们可以得到以下输出 {代码...} 这样就可以编译多文件的程序了。linux下还需要make程序来自...
  • 发布了文章2019-12-18
    go语言http server解析之一
    通过学习发现go写http server主要有以下两种方式,本文是分析beego中的httpServer和graceServer的基础前提。通过分析源码,和unix中开发server中的方式(socket,bind,listen,accetp)串连起来,而不仅仅是go给我们提供好的几个api。
  • 发布了文章2019-12-13
    beego源码解析之config模块
    config模块参考了database/sql中实现模式,接口和实现分离,本教程选取ini格式配置的实现,以及分析beego和config模块的集成方式,来实现下面三个目标。
  • 发布了文章2019-11-04
    windows10上下分屏
    大学时使用windows,由于windows软件大,闭源,开始使用linux, 一直使用6年多,认同linux的方式。后来工作有钱也用了几次mac pro,bash也和linux有不同,用的也少。后来GPD micro PC众筹,想买一个便携的小pc,装个ubuntu。后来电脑到了,装的是windows10, ubuntu支持也...
  • 发布了文章2019-10-12
    vim插件之vim目录
    传统vim目录 plugin {代码...} doc {代码...} syntax {代码...} indent {代码...} ftplugin {代码...} autoload {代码...} vim插件管理器做了什么 vim插件管理器会设置runtimepath set runtimepath? leetcode插件示例 总结 开发vim插件关键有以下目录 plugin 启动必...