上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 55 下一页
摘要: 架构设计时就要订好分库策略,否则一方面技术设计会没有预留,另一方面数据模型设计上也会缺乏预留。分库有N种策略,比如:活跃库/历史库,读写分离,业务垂直分离等等。架构设计初期,订好未来将采用的分库策略,然后按该策略预留好技术支持和数据模型上的支持,比如:更新时间戳、数据属地信息、数据的业务分类信息等,... 阅读全文
posted @ 2014-07-10 06:53 弹着钢琴设计 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 术语说明:QPS = req/sec = 请求数/秒【QPS计算PV和机器的方式】QPS统计方式 [一般使用 http_load 进行统计]QPS = 总请求数 / ( 进程总数 * 请求时间 )QPS: 单个进程每秒请求服务器的成功次数单台服务器每天PV计算公式1:每天总PV = QPS * 36... 阅读全文
posted @ 2014-07-10 06:52 弹着钢琴设计 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 说明:以下内容参考了抚琴煮酒的《构建高可用Linux服务器》第六章内容.搭建负载均衡高可用环境相对简单,主要是要理解其中原理。此文描述了三种负载均衡器的优缺点,以便在实际的生产应用中,按需求取舍。目前,在线上环境中应用较多的负载均衡器硬件有F5 BIG-IP,软件有LVS,Nginx及HAProxy... 阅读全文
posted @ 2014-07-10 06:51 弹着钢琴设计 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 摘要 心跳协议,对基于CS模式的系统开发来说是一种比较常见与有效的连接检测方式,最近在用MINA框架,原本自己写了一个心跳协议实现,后来突然发现MINA本身带有这样一个心跳实现,感于对框架的小小崇拜,在实践的同时研究了一下!MINA TCP/IP SOCKET 心跳 MINA本身提供... 阅读全文
posted @ 2014-07-09 09:02 弹着钢琴设计 阅读(14847) 评论(0) 推荐(3) 编辑
摘要: read属于系统调用,它的缓存是基于内核的缓冲,是记在内核空间的. 而fgetc是标准函数, 是在用户空间I/O缓冲区的比如用fgetc读一个字节,fgetc有可能从内核中预读1024个字节到I/O缓冲区中,再返回第一个字节,这时该文件在内核中记录的读写位置是1024,而在FILE结构体中记录的读写... 阅读全文
posted @ 2014-07-08 21:24 弹着钢琴设计 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 用户程序调用C标准I/O库函数读写文件或设备,而这些库函数要通过系统调用把读写请求传给内核,最终由内核驱动磁盘或设备完成I/O操作。C标准库为每个打开的文件分配一个I/O缓冲区以加速读写操作,通过文件的FILE结构体可以找到这个缓冲区,用户调用读写函数大多数时候都在I/O缓冲区中读写,只有少数时候需... 阅读全文
posted @ 2014-07-08 21:23 弹着钢琴设计 阅读(1578) 评论(0) 推荐(0) 编辑
摘要: PS:这里的缓冲与非缓冲的区别是相对于用户进程,下文的“非缓冲文件系统”指用户的程序没有缓冲区,不要误解为系统没有缓冲区。1.缓冲文件系统缓 冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”... 阅读全文
posted @ 2014-07-08 14:53 弹着钢琴设计 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 网上关于文本文件与二进制文件的文章很多,但遗憾的是,这些文章讲得都比较散。下面我将结合所查到的资料,从多个角度谈谈文本文件与二进制文件。一、文本文件与二进制文件的定义 大家都知道计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。... 阅读全文
posted @ 2014-07-08 14:53 弹着钢琴设计 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 之前看过一些开源程序的源码,也略微知道些Apache的CGI处理程序架构,于是用了一周时间,用C写了一个简单的CGI Server,代码算上头文件,一共1200行左右,难度中等偏上,小伙伴可以仔细看看,对于学生来说,拿来当简历,含金量还是足够的。如果把程序里所涉及的HTTP协议,Linux下POSI... 阅读全文
posted @ 2014-07-08 14:51 弹着钢琴设计 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 在Linux系统中,系统默认认为每个进程打开了3个文件,即每个进程默认可以操作3 个流,即标准输入了流(/dev/stdin),标准输出流(/dev/stdout),标准错误输出流(/dev/stderr),每个进程默认从标准 输入流中读取数据,从标准输出流些正确的信息,向标准错误输出流些错误信息。... 阅读全文
posted @ 2014-07-08 14:07 弹着钢琴设计 阅读(477) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 55 下一页