HelloDog是一个基于GitHub
和Hexo
的静态Blog,希望用简单而清晰的写作方式Markdown
分享自己的心得体会。
https://wsgzao.github.io/about/
领英.LinkedIn - Keep in touch and find opportunities
HelloDog
Home Page: https://wsgzao.github.io/
HelloDog是一个基于GitHub
和Hexo
的静态Blog,希望用简单而清晰的写作方式Markdown
分享自己的心得体会。
https://wsgzao.github.io/about/
领英.LinkedIn - Keep in touch and find opportunities
你好,在为设想《基于 git 的去中心化内容收发平台》向各位博主征求意见建议、搜集公开的 git 仓库。
有幸从 独立博客列表 发现此仓库,添加到了 此索引 ,打算为设想建设原型时作为内容源之一。
欢迎任何建议意见。
JBOD 描述给人感觉是不推荐的用法,其实在分布式存储中往往推荐用 JBOD,因为软件层面考虑了镜像、校验、条带化的事情。
“相同的配置下,通常 RAID01 比 RAID10 具有更好的容错能力。” 这句话说反了,RAID 0 坏一块盘就整个RAID 0阵列坏了,所以 RAID01 坏一块盘相当于一半存储失效,风险大并且性能差。RAID 10 坏一块盘,只是某个 strip 少了一个副本,影响的面很小,性能基本没影响。这就是为什么大家都用 RAID 10 而不用 RAID 01,mdadm 这个工具直接提供 raid10 但没有直接提供 raid01 可以印证这点,http://linux.die.net/man/8/mdadm,注意 Linux 实现的 raid 10 是一体的,而且 raid 1, raid 10 的 copies 可以大于 2。
现在磁盘单片容量很大,RAID 5 坏了一块盘时 rebuild 遇到第二个坏盘的风险很高,已经是业界不推荐的 raid level 了,RAID 50 是一样的风险,也不推荐使用。RAID 60 又慢又复杂又浪费磁盘,也没人用。
参数调优那段,系统盘没必要 raid 1,单盘即可,系统盘不应该大量写入,其需要用的数据基本被缓存到内存里了,所以不怎么损磁盘,而且哪怕坏了,重做系统很快(别告诉我没用 pxe boot、puppet、chef 之类的玩意,需要手动安装……),数据盘用 RAID 0 (如果求最大容量最大速度不求可靠性完全拼人品或者靠分布式存储软件层面做冗余),RAID 6 (预算不足,不求高性能,求最保险,最大容量--空间利用率 (n-2)/n, n 越多越划算),RAID 10(预算充足,求高性能高保险,不求最大容量——空间利用率 <= 50%)。
冗余的两种手段:镜像和校验,一般热数据由于比较小又追求高性能高可靠以及快速恢复时间,会用镜像冗余,而冷数据量特别大追求很高的磁盘利用率以及可靠性,不求性能和快速恢复,会用校验冗余,比如最近突然被重新火起来的 erasure code。
“使用机械盘的话,尽可能选择高转速的,例如选用15KRPM,而不是7.2KRPM的盘,不差几个钱的;” 15K rpm 以下的都是消费级硬盘,更别提 7.2K rpm 的了……
SSD 评测数据那个,盘数不一样比个啥啊……比如测试出来顺序读 RAID 6 比 RAID 5 快,这是误导啊,两个的数据和校验都是分布的,所以你在拿六块盘的叠加速度比五块盘的叠加速度,不公平啊,本来应该同等配置下 RAID 5 比 RAID 6 快,这下被你说的 RAID 5 一钱不值了,哈哈
同样的,RAID 10 和 RAID 50 的比较也不公平,不过无所谓了,总之,别沾 RAID 5 了,除非你单盘在 200 GB 以下——这年头有几个人用如此小的硬盘……
还有测试没有提 RAID chunk size 呢……
最后的总结坑爹啊,还推荐人用 RAID 50 而非 RAID 10……
拜读了“静态路由和策略路由的配置实践”,有点想法和博主讨论下。
在“策略路由配置”一节中
ip route flush table net_192
ip route add default via 172.31.192.254 dev ens4f0 src 172.31.192.201 table net_192
ip rule add from 172.31.192.201 table net_192
初看时有疑问。
ip route add default via 172.31.192.254 dev ens4f0 src 172.31.192.201 table net_192
后为何还要
ip rule add from 172.31.192.201 table net_192 ?
搜索了ip rule 发现这篇文章http://m.oschina.net/blog/156607
有些理解了,但是觉得博主文章中命令使用的顺序调整下更容易理解。
两条命令调整先后之后,首先表示从源地址172.31.192.201 使用路由表 net_192,下一条命令描述具体的路由表内容,是一个逐渐细化的过程。而博主的文章则是先描述了细节,然后对细节打包,问题是,在上一条中已经描述了这个包,为何还要复述呢?我未实验过具体操作,不知道在命令执行上可行与否,但是逻辑上看起来有点点奇怪。看过http://m.oschina.net/blog/156607之后才明白ip rule add from 172.31.192.201 table net_192 相当于打包路由表,否则这句有些难以理解,并非语法上的,而是语句前后的逻辑。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.