编程随想的博客
显示标签为“
编程.架构
”的博文。
显示所有博文
显示标签为“
编程.架构
”的博文。
显示所有博文
2017年9月21日
聊聊分布式散列表(DHT)的原理——以 Kademlia(Kad) 和 Chord 为例
›
★引子——为啥要聊这个话题? 这是一篇比较深入地谈技术的博文,而且还牵涉到一点算法(俺很久没有写这种类型的博文啦)。 今天发这篇,主要是因为如下几点: 1 在“对抗 GFW、对抗政府审查”的过程中,【彻底无中心】的分布式系统是非常有用滴! (关于这...
404 条评论:
2009年4月16日
架构设计:生产者/消费者模式[4]:双缓冲区
›
“双缓冲区”是一个应用很广的手法。该手法用得最多的地方想必是屏幕绘制相关的领域(主要是为了减少屏幕闪烁)。另外,在设备驱动和工控方面,双缓冲也经常被使用。不过今天要聊的,并不是针对上述的某个具体领域,而是侧重于并发方面的同步/互斥开销。另外提醒一下,双缓冲方式和前面提到的队列...
9 条评论:
2009年4月1日
架构设计:生产者/消费者模式[3]:环形缓冲区
›
前一个帖子 提及了队列缓冲区可能存在的性能问题及解决方法:环形缓冲区。今天就专门来描述一下这个话题。 为了防止有人给咱扣上“过度设计”的大帽子,事先声明一下:只有当存储空间的分配/释放非常【频繁】并且确实产生了【明显】的影响,你才应该考虑环形缓冲区的使用。否则的话,还...
9 条评论:
2009年3月29日
架构设计:生产者/消费者模式[2]:队列缓冲区
›
经过前面两个帖子的铺垫,今天终于开始聊一些具体的编程技术了。由于不同的缓冲区类型、不同的并发场景对于具体的技术实现有较大的影响。为了深入浅出、便于大伙儿理解,咱们先来介绍最传统、最常见的方式。也就是单个生产者对应单个消费者,当中用【队列】(FIFO)作缓冲。
10 条评论:
2009年3月27日
架构设计:生产者/消费者模式[1]:如何确定数据单元?
›
既然 前一个帖子 已经搞过扫盲了,那接下来应该开始聊一些具体的编程技术问题了。不过在进入具体的技术细节之前,咱们先要搞明白一个问题:如何确定数据单元?只有把数据单元分析清楚,后面的技术设计才好搞。
5 条评论:
2009年3月25日
架构设计:生产者/消费者模式[0]:概述
›
今天打算来介绍一下“生产者/消费者模式”,这玩意儿在很多开发领域都能派上用场。鉴于该模式很重要且相关内容比较丰富,俺打算分几个帖子逐一介绍。今天先来扫盲一把。如果你对这个模式已经比较了解,请跳过本帖子,直接看 下一个帖子(关于如何确定数据单元) 。
18 条评论:
2009年2月22日
架构设计:进程还是线程?是一个问题!
›
就像莎士比亚的“To be, or not to be, that is the question”始终困扰着哈姆雷特,对于“进程还是线程?”这个问题,也经常困扰着那些进行软件架构设计的家伙。所以今天打算聊一下我对这个问题的体会。假如你还搞不清楚线程和进程的区别,请先找本操作...
14 条评论:
›
主页
查看网络版本