最新 | 最热门 | 最高评价

+0  Linus:为何对象引用计数必须是原子的

Tag: 程序设计 | 编程语言 | Atomic | Concurrency | Linus Torvalds | lock-free | Parallelism
Leo 发于 2014年12月31日 09:59 | 点击: 3457 | 展开摘要
(感谢网友 @我的上铺叫路遥 投稿)

Linus大神又在rant了!这次的吐槽对象是时下很火热的并行技术(parellism),并直截了当地表示并行计算是浪费所有人时间(“The whole “let’s parallelize” thing is a huge waste of everybody’s time.”)。大致意思是说乱序性能快、提高缓存容量、降功耗。当然笔者不打算正面讨论并行的是是非非(

查看全文: http://www.udpwork.com/item/13700.html

+1  一种高效无锁内存队列的实现

Tag: 搜索引擎 | disruptor | lock-free | non-blocking
悟时 发于 2012年10月11日 09:59 | 点击: 3856 | 展开摘要
Disruptor是LMAX公司开源的一个高效的内存无锁队列。这两天看了一下相关的设计文档和博客,下面尝试进行一下总结。

第一部分。引子

谈到并发程序设计,有几个概念是避免不了的。

1.锁:锁是用来做并发最简单的方式,当然其代价也是最高的。内核态的锁的时候需要操作系统进行一次上下文切换,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和数据都将失效,对性能有很大的损失。用户态的锁虽然避免了这些问题,但是其实它们只是在没有真实的竞争时才有效。下面

查看全文: http://www.udpwork.com/item/8226.html

+2  多版本并发控制(MVCC)在分布式系统中的应用

Tag: 程序设计 | 系统架构 | cas | Design | lock-free | mvcc | Performance
Todd 发于 2012年03月13日 08:36 | 点击: 3622 | 展开摘要
【感谢 Todd投递本文 – 微博帐号:weidagang 】

问题

最近项目中遇到了一个分布式系统的并发控制问题。该问题可以抽象为:某分布式系统由一个数据中心D和若干业务处理中心L1,L2 … Ln组成;D本质上是一个key-value存储,它对外提供基于HTTP协议的CRUD操作接口。L的业务逻辑可以抽象为下面3个步骤:

read: 根据keySet {k1, … kn}从D获取keyValueSet {k1:v1, … kn:v

查看全文: http://www.udpwork.com/item/6980.html
|<<<1>>>| 一共1页, 3条记录