摘要: 互斥锁 假如在一个多核CPU中,coreA运行的A线程通过调用pthread_mutex_lock去获得一个临界区的互斥锁,然后coreB中运行的B线程也调用pthread_mutex_lock去获取互斥锁,B线程就会被阻塞,coreB就会执行上下文切换,把B线程调度到等待队列中,然后coreB就可 阅读全文
posted @ 2020-10-11 20:16 gitfong 阅读(232) 评论(0) 推荐(0) 编辑
摘要: TCP报文段结构 序号seq和确认号ack 序号seq是该报文段首字节的字节流编号,其作用是保证数据的顺序; 确认号ack是期望收到下一字节的序号,其作用是保证数据不会丢失; TCP报文段首部字段中有六个标志位 SYN 用于连接建立 ACK 用于指示确认字段中的值是有效的,即该报文段包含一个对已被成 阅读全文
posted @ 2020-10-11 14:52 gitfong 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 缓存击穿 某个key过期了,但是对该key的大量请求被转发到查询数据库去了。 解决方法:设置key不过期;或者加访问互斥锁; 缓存穿透 某个key不存在缓存中,所有请求被转发到数据库去查询,然而数据库也没有该key对应的数据。 解决办法:不存在的key也保存到缓存中,并设个过期时间。应用层校验key 阅读全文
posted @ 2020-10-10 00:43 gitfong 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 阻塞IO 用户线程阻塞在recvfrom调用上,等待内核把数据准备好并把数据拷贝到用户空间,再返回; 非阻塞IO 需要用户线程不断去询问内核数据是否准备好了; IO复用 依然是阻塞的,阻塞在select操作上。 线程通过将一个或多个fd传递给select,阻塞在select操作上,select帮我们 阅读全文
posted @ 2020-10-09 23:56 gitfong 阅读(100) 评论(0) 推荐(0) 编辑
摘要: mysqldump mysqldump是MySQL自带的数据备份工具,它需要通过账号密码连接到数据库才能备份数据,可以指定要备份的库和表。默认会生成建表语句、表数据会转成insert语句。 mysqldump --help 可以查看各种可选参数。 备份表 mysqdump -uroot -p db_ 阅读全文
posted @ 2020-09-24 17:30 gitfong 阅读(322) 评论(0) 推荐(0) 编辑
摘要: SetMaxOpenConns(maxOpenConns) 连接池最多同时打开的连接数。 这个maxOpenConns理应要设置得比mysql服务器的max_connections值要小。 一般设置为: 服务器cpu核心数 * 2 + 服务器有效磁盘数。参考这里 可用show variables l 阅读全文
posted @ 2020-09-24 04:02 gitfong 阅读(2484) 评论(0) 推荐(2) 编辑
摘要: windows环境下:设置环境变量:GOPATHGOPATH目录下必须要有固定的文件组织结构:src、pkg、bin(其中src必须要有,所有源码都放到src目录下。而pkg和bin会在执行go install命令时自动生成)go build会在当前目录生成可执行文件;对于不包含入口点(entry  阅读全文
posted @ 2018-01-18 14:48 gitfong 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 注:本文转摘自:https://mp.weixin.qq.com/s/w35pfdETK7mr19w_O5FOZg 背景 虽然笔者是Android开发工程师,但也接触过各种IDE(不限于Android开发)。不同的IDE往往都有不同的快捷键,我们总不能对每种IDE都进行配置吧。实际上,现在大部分ID 阅读全文
posted @ 2018-01-04 11:11 gitfong 阅读(1015) 评论(0) 推荐(0) 编辑
摘要: Emacs23及以后的版本 只需在.emacs文件的custom-set-variables()里添加 '(global-linum-mode t) 即可默认开启显示行号功能 阅读全文
posted @ 2016-09-10 23:04 gitfong 阅读(1474) 评论(0) 推荐(0) 编辑
摘要: -module(socket).-behavior(gen_server).-export([ start/0, do_client_connect/0 ]).-export([ init/1, handle_call/3, handle_cast/2, handle_info/2, termina... 阅读全文
posted @ 2015-06-02 00:23 gitfong 阅读(449) 评论(0) 推荐(0) 编辑