sig信号 发表于 2019-10-07 | 分类于 linux signal 信号1.信号的处理方式? 信号(signal)– 进程之间通讯的方式,是一种软件中断。一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。 1234567891011singnal.signal(signalnum, handler)#import signalimport ... 阅读全文 »
mongodb_intro 发表于 2019-10-07 | 分类于 db mongodb概念1234567# 对比mysql MongoDB数据库 数据库Db表 集合Collection行 文档Document列 字段Key表 集合[{"k1":"v1","k2":"v2"},{}] 优势 格式不固定 J ... 阅读全文 »
epoll 发表于 2019-06-28 | 分类于 cs epollepoll 如何实现百万连接123int epoll_create(int size);//size fd数量,创建了红黑树和就绪链表int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event);//添加回调函数到红黑 ... 阅读全文 »
supervisor使用 发表于 2019-05-12 | 分类于 linux linux 进程守护安装12pip install supervisorsupervisord -v 命令12345678910111213141516171819202122232425262728293031323334351.配置路径mkdir -p /etc/supervisor2.完整配置 ... 阅读全文 »
boltdb使用 发表于 2019-04-19 | 分类于 boltdb golang boltdb 的学习和实践1. 安装1go get github.com/boltdb/bolt 2.创建和启动数据库1db, err := bolt.Open("my.db", 0600, nil) 其中open的第一个参数为路径,如果数据库不存在则会创建名为 my.db 的数据库, ... 阅读全文 »
hash算法 发表于 2019-04-06 | 分类于 cs hash 算法简单来说:hash(散列、杂凑)函数,是将任意长度的数据映射到有限长度的域上。直观解释起来,就是对一串数据 m 进行杂糅,输出另一段固定长度的数据 h,作为这段数据的特征(指纹)。 由于用途的不同,hash 在数据结构中的含义【hashCode()】和密码学【md5,sha1,sha2 ... 阅读全文 »
gin概览 发表于 2019-04-05 | 分类于 框架 Gin 框架概览基本用法12345678910111213package mainimport "github.com/gin-gonic/gin"func main() { r := gin.Default() r.GET("/ping", func(c *gin.Context) ... 阅读全文 »
golang闭包 发表于 2019-03-16 | 分类于 golang 闭包关键点 闭包也是类,运行闭包等同于创建对象【类是数据附带行为,闭包是行为附带数据】 区分全局变量和局部变量 1234567891011121314151617181920package mainimport "fmt"func add() func() int { sum := 1/ ... 阅读全文 »
源码阅读顺序 发表于 2019-03-14 | 分类于 源码阅读 源码阅读习惯 快速浏览程序文档【官方文档】,制作简单的 demo,使用一些核心功能 在 Google 中搜索程序的源码解析,浏览前十篇文章,记录一些关键点 自己下载源码,找前面的记录的一些关键点,写上自己的源码理解注释 发布注释后的源码到自己的 github 仓库,写上自己的心得理解到 REA ... 阅读全文 »
go-test简介 发表于 2019-03-13 | 分类于 go golang 测试基本用法入门1234567891011121314151617181920212223242526272829303132333435363738package mainimport ( "fmt" "strings" "bytes")func StringPlus() strin ... 阅读全文 »