吹牛要纳税的专栏

书写是为了更好的思考

博客搬家

csdn的博客将不再更新,后续的内容会迁移到个人独立博客。希望关注我的朋友,去那里我们继续交流讨论,再见。

2016-01-06 15:11:10

阅读数 2951

评论数 1

缓存服务器设计与实现(七)

本文讲缓存中的内容管理–-目录的删除

2016-01-05 15:42:15

阅读数 2596

评论数 1

缓存服务器设计与实现(六)

本文讲缓存中的内容管理--文件的删除。

2016-01-05 15:40:07

阅读数 3880

评论数 0

leveldb设计分析之log

在leveldb中log的意义是什么? 所有的写操作都必须先成功的append到操作日志中,然后再更新内存memtable。这样做有两个有点: 1可以将随机的写IO变成append,极大的提高写磁盘速度; 2防止在节点down机导致内存数据丢失,造成数据丢失,这对系统来说是个灾难。...

2015-09-25 10:49:41

阅读数 3378

评论数 0

leveldb设计分析之memtable

在Leveldb中,所有内存中的KV数据都存储在Memtable中,物理disk则存储在SSTable中。在系统运行过程中,如果Memtable中的数据占用内存到达指定值(Options.write_buffer_size),则Leveldb就自动将Memtable转换为Memtable,并自动生...

2015-09-23 13:54:53

阅读数 3646

评论数 0

腾讯协程库libco的原理分析

我们以example_echosvr.cpp为例子,这个例子的作用就是读取客户端的请求,然后按原样返回给客户端。在它的main函数里创建了proccnt进程,每个进程里有cnt个task。这里的proccnt和cnt都是来自运行参数。for(int i = 0; i < cnt; i++) ...

2015-09-23 10:17:43

阅读数 16513

评论数 4

关于MP4视频拖动的原理与分析(一)

本来想说说关于mp4和一些常见视频文件格式方面的历史。现在想想没啥必要,毕竟本文是在讲关于mp4点播拖动方面的技术细节。绪论,前言神马的显得有点多余。说起MP4,不得不提“Digital container format”的概念。维基百科给出解释: A container or wrapper...

2015-07-22 17:46:51

阅读数 7646

评论数 2

缓存服务器设计与实现(番外篇)

这个系列又更新了。今天谈一个问题,目前cache软件在业界的使用现状。cache系统其实最大的使用场景,还是主要集中在CDN厂商里。大概在2010年之前,各大CDN厂商基本清一色的使用squid。那时候的squid是绝对的主力。squid的作为cache领域的鼻祖,正是由于历史的久远,很多近10年...

2015-06-14 22:01:06

阅读数 3491

评论数 0

缓存服务器设计与实现(五)

上次讲到lru与缓存重建,这次主要讲一下关于过期处理的一些主要问题。在讨论这个问题之前,有个相关的问题需要大家有所了解。就是对于一个缓存如期只来说,什么东西应该缓存,什么不应该缓存。这是一个比较复杂的问题,涉及到http协议的诸多细节。这里赵永明大哥写了一篇文章,讲得很详细,虽然是以ATS为背景讲...

2014-10-10 17:59:57

阅读数 3998

评论数 2

在小公司里混

最近这段时间公司在招人,我也面试了不少应聘者,以30岁上下,工作5年左右的人居多。这个年龄段其实是中小公司的主要选择对象,这类公司一般招人都是为了项目需要或者急需熟手来干活,而很少像大公司那样,招一些有潜力,底子好,有上进新的应届学生。在市面上有能力的新人往往在校招阶段就被大公司靠着自己的招牌和有...

2014-04-05 21:44:48

阅读数 5413

评论数 6

诡异的_GNU_SOURCE宏

好久没更新博客了,突然来一篇,这...难道是干货?......请您在看正文之前允许我说几句话,。好了看下面的内容: 诡异代码之test.c: #include int main()  {      struct aioinit aa;      aa.aio_threads =...

2013-11-13 18:24:55

阅读数 4036

评论数 2

TCP协议经典rfc主题总结

Richard Stevens的书虽好,但是他所要表达的是让你知其然。对于想精通tcp的同学来说,光知其然是远远不够的,你还需要更多的时间去了解其所以然,而翻阅rfc文档就是一种最好的方式,这样你就明白tcp为何这么设计了。这里总结了一下tcp核心主题对应的rfc文档,方便自己和大家查阅。

2013-08-10 13:29:38

阅读数 6898

评论数 3

TCP协议疑难问题集锦

原文出自:http://blog.csdn.net/dog250/article/details/6612496 1.网络协议设计 ISO提出了OSI分层网络模型,这种分层模型是理论上的,TCP/IP最终实现了一个分层的协议模型,每一个层次对应一组网络协议完成一组特定的功能,该...

2013-08-10 10:58:44

阅读数 3962

评论数 1

代理服务器中的内容防拷贝技术

代理服务器,广义上包括正向反向代理,httpcache等等,他们都要处理一个问题,就是从上游取得数据让后发往下游。这块有许多细节要处理,特别是如何避免内容的多次拷贝。nginx在这方面做得很不错,我们拿它来分析下,希望能学到一些东西。

2013-08-08 22:45:48

阅读数 5838

评论数 0

关于异步,同步,阻塞与非阻塞

如果你想吃一份宫保鸡丁盖饭: 同步阻塞:你到饭馆点餐,然后在那等着,还要一边喊:好了没啊! 同步非阻塞:在饭馆点完餐,就去遛狗了。不过溜一会儿,就回饭馆喊一声:好了没啊! 异步阻塞:遛狗的时候,接到饭馆电话,说饭做好了,让您亲自去拿。 异步非阻塞:饭馆打电话说,我们知道您的位置,一会给你送过来,安...

2013-07-12 15:59:26

阅读数 6731

评论数 2

搞科研也是一条出路

以前感觉搞科研很屌很牛b,童年的梦想居然还是科学家,后来发现,现实真是一把杀猪刀,把童年的那点很萌的想法给削得一干二净。最近去了趟杭州,跟大学宿舍的一个兄弟聚了聚。人家现在在浙大读研,今年就转博了。怎么说呢,这哥们在我眼里绝对不是搞科研的料,而且他本人对科研更是一点兴趣都没有。怎么解释现在这个状况...

2013-06-25 14:57:53

阅读数 5893

评论数 15

关于ngx_trylock_accept_mutex的一些解释

关于nginx里面accept互斥锁的处理,群里讨论了很多次,很多人都提出了各种问题,比如问到:在ngx_process_events_and_timers中,为什么在释放ngx_accept_mutex之后,不把ngx_accept_mutex_held清零? if (ngx_accept_m...

2013-06-12 21:57:58

阅读数 4840

评论数 1

关于ngx_epoll_add_event的一些解释

static ngx_int_t ngx_epoll_add_event(ngx_event_t *ev, ngx_int_t event, ngx_uint_t flags) { int op; uint32_t even...

2013-06-12 21:16:17

阅读数 5673

评论数 1

一个类型转换引起的Bug

最近有个bug实在让人抓狂,仅仅是由于一个简单的类型强转导致的,这里给大家讲讲。 这是pwrite系统调用的接口说明,我们关注最后一个参数: ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);我们...

2013-03-27 17:52:22

阅读数 3827

评论数 1

nginx缓存过期管理小结

先看一个经典的配置,注意红色部分: proxy_cache_path /cache levels=1:2 keys_zone=cache_pool:512minactive=1m max_size=10g; location ~ .*\.(jpg|gif|png)$ {     proxy...

2013-03-25 22:05:09

阅读数 9767

评论数 0

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