最近公司决定在早中晚全公司范围内播放广播。早晚内容是「广告」和「司歌」,中午是罗振宇的「罗辑思维」片段。
对此我在微信上表达了强烈的愤怒,措辞很激进。坦白来讲,我倒是希望有人传话给决策者,让他们知道我的愤怒,不是我不想混了,因为我相信我有足够的理由和众多的支持者,只是大家都不敢出声罢了。
最近公司决定在早中晚全公司范围内播放广播。早晚内容是「广告」和「司歌」,中午是罗振宇的「罗辑思维」片段。
对此我在微信上表达了强烈的愤怒,措辞很激进。坦白来讲,我倒是希望有人传话给决策者,让他们知道我的愤怒,不是我不想混了,因为我相信我有足够的理由和众多的支持者,只是大家都不敢出声罢了。
我们经常要开发一些「系统」,这些「系统」具备以下特点:
那么在开发这类系统时就会遇到一些问题:
为了解决这些问题,我们将整个环境安装在虚拟机内,这在安居客被认为是一种最佳实践,成功的应用在很多系统的开发当中。 而开发环境,生产环境的部署则交给 ansible 来完成。那么我们的项目目录看起来是这样:
1 2 3 4 |
|
这样有一个好处,虚拟机启动之后,源代码对应 /vagrant
这个共享目录,修改源代码会同时在虚拟机内生效。
但这样 ansible 或是其他一些 CM(Configure Management) 工具的代码和源代码就会混在一个仓库内。
本文就介绍一种简单的方法可以将 DevOps 的代码与源代码隔离,并达到相同的效果。
前些年翻译的 12-factor。一直放在公司内部的博客上,现在复制一份过来。
中文翻译:梁山 英文原文:Adam Wiggins
如今,软件通常会作为一种服务来交付,它们被称为“互联网应用程序”(web apps),或“软件即服务”(SaaS)。这篇“互联网应用的十二要素”为构建如下的互联网应用程序提供了指导方法:
这套理论适用于任意语言和后端服务(数据库、消息队列、缓存等)开发的应用程序。
本文的贡献者参与过数以百计的应用程序的开发和部署,并通过 Heroku 平台间接见证了数十万应用程序的开发,运作以及扩展的过程。
本文综合了我们关于 SaaS 应用几乎所有的经验和智慧,是开发此类应用的理想实践标准,并特别关注于应用程序如何保持良性成长,开发者之间如何进行有效的代码协作,以及如何 避免软件污染。
我们的初衷是分享在现代软件开发过程中发现的一些系统性问题,并加深对这些问题的认识。我们提供了讨论这些问题时所需的共享词汇,同时使用相关术语给出一套针对这些问题的广义解决方案。本文格式的灵感来自于 Martin Fowler 的书籍:Patterns of Enterprise Application Architecture,Refactoring。
任何 SaaS 应用的开发人员;部署和管理此类应用的运维工程师。
安居客近年来非常重视校招,尤其是研发方向。实际操作下来,感觉校招还是不错的选择,这次我主要站在公司的角度来说。
Ansible 是一个自动化配置管理工具 (Automate configure management)。用 python 编写,所以安装方式一般有以下几种:
pip
安装
1
|
|
MacOS 用户可以选择使用 homebrew
安装
1
|
|
但这两种方法都不可避免将「污染」系统的 python 环境。所以本文主要介绍如何绿色安装 Ansible。
一直没有搭博客,因为一直感觉自己不是一个标准的技术人,主要是不够狂热。但受身边人熏陶,偶尔还是想写点东西。
尤其是看中 liangshan.me
这个域名,买下之后觉得闲着也是浪费,所以有了利用 GitHub Pages 来搭一下的想法。
Git
的常识整体来说,整个部署过程分3大步