2017

-

新手学绘画 | 快速入门指南
让你立即上手的六组绘画练习! Read More

-

火狐的超快速 CSS 引擎:Quantum CSS
Quantum 项目是 Firefox 内部组件的重大改写,目标是让 Firefox 更快。  开发者对测试版浏览器 Servo 做组件替换,同时对引擎的其它部分进行改进。  Servo 的第一个主要组件——Quantum CSS 引擎——已经在每日构建版本中测试。 它吸收了四种主流浏览器的最先进创新技术,创造了新的超级引擎。 Read More

-

JavaScript 内存管理和垃圾回收
如何更有效地防止内存泄漏,并使用内存管理和垃圾回收来处理数据。 Read More

-

《Docker 最佳实践》导图
送上最新原创一张适合放在案头查阅的《Docker 最佳实践》导图。 附可以直接下载打印的 PDF 版本。 Read More

-

博客升级了 Bootstrap 4 Beta
耗时两年,Bootstrap 4 终于发布 beta 版本了,也意味着功能基本稳定。 经历 6 次 alpha,增加 6.7 万行代码,也删除了 8 万行代码。整体来说是精简了。 明显感觉更清爽了——无论是配色、布局,还是代码风格。 Read More

-

基础镜像 | 再谈 Docker 瘦身
镜像是 Docker 运维的基本单元。 优化镜像体积,能够: 缩短部署时的下载时间; 提升安全性,因为可供攻击的目标更少; 减少故障恢复时间; 节省存储开销。 正确认识分层和共享 认清与理解 Docker 镜像的层次结构,是进行镜像优化的前提和基础。 Read More

-

多步构建 | Docker 瘦身之旅
软件生命周期管理中,CI/CD 体系引入 Docker 以提升开发效率形成共识; 然而 Docker 构建出的镜像体积太大,成为令人头疼的问题。 解决思路,除了选择较小的基础镜像(base image),在构建过程对新增内容进行选择,也是控制镜像体积的有效途径。 Docker 17.05 引入 多步构建,特别有助于高效构建精简镜像。 Read More

-

YC 2017 夏季阅读书单
Y Combinator 推荐的 20 本书 Read More

-

Docker、Kubernetes、Apache Mesos 之争 | 一个与传说不同的故事
有无数的文章、讨论和社交网络上的交流在比较 Docker、Kubernetes 和 Mesos。 如果只听取部分信息,你会以为这三个开源项目正在为容器世界的霸权而决战。 你也可能认为,选择其一几乎是一个宗教选择;真正的信徒维护他们的信仰,烧死胆敢考虑其它替代品的异端者。 这都是呓语。 Read More

-

“茴”字的 N 种写法:关于 Ruby Array 与 Enumerable
【词汇量?是的!编程语言也要背单词!】 Array 是最基本的数据结构之一。 对数组的操作,回忆一下,除了 .each,你还会哪些操作? 对 Array 元素进行处理的操作很常见。 Array 的内置方法提供了基本的操作。然而有些场合这些方法并不够用以实现简单的处理逻辑。 好消息是可以利用 Enumerable 模块提供的方法,而这些方法容易被忽视。 Read More

-

2017 年值得关注的开源项目
常回顾过去,有益于看清未来。 值此 2017 年已过半,通过找出当前正流行的技术项目,看看他们怎么“改变世界”。 技术不是孤立存在,而是在整个经济社会发展过程中应运而生。 这些项目热门项目,涵盖信息革命当前阶段的几个关键问题: 方向、核心、载体、设施等。 Read More

-

故障平均恢复时间 - MTTR
DevOps 组织不是试图避免故障,而是承认故障是生活的一部分 Read More

-

编写一个 Unix Shell - 第一部分
按部件来构建自己的 UNIX shell。这篇文章的重点是系统调用 fork 的语义 Read More

-

选择适合 Rails 开发的操作系统
有人说 Ubuntu, 有人说 Linux Mint, 也有人偏好 MacOS, 甚至用 Windows。 到底应该怎么选择适合 Rails 开发的操作系统呢? Read More

-

用科技解决洁净水资源供应难题
生命离不开水,人的健康更需要洁净水。 我们正面临着日益严重的水资源短缺的威胁。 洁净水资源的短缺已经成为一个全球性问题。 人口增长、空气污染和气候变化都将加剧了洁净水的短缺,尤其是大城市增多,更面临如何管理水资源的挑战。 科技是解决发展问题的根本。 环境问题日趋严重的事实,不应完全归罪于生产的发展,解决的根本之道是提高人类认识、适应和改造世界的能力。 Read More

2016

-

Nginx访问计数和频率控制
在使用了负载均衡设施的网站中,对 HTTP 请求做访问控制(频率控制)是个经常遇到的需求。 频率控制的主要目的,传统应用场景中要保护后端系统。 在多租户的云服务上,通过频率控制对不同租户的资源使用量进行有效分配,从而避免相互影响访问质量。 频率控制的精细度,也需要控制在集群级别,而非传统意义的单进程级别。 Read More

-

创业公司的科学方法
(译自 Y Combinator) 当讨论创业公司时,人们倾向于谈论灵感和创造力。 这使得创始人相信可以想象出一个方案来解决所有他们试图解决的问题。 现实中,运行一个创业公司是 创造力/直觉/本能 与 科学方法 ( 假设 > a/b 测试 > 总结 > 重复 )之间的平衡。 灵感 帮你找到一个问题来解决。 创造力 使你能够集思广益出解决问题的各种潜在方案。 科学方法 指导你从这些方案中选出哪一个能真正解决你客户的问题。 Read More

-

Mesos 实战-3:Marathon 作为运维管理平台
Marathon 是运行在 Mesos 之上的应用管理平台、运维平台。 本文将学习 Marathon 的基本概念、部署管理和使用方法。 前文中我们已通过Mesos 实战-1:Mesos 起步部署一套 Mesos 集群,通过Mesos 实战-2:Mesos 框架初探了解 Mesos 框架的基本结构。 在框架的基础上,Marathon 平台的出现使得往 Mesos 上部署应用更加便捷。 Read More

-

Mesos 实战-2:Mesos 框架初探
Mesos 提供了集群化的资源管理功能。 为了将实际业务与 Mesos 结合起来,就需要用到 Mesos Framework(Mesos 框架),即基于 Mesos 的应用。 基于官方的 Mesos 框架示例代码,我们来分析看框架的基本结构,并了解社区已有框架的现状。 Read More

-

Mesos 实战-1:Mesos 起步
Mesos 是一套成熟的分布式资源管理系统,应用场景非常广泛。 今天我们来学习 Mesos 的基本架构原理,并亲自动手部署一套 Mesos 集群环境。 Read More

2015

-

Kubernetes 201 学习笔记
Kubernetes 201 涵盖了 Kubernetes 101 未涉及的领域和更高级的话题,如应用生产化,部署和扩展。 Read More

-

Apache TCP Backlog 分析
本文来自 Ryan Frantz 的一篇博文。 文章介绍了针对 Apache 的 TCP Backlog 做调优的过程中遇到的问题,和最终的惊喜发现。 Read More

-

Docker 生态圈指南
【编者的话】如火如荼的容器化运动中,引擎、服务商和工具等方面都涌现了一大批优秀的成果,本文对这些方面做出简要总结。 Docker 是近一两年来发展最快的技术。 几乎所有的公司都在使用 Docker(或容器)技术。 有的只用 Docker 来构建开发环境,越来越多的公司在利用容器技术彻底改造已有的架构和部署流程。 本文对当今的容器生态环境做一个简单介绍。 Read More

-

Kubernetes 101 学习笔记
Kubernetes 101 内容涵盖 kubectl, pods, volumes 和多容器的知识。 学习时注意区分各个概念与 Docker 概念的对应关系和差异。 Read More

-

分布式文件系统 MooseFS:告别 NFS
本文介绍 MooseFS 架构原理,安装配置和使用方法。 MooseFS 是一种容错的分布式文件系统。它将数据分散到多个物理位置(服务器),在用户看来是一个统一的资源。 MooseFS 支持 FUSE 标准接口,能够无缝实现从本地文件的迁移。 同时,MooseFS 提供比 NFS 更好的可运维性。 Read More

-

命令行工具实践——测试驱动的开发方法
TL;DR; 本文介绍了 to_yaml 的开发过程中如何采用 TDD 方法开发功能,以及用到的免费服务 GitHub / TravisCI / RubyGems。 TDD (测试驱动开发)是敏捷开发中的一项核心实践和技术,也是一种设计方法论。 TDD 的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。 to_yaml 是一款命令行工具,将 JSON 输入转为 YAML 文本输出。 Read More

2014

-

通过堡垒机代理SSH运行Ansible(译)
有一种常见的网络安全模式是阻止私有网络外部对应用服务器的所有连接(指除了业务数据外其它的连接,如后台管理系统和内部业务系统。译者注),然后使用 DMZ 区域中的 堡垒机 来选择性的将到服务器的流量加入白名单。 Read More