从《Finding a needle in Haystack: Facebook’s photo storage》大致对比着翻译看了几遍,有些理解和想法,便记录下来。 Haystack和TFS都是面向对象的分布式存储系统,最主要的需求都是为了解决PB级别的图片存储问题,文中也提到了一些设计目标,但设计目标是问题驱动的,先看facebook前期存储模型: 它们存在的问题...

当前文章接着Bash编程陷阱一写下来。 24. for arg in $* bash使用$*或者$@来承担脚本的所有入参,但用for遍历的时候需要注意 for arg in "$@" # 或者更简单的写法 for arg 这里的$@需要添加上"",此处的"$@"相当于"$1","$2","$3",而非"$1 $2 $3" 加引号的目的自然是预防空格,如果$1存在空格,那么就多出一个参数 25. f...

Bash编程陷阱:bash-pitfalls里面介绍了43条shell陷阱,都是一些很常见的应用场景,新手和老手都有可能犯的错误,为了加深记忆,自己就大致记录下来,英文文章用wiki编辑,条目随时可能增加,建议直接看英文。 如下的内容不完全翻译原文,穿插了一些自己的修改。 1. for i in $(ls *.mp3) bash编程中最常见的错误之一就...