- 博客(9)
- 收藏
- 关注
原创 TCP 简单记录
TCP定义 TCP 是面向连接的协议,可靠地,基于字节流的传输层通信协议 可靠性: 滑动窗口协议,定时器TCP流程三路握手&四路结束 数据流交互naglenagle为了避免发送过多的小数据块,发送数据时如果数据的的大小没有达到MSS,并且连接上有数据还没有ACK,则不允许此次发送。或者数据包在本地等待超过200ms时仍然没有达到MSS则立即发送,可以理解为用时间换空间的一种做法数据块交互
2017-07-04 15:11:46 319
转载 关于SIGPIPE信号
连接建立,若某一端关闭连接,而另一端仍然向它写数据,第一次写数据后会收到RST响应,此后再写数据,内核将向进程发出SIGPIPE信号,通知进程此连接已经断开。而SIGPIPE信号的默认处理是终止程序,导致上述问题的发生。#include //SIGPIPE ignorestruct sigaction act;act.sa_handler = SIG_IGN;if (sigaction
2017-07-03 21:59:05 363
原创 服务器端指标和优化方案
1.吞吐量。批量。替换基础组件(rpc)。网卡多队列。Cache。Sharding。减少不必要的请求(优化业务。业务水平扩展2.延时。同机房部署。Cache(更快的Cache和更高的命中率)。并行请求。压缩。减少不必要的请求(优化业务流程)3.可靠性。failover。冗余。重试
2017-06-29 14:47:43 371
原创 redis 源码简介he
1.redis object2.数据结构3.redis object 和数据结构的对应关系4.快照(AOF & RDB)5.同步6.cluster
2017-06-25 22:46:08 244
原创 一次无锁循环队列的编写回顾
今天写了一个无锁队列,代码比较短,但是调试时间比较久,主要的几个问题是: 函数用法不清楚(CAS)函数起名不准确,导致用错算法不熟练,导致调试时发现算法的偏移又问题 代码如下:#ifndef LYY_LIB_LOCK_FREE_QUEUE_H#define LYY_LIB_LOCK_FREE_QUEUE_H#include <vector>#include <cstdint>
2017-06-25 21:28:56 278
原创 快排中一个宏的bug
今天写快速排序,碰到一个问题:使用了下面的宏:[cpp] view plain copy#define SWAP(a,b) \ int temp = a; \ a = b; \ b = temp 咋看没有问题,但是在使用时a,不是一个值而是一个表达式[cp
2017-06-25 13:48:59 214
原创 Android 图片加载时间
图片加载时间测试:手机note3获取图片地址 public void loadImage() { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); startActivityForResu
2015-05-16 11:54:48 865
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人