《Release It! Design and Deploy Production-Ready Software》

软件发布并非终点,而是新挑战的开始。真实环境中的问题比测试环境复杂得多,包括多服务器配置、防火墙影响及高并发访问等。本书通过实战案例探讨了系统稳定性、性能优化、数据中心设计与运营等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

所有功能开发完成,并通过QA测试,就一切大功告成了--我们一直存在这样的认识误区。其实,从软件产品正式发布交付给用户使用的那一天起,挑战才刚刚开始,路还很长。你会遇到各种各样的问题,让你半夜都无法安睡。因为,真实的运营环境跟开发测试环境是不同的,你会遇到各种各样的新问题和挑战。测试环境里,可能只有一台服务器,但是运营环境中可能有很多台服务器。测试环境中,可能没有防火墙,实际情况是防火墙一定存在。还有,测试时你只考虑了1000个正常的并发访问,在运营环境中你却会遭遇上万个并发访问(恶意的,无意的)……归根到底,测试环境是一个受控的环境,而运营环境是开放的,一切都不可预知,你必须为最坏的情况做好准备。

 

作者首先从一个服务器总是在凌晨空闲的时候宕机的案例开始讲起,如何一步步进行追踪到数据库连接错误,并细述了TCP/IP和防火墙的工作原理--整个故事有如探案一般惊险。用案例以及翔实的技术细节来说明,这是本书的最大特点,完全是从实战中来的真枪实弹。所以,除了各章标题的结论,你还是可以了解到一些从别的书不可能了解的“真实的细节”。全书主要分为几大部分:Stability,讲述系统稳定可靠相关的内容。什么是稳定的,影响系统稳定的常见模式(好的和坏的);Capacity,讲述性能和容量的内容。同样的,如何提高系统的性能和容量;General Design Issues,数据中心的一般设计思路;Operations,前面讲述的都是开发和设计的内容,这里则讲的是系统正式运营过程中需要注意的问题。在每一个章节的后面,都有简要的总结,方便记忆。

 

对了,本书的目标读者应该是网站的设计,开发和维护者,单机桌面软件并不很适用。另外,基本上是以Java系统来进行说明的,甚至深入到了Java GC的微调和JMX的使用,对其它比如LAMP架构就没有涉及。所以,对于如何使得软件达到Product Ready,作者虽然提出了自己的很多经验教训和认识,但还不是很全面,只能说是抛砖引玉。

Release It!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值