分类目录: 软件技术

Google Spanner 全球分布式数据库

原文地址:Spanner: Google’s Globally-Distributed Database 
中文翻译版下载:Google Spanner 中文版
PPT演示文档:spanner-osdi2012.pptx

讲解视频:

| 1 分2 分3 分4 分5 分 (4.75- 12票) Loading ... Loading ... | 同时归档在:云计算/云存储, 数据库, 架构设计, 算法数据结构 | 标签: , , , |

HDFS架构和设计(PDF版)

HDFS架构和设计

| 1 分2 分3 分4 分5 分 (4.60- 15票) Loading ... Loading ... | 同时归档在:Hadoop, 云计算/云存储, 架构设计 | 标签: , , |

公钥私钥加密解密数字证书数字签名详解

决心花一些时间,将这些概念和使用的过程彻底弄清楚。最先找到的文章是:数字签名是什么?(阮一峰博客),读了一遍,又找了一些资料,终于把这些概念弄清楚了,这里整理记录一下。

首先明确几个基本概念:

1、密钥对,在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给他人的。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.75- 20票) Loading ... Loading ... | 同时归档在:移动互联, 算法数据结构 | 标签: , , , , , , , , |

快播关闭在线服务器,“在线点播”时代终结

 zhuguang

快播在昨晚发出公告,以下为快播至用户书全文:

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.50- 10票) Loading ... Loading ... | 同时归档在:奇趣见闻, 移动互联 | 标签: , |

可以事半功倍的命令行小技巧

看到一篇介绍各种强大的命令行技巧的文章(链接),感觉写得非常不错。首先是被类似PPT效果的网页风格吸引住了,用鼠标滚轮翻页非常之流畅。不禁看了下代码,只用了几行代码就实现了,惊叹作者想象力之丰富。文章里提到的history命令的各种妙用也让人叹为观止,不过感觉大多数命令记忆起来相当繁琐,也许是我用得太少,因此觉得复杂。这里我也把自己常用的几个命令,结合从上述文章中学到的做一个总结。

1、有趣的history命令字统计游戏

如下一行脚本即可统计历史上使用的命令行的次数,并排出前十名,打印到屏幕:

history | awk '{CMD[$2]++;count++;}END { for (a in CMD)\
print CMD[a] " " CMD[a]/count*100 "% " a;}'
| grep -v "./" \
| column -c3 -s " " -t | sort -nr | nl | head -n10

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.60- 10票) Loading ... Loading ... | 同时归档在:实用脚本 | 标签: , , |

Google声明没有名为“贾彦斌”的员工

谷歌官方博客官方微博今晚发表声明称,将追究冒充谷歌中国移动开发部总经理的微博ID“贾彦斌”持有人的责任。

声明全文如下:

阅读全文 »

| 1 分2 分3 分4 分5 分 (3.89- 9票) Loading ... Loading ... | 同时归档在:奇趣见闻, 移动互联 | 标签: , , |

OpenSSL HeartBleed漏洞原理漫画图解

前几天OpenSSL 的「滴血之心」漏洞造成的恐慌几乎席卷全球,国内外白帽子黑帽子疯狂刷数据刷积分,各大网站的安全部门也是遇到了从未有过的危机。虽然大家都讨论的很热烈,但对于用户们来说,只关心一件事情:我们支付宝里的钱还安全么。

除此以外,好奇的人们或许更想知道OpenSSL的程序员到底犯了什么错误,好在有xkcd这样的geek网站,用最最通俗易懂的方式,向大家展示了这个漏洞的原理和可爱之处。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.00- 9票) Loading ... Loading ... | 同时归档在:IO编程, WEB网络, 移动互联 | 标签: , , , |

深入分析Volatile的实现原理

引言

在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。

它在某些情况下比synchronized的开销更小,本文将深入分析在硬件层面上Inter处理器是如何实现Volatile的,通过深入分析能帮助我们正确的使用Volatile变量。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.33- 9票) Loading ... Loading ... | 同时归档在:Java, 多线程编程, 算法数据结构 | 标签: , , |

写Java也得了解CPU缓存

CPU,一般认为写C/C++的才需要了解,写高级语言的(Java/C#/pathon…)并不需要了解那么底层的东西。我一开始也是这么想的,但直到碰到LMAX的Disruptor,以及马丁的博文,才发现写Java的,更加不能忽视CPU。经过一段时间的阅读,希望总结一下自己的阅读后的感悟。本文主要谈谈CPU缓存对Java编程的影响,不涉及具体CPU缓存的机制和实现。

现代CPU的缓存结构一般分三层,L1,L2和L3。如下图所示:

CPU三级缓存示意图

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.14- 7票) Loading ... Loading ... | 同时归档在:Java, 多线程编程, 算法数据结构 | 标签: , |

配置OpenStack Swift支持Amazon S3 API

首先需要Keystone支持S3格式的证书扩展,EC2的扩展只是能帮助Keystone识别和创建EC2证书,也就是AK和SK。EC2的证书和S3的证书是通用的。

默认的Keystone安装后并不支持S3扩展,需要修改Keystone的PasteDeploy配置文件,在ec2_extension之后加入s3_extension中间件,首先还需要定义该中间件,具体的修改过程为:

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.55- 11票) Loading ... Loading ... | 同时归档在:Amazon S3, Swift, 云计算/云存储, 存储技术 | 标签: , , , |
返回顶部