Home  >  Article  >  Database  >  Jame’s Reading 09-10

Jame’s Reading 09-10

WBOY
WBOYOriginal
2016-06-07 16:35:421098browse

Scalability 也即 扩展性 http://t.cn/z8wbRUs Reddit 系统扩展的经验与教训,1. 尽可能的自动化,2. 没必要一开始即构建可扩展的架构,3.不要在刚开始时构建SOA的架构,4.可扩展的关键是在用户感知到瓶颈之前解决掉扩展性的问题,5. 视SSD为便宜的内存,而不是昂

  • Scalability 也即 扩展性
  • http://t.cn/z8wbRUs Reddit 系统扩展的经验与教训,1. 尽可能的自动化,2. 没必要一开始即构建可扩展的架构,3.不要在刚开始时构建SOA的架构,4.可扩展的关键是在用户感知到瓶颈之前解决掉扩展性的问题,5. 视SSD为便宜的内存,而不是昂贵的硬盘,6. 每种工具都有其对应的场景,合适的工具用在合适的地方.

    http://t.cn/z8wheDy 可扩展性的问题. 从并发连接的角度阐释扩展性的概念, 对于单个请求时间很短, 但需要大量长连接的业务, 基于进程/线程模型的系统(Apache , Oracle Dedicated模式)在处理大量请求时, 扩展性表现较差; 而基于Event驱动的系统(Nginx/Oracle MTS/MySQL)的表现就会好很多.

    http://t.cn/zTc4oZu 扩展性与性能并不是一对冤家. 现阶段, 对于扩展性的关注远远超过对于性能的关注, 有很多人觉得只要解决好扩展性即OK了, 也就是只要将关键共享资源拆分掉就可以了. Theo驳斥了这种说法, 1. 当前很多系统提升一倍性能不是难事, 2. 节约一半的服务器, 可以节约掉很多隐性成本.

    http://t.cn/z8Zefs6 2x2x2 Requirements for Database Scalability, 关于数据库扩展性的简要介绍, 2*2*2的说法比较有意思, 第一个2: 水平扩展/垂直扩展, 水平扩展通过复制与拆分实现,垂直扩展通过数据库内存化(In Memory DB)以及快速持久化(RDMA网络或者NVM来实现).

    http://t.cn/zQ0L5q1 20 Obstacles to Scalability 【By Sean Hull】实现系统扩张性(Scalability)的20个障碍,这个内容此哥们已经重复多次, 这次做了一个整合,算是比较完整,也值得参考。唯一不认同的点是,多次使用at all costs,这是一种不理智的态度,但是,却是需要慎重考虑的。

    http://t.cn/z8iuiqJ Scaling out and creating fault tolerant systems with MySQL replication , 如何通过MySQL复制实现Scale out的可容错的系统, 名称很吓人, 主要三点内容: 1. 主备拓扑结构管理, 主备自动切换(MHA), 2. 请求的负载均衡与连接池管理, 也即大部分数据库中间件做的主要事情(如TDDL)

  • 解决方案与应用案例
  • http://t.cn/zY8W7V3 可接受的响应时间,1.页面响应时间没有行业标准,2. 关于人机交互的时延,有认知科学的结论,人感知不到1/4秒以内的差距,3. 8秒钟响应的规则过于简化了,4. 用户不再接受所谓的平均响应时延,5. “4秒钟规则”或许无法描述用户用户体验,6. 期望与体验的关系决定了用户的满意度

    http://t.cn/z861NpO 性能反模式,1.在项目结束时才去修复性能问题,2.度量并修复错误的指标,3. 忽视算法的作用,4. 集中关注自己能看到的东西,而不是根本的问题,5. 软件层次太多,6.过量的线程, 7.硬件使用不均衡,8.在CPU之间做无效的数据拷贝,…

    http://t.cn/zO3hEPD Godaddy使用Cassandra作为其Session Store,1. 使用A/B集群来提升集群升级的处理,2. 协作开发ASP/ASP.net 的协议来访问,提供连接池、压缩、配置管理等特性,3. 在Cassandra支持TTL功能之前,通过设置人工的第二索引来做Expire Session的清理工作。

    http://t.cn/z8Mo36p 为什么Cassandra不需要(使用)Vector clocks By Jonathan Ellis ,看完,感觉Jonathan基本讲明白了Vector clock的问题,1. 性能问题(读,反序列化,序列化,写),2. 数据的多版本,3. 可以帮忙找到不一致,如何解决,还得用户自己来。但是,对于Cassandra为啥不需要我没看明白

    http://t.cn/zQHfmu8 NUMA (Non-Uniform Memory Access): An Overview, Numa概念的总体介绍, 1. Numa只对内存访问密集型业务有好处, 2. node local与interleave之间的差异, 3. Linux如何处理进程的Numa内存分配, CPU调度如何优化Numa相关的进程, 4. 常用的Numa相关工具,numactl/numastat/numa_maps

    http://t.cn/z8UpsOZ 对于时间序列的数据存储来讲,TokuDB要明显优于InnoDB, 无论从数据加载时间, 还是数据的压缩效率上来讲, 都有好几倍的优势.

    http://t.cn/z8w7lkU LinkedIn新近在Apache开源了其流处理平台(Stream Processing System). Apache 地址: http://t.cn/zQDVp4j

    http://t.cn/zQS7y8k oratop from MOS (帖子原文), MOS(Oracle Support)的地址: oratop – utility for near real-time monitoring of databases, RAC and Single Instance (Doc ID 1500864.1)

  • 性能优化以及其它
  • http://t.cn/zQa8Mz1 分布式一致算法与Raft, Riak的人介绍基本的分布式一致性, Data Loss的几种可能, 以及强同步情况下, 一致性与可用性的权衡, 最后介绍Raft的算法, 以及他们基于Erlang语言的实现.

    http://t.cn/z8L4VyC 在排队的时候, 为什么自己所在的队列走的更慢. 本文从人的认知偏见等心理学因素上对此进行了解释.

    http://t.cn/z8ij2nc 性能相关的书籍. 这篇文章里面收集了大量的各个领域与性能有关的书籍, 自然也包含很多我喜欢的书籍. Neil Gunther与Daniel A. Menasce写的容量规划系列的书,Connie U. Smith写的性能工程书籍, Brendan Gregg的性能分析系列,Martin L. Abbott 写的架构设计原则系列的书.

    http://t.cn/zQDqCyQ 如何通过修改SQL语句中的一行,提升100倍的查询效率。我早期进入Oracle Database这一行,也是因为类似的案例。最初写的一个比较差劲的SQL语句,第一次运行耗时13个小时,经过优化,最后运行23秒左右搞定。

    #oracle tips# http://t.cn/zQHHGIa 如何有效的kill一个session, ALTER SYSTEM DISCONNECT SESSION ‘sid,serial#’ (immediate|POST_TRANSACTION). 找个时间验证下, 由于kill session的问题,咱还背过一个大的故障呢, session kill了,process却没有干掉,导致max process报错了.

    http://t.cn/zQl4dM4 The top 5 proactive measures to minimize MySQL downtime 1. 维护经过验证的备份,2.构建冗余组件以应对单点故障,3.变更都要经过验证,并有回滚计划,4.验证复制/副本的有效性,5.做好监控与趋势分析,提及的几个监控项比较实用。

    http://t.cn/zQYU2X1 Facebook的MySQL工程师 domas mituzas 探讨Durablity的问题。总体而言,Durability是关于权衡的艺术,而在MySQL中,为了实现持久性,付出的代价是相当高昂的,3次FSync操作才能确保一个事务的持久性。而MySQL主备的可靠性设计还不够安全(Crash-Sage),5.6已经有了较大改善。

    http://t.cn/zQa8KMi The Antifragile Organization(反脆弱的组织), Netflix的Ariel Tseitlin介绍他们在Netflix的高容错系统设计, 对与Failure的态度, 如何处理Failure, 如何做设计规避Failure带来的问题. 后面是从各个可能带来Failure的维度, 从系统层面做Fault Tolerance的设计.
    反脆弱的概念因此塔勒布的新书《反脆弱》。Netflix介绍他们的Simian Army系列的捣蛋鬼(monkey)系列(Chaos Monkey,Latency Monkey…..),基本设计思路为:1. 通过冗余来设计具有容错能力的应用,2. 通过构造故障来降低不确定性

    故障Review的几个关键问题,1.哪里出故障了? 2.如何快速发现此故障?3.如何避免此故障的再次发生?4. 如何避免这一类故障的再次发生?5. 如何提升我们下次处理此类故障的效率? By Jeremy Edberg, Reliability Architect, Netflix

  • 社科类图书阅读摘要
  • 在一个没有市场的社会中,竞争也是层出不穷的,只不过竞争的形式有所不同罢了.弱肉强食是竞争,权力斗争是竞争,走后门、论资排辈,等级特权等等,都是竞争形式.道理明确:凡是多过一个人需求同一经济物品,竞争必定存在. 摘自张五常《经济解释:科学说需求》第二章结尾。

    尽管报复会带来许多伤害(经历过反目成仇或者艰难离婚的人应该明白我说的是什么),我还是要说报复的威胁–即使人们要付出巨大的代价–能够成为维护和支撑社会秩序有效的强制机制. 我并不主张”以眼还眼,以牙还牙”,但我猜测,报复的威胁总的来说是具有一定功效的. 摘自丹.艾瑞里《怪诞行为学》第5章.

    对出现在我们面前的所有假说进行最具怀疑性的审查,与此同时对新思想最大限度地保持开放心态。如果你…没有一丝怀疑,那么就无法分辨有用的思想与没有价值的思想.如果所有思想都具有同等的有效性,那么你就失去了自我,因为那样..根本没有什么思想是有效的. 摘自《误区:思维中常犯的6个错误》54页.

    1. 我们对某一事物付出的努力不仅给它带来改变, 也改变了自己对它的评价, 2. 付出越多, 产生的爱恋越深, 3. 我们对自己的作品估价过高, 这一偏见深入骨髓, 误以为别人也和我们的看法相同, 4. 如果付出巨大的努力仍然没有获得成功, 我们就不会感到过多依恋. 摘自丹.艾瑞里《怪诞行为学》

    如果你在心仪的人追你的道路上设置一些障碍让他们追得更辛苦,他们一定更加珍惜你.从另一方面说,如果你把他逼到绝境还一个劲儿地拒绝他们, 那你就别指望说”我们直做朋友”. 摘自 丹.艾瑞里 《怪诞行为学》.

    努力提高”中国制造“的技术含量,这是目前我们公共政策的主要方向。不严厉压缩权力寻租在租值中的比重,我认为是不可能实现这一转型的。在这一意义上,政治体制改革远比经济体制改革更紧迫。或者说,如果不改变政治运作的方式,任何显著有效的经济体制改革已经不再可能了。丁丁《行为经济学讲义》97页

    “哈耶克说:一个伟大社会的制度特征,就在于他鼓励一切个体在一切可能的方向上探索,因为我们不知道未来可能的降临的灾难中,哪一个方向的探索可以拯救我们全体;拯救我们的英雄,由于大自然和我们生存环境的不确定性,必须是匿名的--于是只能鼓励一切方向的探索。“-汪丁丁《行为经济学讲义》93页

    如果你有生活常识,那么你学习理论的时候就会不断回到你的常识,你会发现问题-要么是理论自身的问题,要么是常识的表达问题。生命体验是真实的,生命之树常青。所以,知识永远是知识过程,不是静止的一堆概念,知识过程是与你的人生体验纠缠在一起的,体验的丰富和深刻,使你的知识变得丰富和深刻。

    柏格森(Henri Bergson)认为, 概念就是用来涵盖生命体验的, 如果你使用一个概念而毫无生命体验, 这概念对你而言就是苍白的, 它毫无意义, 你不曾为它的任何部分感动过. 摘自 汪丁丁 《行为经济学讲义-演化论的视角》

    社会发展依赖于个体的创造性,因为创造是个体的事情. 可以个体创造精神需要社会的宽容,宽容又是整体的性质, 没有宽容, 个体自由也就消失了. 所以, 自由是整体的, 创造是个体的. 摘自: 汪丁丁 《行为经济学讲义》 第102页。

    感激与承情虽然都是人因接受了某种帮助而产生的“情感”(emotions),但性质并不相同。一个人接受帮助或赠与后,感觉到承情是一种负债的感觉,帮助者或赠与者也希望他有这样一种感觉,会不断提醒他,一再要求他应该“感恩”或“知恩图报”,否则就是“不知感激”、“没良心”或者“忘本”。By 徐贲

    http://t.cn/z8iFq1R 极权主义制造恐惧技术的最大特点是利用不确定性,只有这种不确定性才能造成恐惧效应的扩大。同时,也只有不确定性才能形成你内心的自我约束和自我审查。而不确定性起作用的条件,就是权力的总体性和任意性。任意性才能造成不确定性,而总体性才能扩大任意性的空间。

    Related posts:

    1. Jame’s Reading 10-14
    2. Jame’s Reading 07-25
    3. Jame’s Reading 06-28
    Statement:
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
    Previous article:SSDB 支持位(BIT)操作Next article:MongoDB工具汇总