新書推薦:
《
锂电储能产品设计及案例详解
》
售價:HK$
110.9
《
首辅养成手册(全三册)(张晚意、任敏主演古装剧《锦绣安宁》原著小说)
》
售價:HK$
121.0
《
清洁
》
售價:HK$
65.0
《
组队:超级个体时代的协作方式
》
售價:HK$
77.3
《
第十三位陪审员
》
售價:HK$
53.8
《
微观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:HK$
155.7
《
Python贝叶斯深度学习
》
售價:HK$
89.4
《
启微·狂骉年代:西洋赛马在中国
》
售價:HK$
78.4
|
編輯推薦: |
1、《程序员2014精华本》紧紧围绕大数据、电商架构、智能硬件、移动开发、团队管理等热门话题,进行了全面而深入的解读。
2、《程序员2014精华本》由程序员编辑部精心打造,对《程序员》杂志2014年的内容再次进行了优化整合,内容更加聚焦,是一份浓缩的饕餮盛宴,值得阅读。
|
內容簡介: |
《程序员 2014 精华本》紧紧围绕大数据、电商架构、智能硬件、移动开发、团队管理等热门话题,进行了全面而深入的解读。于原有栏目和本年度热点,《程序员 2014 精华本》的结构分为以下七个篇章。
专题篇:综合了 2014 年 1-12 月封面报道,内容包括双 11 背后的技术、大数据实时处理、编程语言、我们是 MAKER、云计算理想与现实、移动开发工具、打造高效团队、安全新知、微信开发、移动 5 年、电商峰值系统架构设计、2014 TOP50 最具价值 CTO 等 12 个主题。
对话篇:由程序员记者直接采访大师级人物和知名技术人,在思想、实践等方面进行深刻碰撞。
管理篇:主要是来自软件方法、个人成长、一分钟先生等栏目的真知灼见。
产品篇:主要分享产品设计方面的方法、理念和实践。
移动篇:汇聚移动开发领域的观点、工具和技术。
云计算篇:云计算和大数据领域的热门技术和实践,特别是 2014 年大红大紫的 Docker 和 Spark。
技术篇:包括语言与工具、技术实践等方面内容。
|
關於作者: |
《程序员》是中国影响力最大的开发者专业期刊,创办于2000年10月,以产业化、专业化、人文化、个性化的独特定位来关注程序员专业群体,同CSDN网站形成良好的资源互补。其读者群包括开发者、项目经理、技术总监CTO&CIO、IT专业人士、编程爱好者等。《程序员》创刊以来,以其高质量的内容受到广大读者的好评。第一期至今,每期读者调查满意度都超过90%。
|
目錄:
|
双11背后的技术
网购狂欢节背后的技术阅兵
双11的前端实践
天猫浏览型应用的CDN静态化架构演变
个性化技术在双11的应用
聚石塔:电子商务云平台2013年双11历程
支付宝的架构变迁
中间件技术的双11实践
软负载:分布式系统的引路人
分布式服务框架:分布式服务的组织者
消息中间件:分布式消息的广播员
EagleEye:分布式调用的跟踪者
数据层:分布式数据存储的桥梁
应用服务器:统运行的托管员
稳定性平台:系统稳定运行的保障者
双11数据库技术
大规模离线计算集群故障管理实践
千万QPS能力的高性能DNS防护系统
阿里的SDN实践
阿里整机架服务器解决方案
大数据实时处理
实时和交互:技术与现实的纠缠
大数据时代之实时数据传输
HBase在内容推荐引擎系统中的应用
实时处理之流式计算平台的实践
Storm在腾讯的应用
京 东基于Samza的流式计算实践
Spark Streaming:大规模流式数据处理的新贵
Presto实现解析
基于Impala构建实时大数据查询系统实践
百度实时计算系统
百分点实时计算实践:架构和算法
编程语言
新系统语言Rust—Rust项目技术负责人Brian Anderson专访
Rust语言:安全地并发
让高性能科学计算为人人所用—科学计算语言Julia发明团队专访
Julia语言初探
全栈语言的力量—Red语言设计者Nenad Rakocevic专访
Red语言:向编程复杂性反击
Go语言技巧
Node.js背后的V8引擎优化技术
向小众学习
浅谈Common Lisp的宏编程
中间语言和虚拟机漫谈
未来工具与未来语言—JetBrains CEO专访
我们是MAKER
理解创客
我们正经历一场真正的革命—3D Robotics CEO、美国《连线》杂志前总编Chris Anderson专访
想改变世界,先改变自己—知名 Hacker、发明家Mitch Altman专访
创客天下《Make》及Maker Faire创办人、—O'Reilly Media创始人Dale Dougherty 专访
别怀疑,每个人都是创客—美国16岁创客Joey Hudy专访
开发板,开源和创客
充满乐趣的创客之路
高中生创客的自我养成
机器人领域创业那五年—RoboPeak创始人陈士凯专访
云计算,理想与现实
我所经历的“余额宝”的那些故事
电信行业云计算实施经验谈—浙江电信业务云资源池核心技术解析
广电行业云基础平台构建实践—细解北京网络广播电视台云基础支撑平台项目
港华燃气核心业务云端之路
轨道交通行业的企业云计算—广州地铁的企业云平台构建
移动开发工具
次时代交互原型神器Origami档案
Facebook POP,迈向大师操作之路
New Relic漫谈—Mobile APM 给我们带来什么?
那些好用的iOS开发工具
这些年用的iOS UI自动化测试工具
打造高效团队
打造高效开发团队
精益化的团队高效协作
小站会,大智慧
自组织团队建设的“催化剂”从组织到团队
知识管理应该围绕学习展开
高效能技术团队的协同工具箱
安全新知
普通开发者的网络安全必读
挑战与机遇:新型网络中的安全困局
构建更加安全的智能移动平台
移动支付安全的挑战与对策
Android安全研究经验谈
解密Android短信木马为何屡杀不尽
微信开发
微信生态的渗透与价值
以招行为例,微信公众账号开发高级篇
妆媒体微信公众号背后的酸甜苦辣
微气象,大民生
高性能微信公众平台开发
微信支付开发关键点技术解析
如何使用微信设计二次认证
移动5年
大话移动5年—移动互联网发展历程与回顾
从SDK回顾iOS系统发展
移动5年,Android生态系统的演进
移动安全这五年
HTML5回首,在你的时代到来前
盘点移动互联网入口争战
2010—2014:App Store中那些遗失的游戏现象
移动互联网:五年洗礼,造就产业新变局—《唱吧》CEO陈华专访
扁平化和参与感—小米联合创始人、副总裁黎万强专访
从TalkBox看IM即时通信工具的演变—TalkBox团队被微信颠覆后的创业思考
移动五年,创业者眼中的变迁
电商峰值系统架构设计
快稳炫:电商峰值系统架构三字诀
传统企业电商峰值系统应对实践
当 当网系统分级与海量信息动态发布实践
京 东峰值系统设计
“米粉节”背后的故事—小米网抢购系统开发实践
海尔电商峰值系统架构设计最佳实践
唯品会峰值系统架构演变
1号店电商峰值与流式计算
如何在双11中创造99.99%的可用性—蘑菇街在大型促销活动中的稳定性实践
履单流程的弹性架构—麦包包峰值架构实践
2014 TOP50最具价值CTO
从呼叫中心到移动互联网的演进—携程高级技术副总裁叶亚明专访
要学会面对黎明前的黑暗乐视网CTO杨永强专访
能做存储的超级计算机—XtremIO CTO任宇翔和以色列团队的创业故事
技术女神的自我奋斗—MediaV CTO胡宁专访
做个不一样的“分享”平台—途家网联合创始人兼CTO Melissa Yang(杨孟彤)专访
以软件革新硬件体验—极路由CTO康晓宁专访
开发+技术驱动—途牛旅游网CTO汤峥嵘专访
一位DBA老兵心中的国产数据库之梦—南大通用高级副总裁兼CTO武新专访
建立技术体系,保障公司业务—赶集网CTO罗剑专访
对话篇
C++之父Bjarne Stroustrup访谈录
C++与编程人生—《C++ Primer》作者Stanley B.Lippman专访
我的目标永远是让人开怀—Perl之父Larry Wall访谈录
与时钟的对抗—访图灵奖得主Ivan Sutherland
2013年图灵奖得主Leslie Lamport
反馈即一切—实时计算系统Storm创始人Nathan Marz访谈录
Andrew Ng谈Deep Learning
永远追求下一个Big Thing—LSI院士兼首席架构师Robert Ober专访
管理篇
软件方法
探索式测试解密—无探索,不测试!
探索过程改进最佳实践
Competence:技术粗放型向管理精细型的转变
刀锋管理体系—创业公司流程改进纪实
个人成长
给技术人上的管理课:控制和计划
给技术人上的管理课:平衡和集中
给技术人上的管理课:激励与授权
软件测试人员的基本修养
向上管理:管理自己的老板
创业团队的招聘与留人
做一个“高大上”的架构师—蔡氏架构设计方法论之初体验
一分钟先生
小技术团队管理工具大比拼
技术人员如何参与产品设计讨论?
技术团队如何留住人才
技术走向管理要实现哪些转变
产品篇
火锅与煎饼
引导的设计
躺枪的互联网思维
不靠谱的“用户体验”
用户的鞋子
对不起
产品文化
设计流程
辩无胜
高级山寨
为了体验
低能的“智能”
聊聊阿里的内部创新机制—赛马
70后大叔的90后产品炼成之路—田行智谈《碰碰》和他的创业故事
互联网思维与硬件创新—印美图在软硬整合产品中的实践
ANTVT KIT,不做中国的Oculus
移动篇
游戏
从顶级游戏开发者倒下看产品型行业的危机感
刷任务:在无聊与微奖励中摇摆
不良游戏体验对玩家的负面限制
以开发者角度看其游戏体验心态
手游中Boss异能和巨型形态的设定
免费体验增值模式改变游戏的五种形态
消费引导与游戏内容供给不足的悖论
从恐怖与惊悚元素谈玩家的情感代入
开发
iOS应用安全开发你不知道的那些事
解析Swift函数式编程
Material Design:过去、现在和未来
Gradle:更智能的Android构建系统
迈步进入跨平台开发时代
云计算篇
Docker
Docker的生态系统和未来
基于Docker的Auto Scaling实践
基于Docker的通用计算平台实践
网易Docker部署运维实践
Spark
Spark与MLlib:当机器学习遇见分布式系统
SparkMLlib:矩阵参数的模式
使用Spark+MLlib构建用户标签系统
快刀初试:Spark GraphX在淘 宝的实践
大数据
Kafka在唯品会的应用实践
大众点评的数据架构之道
腾讯CKV海量分布式存储系统—日访问过万亿次背后的技术挑战
腾讯CKV海量分布式存储运营实践
百度实时计算应用实践
基于Storm的美团实时计算应用实践
服务化Cache系统—小米网Redis实践
虾米在个性化音乐推荐领域的实践
大规模微博用户兴趣图谱挖掘
Summingbird Twitter实时消息处理基础平台
技术篇
语言与工具
逆世界:让C++走进Python
你应该更新的Java知识
PostScript语言里的珠玑
node—webkit:HTML5桌面应用运行环境
Ruby并发框架纵横谈
JVM中的全异步框架Vert.x
技术实践
机器人与关键技术解析
图书评论排序对于用户购买的影响
门户级UGC系统的技术进化路线—新浪新闻评论系统的架构演进和经验总结
|
內容試閱:
|
网购狂欢节背后的技术阅兵
文 庄卓然
从光棍节到网购狂欢节
2013 年是双 11 的第五个年头,从 2009 年的“光棍节”到现在的“网购狂欢节”,单单是名字上的变化,大家就能从中感受到业务规模发生的转变。
2013 年双 11,天猫和淘宝单日成交额达到 350.19 亿元,网站 PV 过百亿,成就了 14 个销售过亿的商家。
其中,有 76% 的商家处理工作是在聚石塔云计算平台上完成的,并且无一漏单、无一故障。
支付宝实现成功支付 1.88 亿笔交易,再次刷新了 2012 年同期 1.0580 亿笔交易的全球纪录,最高每分钟支付 79 万笔交易。
手机淘宝整体支付宝成交额为 53.5 亿元是 2012 年的 5.6倍(9.6 亿元);单日活跃用户达 1.27 亿;手机淘宝单日交易成交笔数达 3590 万笔,交易笔数占整体的 21%。
天猫双 11 共产生快递包裹 1.52 亿件,仅双 11 当天,国各大快递企业共处理 6000 多万件包裹,是 2012 年双 11 最高峰的 1.7 倍。
在疯狂的业务数据背后,是阿里技术团队的一次整体大阅兵,从天猫、淘宝到支付宝,从 PC 到无线,从研发到运维保障,各个环节都面临着巨大的挑战。
双 11 业务
生态在开始介绍这些挑战之前,我们先用一张图来看一看,作为消费者,你在 2013 年的双 11 大促中都会经历哪些业务过程,如图 1 所示。
首先,你会通过各种终端(PC、手机、平板)访问淘宝、天猫、聚划算的导购市场,丰富多样的导购产品会帮助你发现和挑选自己心仪的商品。大数据的基础平台支撑了大量有价值的数据应用,以保证你在这个环节的购物体验。稳定的交易平台确保了优惠价格的准确计算、库存的及时扣减和担保交易的订单有效生成。这时,你就可以通过支付宝安全放心地进行支付宝余额或者网上银行支付,满心欢喜地等待包裹的送达。
这时就开始轮到面向商家的系统忙碌起来了。聚石塔提供的云推送功能在第一时间将交易订单同步到部署在聚石塔云工作平台上的商家 ERP、WMS、CRM 软件中,并且为这部分软件提供了动态弹性扩容的能力和安全方面的有效保护,以便大商家在大量订单面前,可以像日常情况一样,快速组织商品出库和发货,而不用额外担心自己软件的处理能力。
最后出场的是菜鸟网络打造的雷达预警系统,通过大数据的力量,对商家的备货、消费者购买行为、物流服务能力进行预测,并与国家气象局、交通部实时发布的天气、道路情况进行同步运算,将未来半天至七天的预测结果反馈到 13 家快递公司,以便快递公司提前调配运力。最终,所有的包裹得以第一时间送到消费者的手中。
挑战和技术准备
业务跨数量级的快速发展对整体架构带来了新挑战经历了过去几年“去 IOE”(IBM 小型机、Oracle、EMC 高端存储)整体架构改造,整个阿里集团建立了基于中间件、PCServer的轻量级分布式SOA架构,保证了服务器、数据库、网络、
机房各个层面无单点,可以以较小的成本支持水平扩展,提升网站的负载能力。但随着这几年双 11 业务的飞速增长,PV、同时在线用户数、峰值交易和峰值支付等核心指标都开始跨越到新的数量级,架构在更高负载能力要求下的一些缺陷开始暴露出来。
第一,大规模访问请求带来的机房网络瓶颈。
双 11 当天有数亿用户访问天猫和淘宝的系统,高峰期甚至有数千万人同时在线。以天猫的“商品详情”页面为例,集群峰值 QPS 达到了十万以上的量级,是平时峰值 QPS 的数十倍。这样的突发性流量增长,使得机房的网络容量面临着巨大压力。如何能够利用合理的成本应对瞬间飙高所带来的网络压力,确保活动完整周期内用户响应时间的稳定性,以及局部出现问题时的高可用性,成了首先需要面对的问题。着眼于未来,从 2011 年起,我们就开始了对浏览型的应用
进行新的架构改造。历经页面细粒度的动静分离、统一缓存接入、CDN 静态化三个阶段。最终,将更新频率不高的内容伪静态化直接缓存到 CDN,通过统一的秒级失效机制控制缓存的更新操作,让绝大多数内容请求不需要回流到主机房,直接在用户最近的 CDN 节点就能够完成。这种方式一方面极大地缓解了主机
房网络的压力,另一方面也优化了用户页面的响应时间。徐昭的《天猫浏览型应用的 CDN 静态化架构演变》将带大家更深入地了解我们是如何经历这一过程的。
第二,超大规模系统如何继续保持在不同层面上的水平伸缩性。
首先,服务器需求的增多,导致未来单一地区的 IDC 资源已无法满足容量增长的需求,机房供电能力成为短期内无法逾越的瓶颈。其次,简单地横向扩展 IDC 机房,机房之间的网络流量又成为了新的瓶颈。多机房的应用、缓存、数据库等访问的相互穿透,也加剧着跨机房的流量增长。最后,核心服务集群的应用服务器的规模增长,使对应的数据库连接数成为了瓶颈。每增加一台数据库服务器,对应的应用服务器都需要连接上来,数据库的连接数马上就不够分配了。也就是说,在今天的业务规模下,我们无法继续针对核心服务的数据库层再做横
向水平扩展了。为了解决以上问题,2013 年双 11 我们尝试了新的逻辑机房
的架构方案,将数据水平拆分(Sharding)的思路向上提到接入层。以支付宝为例,先将完成某一特定业务需要的系统、核心服务、数据库组合抽象成一个业务单元(Zone)的概念,业务单元从应用服务器、缓存到数据库可以独立封闭运行。然后,从入口处根据用户请求路由到不同的逻辑业务单元,实现了单元级别
的可伸缩性。不再依赖同城 IDC,让交易、支付这样复杂的业务单元具备了大规模跨地域部署的能力。胡喜的《支付宝的架构变迁》会有更加深入和全面的介绍。
第三,如何更大程度地“压榨”单服务器的系统资源。
虚拟化技术已作为各大网站提升物理机资源利用率的基础技术。以天猫和淘宝网为例,2010 年我们引入 Xen 虚拟化技术,1 台物理机装 3 个虚拟机,一定程度上降低了成本。但随着机器规模的快速增长,我们发现其中 13 的虚拟机的 Peak load
……
|
|