游山玩水
    x86笔记

    1 从 IBM PC XT 架构开始…


    leveldb源码阅读笔记

    leveldb是c++实现的键值对数据库,代码质量和性能都不错,很值得学习。 自己主要看两方面:c++代码风格和实现原理。


    c语言的fork

    先看代码,会输出多少行


    内存管理

    由redis内存管理想到golang内存管理(tcmalloc)


    redis中的数据结构sds

    不管在哪门编程语言当中,字符串都几乎是使用最多的数据结构。 sds正是在redis中被广泛使用的字符串结构,它的全称是Simple Dynamic String。 其实第一次看到sds的实现时,发现实现方法和go语言反射的实现类似, 在数据的前面添加数据的相关信息,获取数据信息的时候就可以直接读取, 也就是空间换时间了,不过不同的是,sds是提高性能, go语言反射就是获取信息实现反射功能


    c/c++中的static

    static的作用主要有两种:


    TCP笔记

    在一次交谈中,被问到tcp结束需要几次握手,一下子记不得了,回来后决定把看过的学到的东西都要记下来,时不时的可以翻一下, 不至于知道的东西也说不出来


    算法笔记

    求解同一个问题,可以有许多不同的算法,那么,怎样衡量这些算法的优劣呢? 首要的条件是选用的算法必须是正确的,其次则应考虑以下三个方面:


    linux top 命令详解

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况。和服务器打交道的人应该经常用到。 可是要说清楚top命令中的每个选项的含义,对操作系统得有一定的了解才行,借此机会,对操作系统再复习一下。


    BoltDB实现机制分析

    Bolt是根据Howard Chu的LMDB项目开发的一个存粹的go语言版的key/value存储. 它的目标是为项目提供一个简单、高效、可靠的嵌入式数据库而不是要求一个完成的数据库服务器,例如Postgres和MySQL. 用作者的话说,Bolt只提供简单key/value存储,没有其他的特性,以后也不会有,加上Bolt原本的代码精简,质量高,很适合作为对数据库工作原理的感兴趣的同学的第一选择


    加密笔记

    AES 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。


    k8s笔记

    hahahah


    制作自己的linux

    编译linux内核 制作基于busybox init的init ramfs


    docker centos 中文乱码

    yum -y install kde-l10n-Chinese && yum -y reinstall glibc-common
    localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
    export LC_ALL=zh_CN.utf8
    


    修改goimports导包优先级

    goimports导包按照包的名字长短来排列包的优先级,实际开发中有个多个项目下都有某个库的代码,在自动导入包的时候可能导的是另一个项目的,可实际却要导入本项目中库,经过查看源代码,发现按照下面的步骤即可实现:


浙ICP备2024112193号-1