12__持续集成:你说的CI和我说的CI是一回事吗?

你好,我是石雪峰。今天我来跟你聊聊 CI。

之前,我曾应邀参加某公司的 DevOps 交流活动,他们质量团队的负责人分享了 DevOps 平台建设方面的经验,其中有一大半时间都在讲 CI。刚开始还挺好的,可是后来,我越听越觉得奇怪,以至于在交流环节,我只想提一个问题:“你觉得 CI 是个啥意思?”后来,为了不被主办方鄙视,话到嘴边我又努力憋回去了。

12__从0到1:你的第一个GUI自动化测试

在前面的测试基础知识系列文章中,我分享了测试相关的基础知识,从测试用例的设计,到测试覆盖率,再到测试计划的制定,这些都是我认为测试人要掌握的一些基本知识。

12__从谷歌CRE谈起,运维如何培养服务意识?

2016 年 10 月,谷歌云平台博客(Google Cloud Platform Blog)上更新了一篇文章,谷歌宣布了一个新的专业岗位,CRE(Customer Reliability Engineering),直译过来就是客户稳定性工程师。我看了介绍后,发现还是一个挺有意思的岗位设置,搜索之后发现,针对这个岗位国内还没有太多的解读。下面我们就来尝个鲜,一起来看一看。

12__打开首页之二:如何平衡利用硬件资源?

你好,我是高楼。

针对打开首页接口的性能问题,我们在上节课中确定了是 Gateway 在消耗响应时间,达到了近 100 毫秒。于是,我们开始定位 Gateway 上的响应时间消耗。

在第一阶段的时候,我们关注了应用所在的主机,同时还了解到,宿主机总共有四台机器;在第二阶段,我们查看了物理机的 CPU 模式。并尝试通过修改 CPU 运行模式来优化性能。可是,问题仍然没有解决,TPS 没见提升,响应时间依旧很长。

12__打造案例(中):如何引发现象级讨论,打赢PR战役?

你好,我是曹林。今天我们继续来探讨如何打造客户案例。

上一节课中我们讲了一个案例应有的内核,包括案例选型的五条标准划线,以及如何通过 FAQ 来提炼案例要点。但仅仅把案例内核打造完还不够,我们还要对外输出案例,最终实现商业价值。要想做到这一步,我们就要打赢两场战役:“心智战役”和“营销战役”,心智之战决定了用户是不是认为你这个产品是值得我购买的,而营销战役则是临门一脚,把商机转化成了销量。

12__大促容量保障体系建设:怎样做好大促活动的容量保障工作(上)

你好,我是吴骏龙。

在我的容量保障生涯中,有很多属于自己的记录:完成了上百次全链路压测、发现和改进了近千个容量问题、编写的压测平台总共支撑了近万亿次请求量……这些记录仍在延续。但在这些记录背后,也有我的一把“辛酸泪”:有未能发现容量隐患挨骂的,有把生产环境压挂了背锅的,有几次甚至都想撂担子不干了。但如果你问我什么时候压力最大,那我的答案只有一个,在大促期间做容量保障工作的压力最大。

12__代码审查:哪种方式更适合我的团队?

你好,我是葛俊。今天,我们来聊聊都有哪些代码审查方式,以及哪种方式更适合你的团队。

国外互联网行业的很多效能标杆公司都非常重视代码审查(Code Review),比如 Facebook、Google 等就要求每一个提交都必须通过审查。

12__多线程之锁优化(上):深入了解Synchronized同步锁的优化方法

你好,我是刘超。从这讲开始,我们就正式进入到第三模块——多线程性能调优。

**在并发编程中,多个线程访问同一个共享资源时,我们必须考虑如何维护数据的原子性。**在 JDK1.5 之前,Java 是依靠 Synchronized 关键字实现锁功能来做到这点的。Synchronized 是 JVM 实现的一种内置锁,锁的获取和释放是由 JVM 隐式实现。

12__非精准Top_K检索:如何给检索结果的排序过程装上“加速器”?

你好,我是陈东。

上一讲,我们详细讲解了 Top K 检索的打分排序过程,并且还提到可以使用堆排序代替全排序,来大幅降低排序的时间代价。然而,对于这整个检索过程来说,精准复杂的打分开销要比排序大得多。因此,如果我们想更大幅度地提升检索性能,优化打分过程是一个重要的研究方向。那打分过程具体该怎么优化呢?今天,我们就来聊聊这个问题。