自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

skyline

追求清晰的逻辑

  • 博客(33)
  • 收藏
  • 关注

原创 rebar3 简单使用

下载下载编译好的版本$ wget https://s3.amazonaws.com/rebar3/rebar3 $ chmod +x rebar3设置path,方便使用$ pwd$ /data/bin/rebar3$ export PATH=$PATH:/data/bin/rebar3新建项目rebar3 定义了几种类型的项目,app cmake escrip

2017-04-25 16:14:20 5359

原创 信息的表示和处理

信息存储字节与字节的寻找字节,一个字节是8位,计算机使用字节作为最小的可寻址的存储器单位,并不是在存储器里寻找单独的位。 程序将存储器看成一个非常大的字节数组,这个非常大的字节数组就是虚拟存储器(virtual memory)。存储器上的每个字节都能用具体的地址来寻找,这些地址的集合就是虚拟存储空间。 虚拟存储空间是在程序角度上来看,对计算机存储器的抽象。字和字长字和字长这两个概念是描述计算机硬

2017-02-15 17:46:04 435

原创 统计某进程到mysql的连接数

1、 netstat是有权限的限制的,如果不是使用root用户执行,很可能无法看到全部的结果,如下 netstat -tnp | grep 3306(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.)

2017-02-14 17:42:34 1865

原创 erlang rpc 远程调用

rpc启动rpc模块的启动过程很简单,并没有初始化做太多事情,以{local,rex}的名称启动了一个gen_server进程,然后以gb_trees的数据结构来存储gen_server的state。业务进程调用rpc:callrpc模块中比较常用的就是rpc:call和rpc:castcall/4 和 call/5 这个两个接口的区别,只是在timeout时间是自定义还是infinity而已。

2016-11-28 15:19:22 6037

原创 Linux格式化硬盘

格式化硬盘是指初始化硬盘的文件系统。文件储存在硬盘上,硬盘的最小存储单位叫做”扇区”(Sector)。每个扇区储存512字节(相当于0.5KB)。 linux上的常见的文件系统 ext2 ext3 ext4。1 inode每个文件对应一个inode,文件属性信息存储在inode中,文件本身的数据存储在block里面。文件系统的又分为inode区域和block区域,inode数量的多少限制能最多创建

2016-11-28 10:55:45 10184

原创 CentOS7配置samba4.2到Win8

samba服务在配置的时候老是出错,让我非常郁闷,今天临睡前突然想到一个问题,我在securecrt上登录的是root账号,而samba上配置的是另一账号,结果导致权限不足。 因为是用root登录的所以对权限不足一直没考虑到用户去,只是一直在考虑配置问题,想到这点后,我有测试下,果然可以了。samba配置的主要工具 vim /etc/samba/smb.conf 配置文件太容易出错了,网上

2016-07-05 11:29:54 2953

原创 emysql 源码阅读

emysql 也是一个常用的erlang mysql数据库驱动。相比较erlang_mysql_driver,emysql的代码结构更加清晰。emysql的使用非常方便,先执行emysql:start、emysql:add_pool,然后调用emysql:fetch/execute就可以开始执行sql语句了。1 emysql的启动 emysql:start 以监督树进程的形式,启动了两个

2016-07-01 14:43:53 2634

原创 erlang_mysql_driver 源码分析4

其实本来是要讲tcp粘包问题的,刚好erlang_mysql_driver里面就有关于这个问题的一种解决方式,所以干脆就以erlang_mysql_driver的源码为例吧。tcp 粘包问题mysql的协议包是建立在tcp的基础上的,而tcp协议是流协议,也就是在使用的时候可以保证按顺序收到,但是并不是对方发送多少次,我们就能接收多少次。这就是tcp粘包问题了, 网上关于tcp粘包问题的

2016-06-23 17:59:44 1129

原创 prim_inet:async_accept

gen_tcp:acceptAccepts an incoming connection request on a listen socket. Socket must be a socket returned from listen/2. Timeout specifies a timeout value in ms, defaults to infinity. gen_tcp模块提供的a

2016-06-21 12:58:30 4151 1

原创 erlang_mysql_driver 源码分析3

mysql_conn和mysql_recv 前面我们讲了,mysql_conn与mysql_dispatcher的关系,mysql_dispatcher维护多个连接池,每个连接池里有多个mysl_conn进程。我们查询sql时,由mysql_dispathcer选择合适的mysql_conn执行sql。 接下来,关心的是mysql_conn是如何执行sql的?mysql_recvmysql_c

2016-06-17 16:03:56 983

原创 erlang_mysql_driver 源码分析1

erlang_mysql_driver 是个mysql的数据库驱动 源码主要包含 mysql mysql_conn mysql_recv mysql_auth 这几个模块 mysql模块提供给外部调用的接口,包括启动、添加连接、执行sql语句。 mysql模块的另一主要功能是维护mysql_conn连接池,在执行sql语句时,选择合适的mysql_conn进程进行sql处理。 mysql_c

2016-06-17 12:58:36 1243

原创 erlang_mysql_driver 源码分析2

pool模型mysql:fetch 和 mysql_conn今天想起网络上的一片文章,说erlang_mysql_driver的连接池实际上是没有意义的。 大概意思是,我们使用mysql:fetch去执行sql语句,mysql:fetch会call一条消息到mysql_dispatcher进程中。而当我们同一时刻大量调用mysql:fetch的时候,mysql_dispatcher中就会有多条ca

2016-06-16 23:02:13 1584 9

原创 erlang 取整数的位或设置整数的位

经常会用到使用一个32位或64位的数来存储有两种状态的列表,(列表长度=比如使用2,二进制10,来表示第一位为0,第二位为1最终我们存储的时候,只需要存储一个32位的数就可以完成这个列表状态的存储了。当我们决定使用这种实现的时候,就需要经常使用到两个接口,get_pos_state(Pos, Num) -> 得出Num的Pos位的状态,返回0或1set_pos_state(Po

2016-02-21 21:18:03 1789

原创 看到一句话,感受良多

以为自由就是想做啥做啥。后来才发现自律者才会有自由。当一个人缺乏自律的时候,他做的事情总是在受习惯和即时诱惑的影响,要么就是被他人的思想观念所扰,几乎永远不可能去做内心真正渴望的事。

2014-09-29 01:24:23 665 2

原创 linux内核 一

Unix操作系统成为一个强壮的操作系统的原因,

2014-09-18 21:18:52 678

原创 assert.h

C语言中的头文件唯一的

2014-09-17 10:44:22 594

转载 Nginx源码分析一

源码包解压之后,根目录下有几个子目录和几个文件

2014-09-15 00:39:06 560

原创 下载和安装Nginx

在安装Nginx服务器之前必须先

2014-09-14 00:33:02 563

原创 Nginx的进程模型

Nginx分为两种进程模型:Single  Master

2014-09-13 23:09:41 527

原创 Nginx服务器的基本模块

在功能上划分:核心模块:内核模块

2014-09-13 23:08:12 465

原创 代理服务器和反向代理服务器

代理服务器中的缓存内容是由

2014-09-13 22:35:16 535

原创 HTTP权威指南 总结

不知道是不是开学的原因,整个人心浮气躁的,

2014-09-10 23:24:58 604

原创 IA__gdk_gc_new: assertion 'drawable != NULL' failed

在睡意朦胧之际,记录下晚上的一个小错误。

2014-09-08 00:52:26 1462 1

原创 GTK GDK 事件 信号

GTK应用程序是基于事件触发机制的。我们使用g_sig

2014-09-06 20:13:46 1320

转载 FTP文件传输协议

FTP使用TCP生成一个连接用于控制

2014-09-05 00:30:38 796

原创 const string为函数参数的警告

今天编程遇到的一个 testpasv.c: In function ‘string_ctl’:testpasv.c:7:3: warning: assignment discards ‘const’ qualifier from pointer target type [enabled by default]  p=str;

2014-09-04 11:20:32 1217 1

原创 unp笔记五 udp编程

客户端recvfrom服务端,通过recvfrom函数中

2014-09-03 12:51:48 667 2

原创 unp笔记四 select和poll

大名鼎鼎的select和poll

2014-09-03 10:13:36 568

原创 unp笔记三 IO复用基础概念

IO复用的使用场合客户端客户处理多个描述符( )

2014-09-02 19:06:35 751

原创 X视窗系统和GTK

以下内容主要《linux程序设计》

2014-09-01 21:48:12 864

原创 unp笔记二 多进程服务器

fork进程并发服务器范式

2014-09-01 00:35:46 942

原创 实现HTTP服务器 笔记一IO函数

I/O函数的使用在服务器的实现过程中无意间看了《深入理解计算机系统》

2014-08-30 00:06:33 644

原创 unp笔记一 网络编程基础

这几天一直看不下书啊,也没有学习的动力,

2014-08-12 18:51:27 862 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除