欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

James Reading 12-07

程序员文章站 2022-05-05 22:18:56
...

有一个多月没有整理阅读的内容了, 最近一段时间在阅读几本书,《Systems-Performance-Enterprise-and-the-Cloud》 By Gregg Brendan,《The Art of Computer System Performance》,《NoSQL Distilled》 都很不错, 不过都没看完, 就不在这里多说了。 哈哈。

有一个多月没有整理阅读的内容了, 最近一段时间在阅读几本书,《Systems-Performance-Enterprise-and-the-Cloud》 By Gregg Brendan,《The Art of Computer System Performance》,《NoSQL Distilled》 都很不错, 不过都没看完, 就不在这里多说了。 哈哈。

下面是10-14到今天12-07为止阅读过, 并认为值得了解的内容。

  • 运维与监控
  • http://t.cn/zR5ADrP 预警是关于“Unknown unknown”,在文中,Baron Schwartz介绍了监控系统的几个基本原则:1. 从业务角度去监控,每秒钟处理多少业务量,处理的速度如何,2. 度量并分析你关心的指标,3. 永远不要针对无法修复的问题做告警,比如MySQL的备库延迟,比如因为备份而引起的负载增加。

    http://t.cn/zRtymS0 构建有效的告警系统,1. 针对哪些指标进行监控(超载监控,频次监控,时间窗口统计监控),2.如何定义正常状态(Normal behavior ),3.如何定义非正常状态(Abnormal or anomalies )。

    http://t.cn/zRtUpuy 性能与可运维性模式,这篇文章是这本书的深度书评,从这篇书评看,本书几乎涉及到我接触/了解到的可运维性的大部分内容,对于性能相关内容,介绍比较粗浅。

    http://t.cn/zR6FCfp “Monitor Some of the Things”, http://t.cn/zR6FCfN “What should I Monitor”,Baron Schwartz最近做的两个关于如何监控/监控什么/如何Alert/如何发现Anomaly/如何做容量规划/如何做基本的性能诊断.

    http://t.cn/zR6HmCy Chaos Kong, Netflix的地区级容灾工具, 文章要点: 1. Chaos Monkey负责单主机故障容灾,Chaos Gorilla负责Availability Zone的容灾,Chaos Kong负责地区级故障容灾, 2. 利用Amazon的预留主机策略来实施地区级容灾,3. 自己实现CDN(21个机房),4.开发负责到底,5. 一切都保留3份冗余

    http://t.cn/zRjiPwZ netflix的自动容量控制平台-scryer, 基于历史的负载特征, 做容量与资源的拟合, 再基于此拟合自动的通过AWS的工具上下线机器, 从而更加有效的使用机器资源, 降低成本. 当然, 并不是所有负载都是基于固定模式(pattern)的, 此系统也接受人工指定负载特征,来应对节假日模式.

    http://t.cn/zRtU6xQ Netflix的Hystrix高容错系统的介绍。重点介绍了他们的监控系统,以及参造《Release IT!》一书中介绍的几种提高系统可靠性的Stability Patterns,如Bulkheads,Circuit Breaker,Threadpool与Semophore来控制并发访问,使用Failback、Fast Fail模式来控制故障蔓延。

    http://t.cn/zR6s4f3 “How to Run a Post-Mortem With Humans”, 如何实现no-shame的故障事后分析, 1. 从心理学的角度分析人的认知, 人通常都会因故障从自身触发而感到Shame, 2. 默认情况下, 我们都倾向于将故障定位为人的问题, 是人不够仔细不够小心, 而这对于后续如何避免故障作用不大, 3. 更好的方式是, 假设人会犯此类错误并从机制上避免

  • 性能优化
  • http://t.cn/zRyirMZ iconfinder如何优化他们的页面处理引擎(Render),将页面的处理时间从开始的91ms->29ms->20ms, 而丝毫不涉及到传统上大家认为的,系统慢是源自数据库慢. 哈哈. 基本的观点是: 需要通过Profiling的方法找到系统慢的地方,并作针对性的优化,而不只是找个替罪羊.

    http://t.cn/zHuwByv Brendan Gregg的主页, 他的几乎所有的演讲ppt, 大部分比较好的文章,在此都有汇集; 另, 看了下他推荐的阅读列表, 大部分是关于性能分析,性能优化, 容量规划与分析的书籍, 值得参考下.

    http://t.cn/zR6Q4RF Brendan Gregg的新书Systems-Performance-Enterprise-and-the-Cloud已经上架,可以购买了(价格较高,谨慎动手), 主要内容: 1. 优化的方法论(术语/概念/模型/方法与技术), 2. 动态追踪技术与工具, 包含Dtrace/Systemtap/Perf, 3. 系统各个组件的优化技术, 4. 压测,如何避免常见误区

    http://t.cn/8khwx3h http://t.cn/8khwx3P 如何利用HyperLogLog算法在Oracle中(增量的)计算表上的distinct值, HyperLogLog是一种基于Hash桶计算近似Distinct值的算法, 计算的精度基本在+-2%的范围, 优势有三: 1. 内存耗费非常小, 2. 计算速度快, 3. 可以增量计算. 这两篇文章是介绍性的, 不过很清晰

    http://t.cn/SxMn6K 深入探讨Java语言的各种对象(Collection)/类型在运行时的内存消耗, 各种Collection对象的内存消耗对比, 如何更好的管理对象的生命周期(Life Cycle), 如何有效的利用Java 的Heap空间, 同时又不降低处理的性能.

    http://t.cn/8kLSAdm 不同Redo Size在Exadata SSD上的效果, Redo Size越大, log write的写入时延波动性越大, 从而越不可用. 【从我个人的经验看,1. 尽可能不要使用SSD作为Redo 写,2.如果使用,a. 专用设备,b. 足够的预留空间(高OP), 3. 使用成熟厂家的产品(如Fusion-IO,Intel), GC算法至关重要】

    http://t.cn/8ktRmee 不错的关于SSD以及IO相关的小提示. RethinkDB出品.

    http://t.cn/8kfhwWq 针对EMC XtremIO的文章http://t.cn/8kcP1i5的回击. 从我的角度理解, EMC确实没有说清楚他的优势, 或者说, 在GC这件事情上, 他没有做什么事情, 而GC对于每一个Flash厂商来讲都应该是重要的事情.

  • 架构,评论与其它
  • http://t.cn/zRtV8xe Innotop工具的介绍, 简单的登录配置, 如何配置MySQL集群,通过innotop检测一个集群的状态, 比如一个master多个Slave的情况, 如何通过Innotop来管理集群的多台机器,在权限允许的情况下,可以通过它对多台机器发出命令. 功能还是很强大的.

    http://t.cn/zR6QhLX Todd Hoff对sosp 2013论文的回顾, “关于同步,所有你需要知道的内容”, 要点: 1. 锁的利用需要基于硬件平台, 以及对应的工作负载特征进行选择,2. 同步操作的可扩展性主要是硬件的一个属性, 3. 同步操作在单CPU上扩展性最好,4.9种不同的锁算法各有其合适的场景, 也即合适才是最好的.

    http://highscalability.com/blog/2013/12/4/how-can-batching-requests-actually-reduce-latency.html 批处理为何可以,以及在什么样的情况下, 可以降低时延.

    http://t.cn/8kLY6dz 为什么Oracle不会杀掉MySQL,1. MySQL并不是Oracle的直接竞争产品,Oracle的客户主要为运行企业级软件的企业客户,而不是互联网客户. 2. Oracle是为了硬件而购买Sun,也即目标是Exa系列的产品,3. Larry的目标是钱,并不反对开源,4.MySQL的企业支持业务发展也不错,5. M有替代的竞争产品

    http://t.cn/8kA9brd 硬盘的生命周期到底是怎么样的? 一块普通的磁盘寿命如何?

    http://t.cn/zjjwPQ1 为什么MongoDB在Etsy使用的并不好,MongoDB的成名/成功主要得益于两大功能:Schema-Free,Auto-Sharding, 当一个公司已经有相对成熟的MySQL运维体系的时候, 当公司有足够的技术能力做好去范式化/Sharding Key的选择/自动Sharding扩展这些功能时, 引入一个新的数据库好处就很有限了

    http://t.cn/zRQV5qv Robin Harris (StorageMojo)谈论传统大型存储的情况, 1. 已经不适合时代, 2. 会逐渐被Flash Storage取代. 仍然健在的原因,1. 【Availability】更好的可用性,2. 更友好的使用。Flash存储的工作方向:1. 更好的压缩,2. 更好的实时去重,有效提供更好的Capacity/$。

    http://t.cn/zRIw0pV (请自备*), Twillo的高可用架构变迁, 谈及Twillo如何根据业务的需求与特征, 并从故障的角度分析高可用的天敌: 数据持久化与变更管控, 总结了几条规则: 1. 尽可能无状态,2.分离有状态与无状态的组件,3.使用Cache与Sharding,4.分解数据的生命周期,降低数据管理复杂度.

    http://t.cn/zRJMybK MySQL上的几种高可用方案, 各种对比, 各种介绍, 自己体会吧.

  • 社会心理
  • 人力资本与非人力资本在产权性质上的差别很大,在*社会中,人力资本的所有权仅限于他本人. — 罗森(芝加哥大学经济系,劳动力经济学的*物).

    果树会结果,农地有收成,结果与收成都是收入. 然而, 这收成可不是在果熟或稻熟时才得到的. 果树或农作物每天都在变, 不停地变, 而每一小变都是收入(或负收入), 所以, 收入是一连串的事件了. –摘自周其仁《收入是一连串事件》之张五常序.

    The first principle is that you must not fool yourself – and you are the easiest person to fool — By Richard Feynman.

    http://t.cn/zR6zfjL 控制人们的头脑是控制整个国家的关键,语言文字就是制度的基石。 ——〔波兰〕切斯瓦夫·米沃什

    http://t.cn/8kLAGW1 权利是得到社会认可的、大部分人主动维护的选择的*。任何在现实中能够行使的权利,都离不开他人的背书和支持。换言之,我们可以倡议某种权利,并声称它是一种 “自然权利” 或 “天赋权利”,但除非它得到普遍的尊重和维护,它就只是应然而非实然的关于权利的主张而已(薛兆丰)

    Related posts:

    1. James’ Reading 05-11
    James Reading 12-07