黄博文,ThoughtWorks资深软件工程师/咨询师。在国内外多家企业做过技术教练以及技术咨询,拥有丰富的敏捷团队工作经验。拥有AWS解决方案架构师以及开发者证书。译作有《面向对象的思考过程》、《基础设施即代码》等。
maven.aliyun.com作为国内免费的maven镜像私服,服务了大量的国内开发者。随着访问量逐渐增大,访问速度越来越慢,网站也越来越不稳定,构建也时常失败。虽然进行了多次扩容,但磁盘访问瓶颈始终无法解决。
目前云效上线了企业级Maven私有仓库服务。用户可以一键开通Maven私有仓库服务,零配置实现私有二方库的上传和下载。
有人说跑步是最省钱的一项运动,只需要一双跑鞋而已。但真正入了跑步的坑,钱就一笔一笔的败出去了。作为一个跑者,你可以简简单单,一年就投入几百块钱的跑鞋钱,你也可以去追求完成马拉松六大满贯,1年花销轻松20多万。
上一文中讲述了如何在AWS下搭建OpenShift集群。这篇文章将目光转向如何在OpenShift中实现CI/CD以及产品环境的部署。 持续交付 如果要打造一个持续交付的流水线,首先要考虑多环境的问题。
OpenShift是RedHat出品的PAAS平台。OpenShift做为PAAS平台最大的特点是它是完全容器化的PAAS平台,底层封装了Docker和Kubernetes,上层暴露了对开发者友好的接口来完成对应用程序的集成、部署、弹性伸缩等任务。
2017年4月份用时28个多小时跑完江南100,付出的代价是双脚多达8个以上的水泡。所以接下来的4月29日的环汶川越野赛果断的从60公里换到了30公里组,慢悠悠的完成了。 虽然在赛道上一度想再也不参加超长距离越野赛了,但是赛后没几天就好了伤疤忘了痛。
HashiCorp Vault是一款企业级私密信息管理工具。说起Vault,不得不提它的创造者HashiCorp公司。HashiCorp是一家专注于DevOps工具链的公司,其旗下明星级产品包括Vagrant、Packer、Terraform、Consul、Nomad等,再加上Vault,这些工具贯穿了持续交付的整个流程。
笔者作为AWS官方认证的早期通过者,已经拿到了AWS的助理级解决方案架构师、开发者认证,系统管理员认证。这几年也陆续指导公司多人通过AWS的认证。本篇文章将分享如何通过自学的方式轻松通过AWS的助理级架构师、开发者和系统管理员认证。
现代软件开发对基础设施的管理提出了更苛刻的要求。产品要适应瞬息万变的市场,要求基础设施要有更快的响应速度。而持续交付和DevOps的推行要求产品团队对部署和运维要有更高的自主性。技术的快速进步和演化,也使得基础设施的配置不得不频繁变化。
我从2014年4月份开始跑步,到这个月份恰好3年。第一次跑步是我在国外布里斯班出差的时候。布里斯班市有一条布里斯班河穿城而过,市政府在布里斯班河上修了一条10多公里的河上跑道,是一个骑车和跑步不可多得的好地方。
2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范。随后进行了几次版本修订,目前的版本为v1.0.2版。下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/articles/69327找到。
2016年过的很快,是被时间追着走。 工作 2016年的工作可以分为三大块。 1月份和2月份还在咨询团队。这两个月在某国内大型企业做技术教练。先后开展了TDD、Clean Code、Continus Integration等课程。
很多IT从业人员进入这个行业都是从学习一门编程语言开始的。对于编程,我们往往过于关注语言的语法细节,反而忽略了其背后的设计理念。面向对象的思考过程就是一个非常优秀的设计理念。它可以独立于语言存在。
2001年,敏捷宣言在美国犹他州瓦萨奇山雪鸟滑雪胜地横空出世。时至今日,敏捷软件开发流程早已经深入人心。ThoughtWorks作为敏捷实践的翘楚,一直不遗余力的向行业推广敏捷。而ThoughtWorks自身不仅在所有项目中都使用敏捷,甚至对毕业生的培养都是敏捷的。
QA,全称为Quality Analyst,即质量分析师(有些称为Quality Assurance,即质量保证师)。为什么它总跟质量扯在一块?感觉这个角色明明做的都是测试的事情,为什么不直接叫做tester那?敏捷项目中的QA日常都做什么事情那?可能一大推问题都会冒出来。
在大型企业中,由于业务复杂、数据量大、数据格式不同、数据交互格式繁杂,并非所有的操作都能通过交互界面进行处理。而有一些操作需要定期读取大批量的数据,然后进行一系列的后续处理。这样的过程就是“批处理”。
8月初再次来到印度Pune出差,还是在TWU当讲师。这次的TWU是第51期,也是有史以来人数最多的一期。整个TWU的工作很多,非常忙,经常从早上8点忙到晚上8点。为了备战10月份的越野比赛,只有在周末才有时间拉个半马。
8月份又一次来到了印度Pune,作为TWU第51期的讲师会在这里呆上2个月左右。 由于在3月份已经来过一次,所以一切都很熟悉,甚至住的房间和上次都差不多。再一次和来自全球各地的Trainer一起合作,共同服务有史以来TWU学生最多的一期,我很荣幸。
《膝盖中了一箭》已经连载了一年,我想是时候终止这个系列了。当然不排除以后有相关的东西继续写。 整个7月份过的都比较忙碌。由于父母回老家了,只有我和老婆两个带孩子。平时把孩子送在家附近的一个早教中心,早上8点半送过去,下午5点半再接回来。
张掖百公里,不愧为中国最美百公里。可惜的是自己没有看到后面50公里的风景。不过前50公里让我过足了瘾,受足了罪。 2016年5月15日完成了熊猫热土环汶川50公里越野赛之后,我就寻思着再次踏上百公里的赛道,向百公里再次发起冲锋。
右膝盖前十字韧带在2014年12月份的一次常规踢球中不小心弄断。2015年5月份才确诊。随后2个月后的7月1日做了十字韧带重建术。到现在刚好是术后一年了。 总体来说恢复的情况我还比较满意。
从几年前开始,我习惯于每年的年末写一篇总结。这些总结一部分在我的QQ空间,另一部分在我的个人博客。有些时候也会顺便展望一下下一年。每一年自己都在进步,自己变得更加成熟和专业。尤其是脸皮越来越厚,表现出来的行为就是啥都敢干。
2015年7月1日进行了右膝前十字韧带重建术,至今已经有十一个月了。 5月份还继续健身房之旅。出勤率略低,应该在4成左右。这个月练了几次腿,练完以后酸爽的很。以前腿部斜举试过160公斤。
Martin Fowler曾经在一篇文章中曾经引用过Phil Karlton的话: There are only two hard things in Computer Science: cache invalidation and naming things. 他说这句话在很长的一段时间内都是他最喜欢的话。
先后去过两次汶川,一次是2014年12月份参加汶川30公里越野赛,8小时完赛时间,在最后10分钟完成。这是我参加的第一次越野赛。第二次是2015年3月份的爱江山汶川60公里越野,在55公里处因晚到半小时被关门。
2015年7月1日进行了右膝盖前交叉韧带重建术,至今已经10个月了。 4月份健身房的出勤率应该达到了六成。每周一般争取训练4次以上,每次训练一个部位,分别是胸、肩、背、二三头、腿。
2015年进行了右膝前十字韧带重建术,至今已经有九个月了。 3月份整个膝盖的恢复情况并不明显。一是本体感觉还没找到,始终觉得是条伤腿,有些动作不敢做。比如从半米高的地方跳下来都觉得心有余悸。
本来打算写印度浦那一周感受的,结果一周过去了一个字都没写,然后打算写二周感受,结果第二周也没找到时间来写。第三周是异常繁忙的一周,终于在周末找到了一点时间来编写。 这次去印度浦那是作为ThoughtWorks University的Coach,需要在印度呆3个多月。
2015年进行了右膝前十字韧带重建术,至今已经有八个月了。 右膝的恢复貌似进入了瓶颈期。平时坐久了之后突然起身走路时会感觉右膝有些瘸,但走了一会之后即可恢复正常。为了找回本体的感觉,在平常站立时我一直尝试使用右腿作为支撑腿,但是收效甚微。
这是我为InfoQ翻译的文章,原文地址:Build High Performance JVM Microservices with Ratpack & Spring Boot,InfoQ上的中文地址:使用Ratpack与Spring Boot构建高性能JVM微服务。
Java世界中主要有三大构建工具:Ant、Maven和Gradle。经过几年的发展,Ant几乎销声匿迹、Maven也日薄西山,而Gradle的发展则如日中天。笔者有幸见证了Maven的没落和Gradle的兴起。
前交叉韧带术后已经7个月。 上一次见主治医生还是2015年11月初的时候。按理说术后复查时间表应该是1个月、2个月、3个月、半年。但由于长期出差,再加上主治医生只有每周二坐诊,而且挂他的号都要提前一周预约,时间实在不好把握。
根据SMART原则我制定了2016年的目标。每个月都有一个小目标,每个目标都是specific(具体)、Measurable(可度量)、Attainable(可实现)、Relevant(相关性)、Time-bound(时限)的。
Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准,Maven的替代者Gradle也基本沿用了Maven的依赖管理机制。在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个属性构成的,分别是groupId、artifactId以及version。
又到了年末写总结的时候。每年写总结时的心情都不一样,有的时候收获满满,有的时候诚惶诚恐,有的时候有些许遗憾….今年写年终总结,心情则特别复杂,这一年经历的事情不可谓不多,自己的成长也不可谓不大,但自己却时不时被一种焦虑的情绪烦扰。
之前我写过一篇博客,敏捷的写博客,借鉴了敏捷看板的思想来管理博客。 而在DevOps领域有一个很火的技术实践叫做基础设施即代码。Kief对基础设施即代码的解释是这样子的: 基础设施即代码是一种使用新的技术来构建和管理动态基础设施的方式。
7月1日的右膝前叉韧带重建手术,到现在已经术后满5个月了。 11月份跌跌撞撞就这样过去了。11月10日去主治医生那里做了复查。高医生查体以后说我恢复的相当不错,并让我再做一次MRI看看结果如何。
最近开始系统性的学习scala。其实之前使用过scala的,比如我在用Gatling这款性能测试工具的时候就接触到了scala了。Gatling本身就是用Scala写的,而且Gatling的性能测试配置文件本身就是一个scala类,可以随意使用scala甚至是Java提供的各种类库。
不知不觉,从2012年5月1日加入ThoughtWorks到现在,已经3年有余了。时间过得很快,这三年多我干了很多事情,但仔细想想也没有什么特别值得一提的。在一个公司呆久了总觉得很多事情是理所当然的,直到今年进入了咨询团队,走马观花般见识了很多其他公司的团队和项目,才发现在ThoughtWorks的准则和其它公司的玩法是完全不同的。
7月1日的右膝前叉韧带重建手术,到现在已经是4个月了。 9月底的时候情况是步态基本正常,上下楼也没问题。跑步训练一次10公里后也无异常,只是速度放的很慢。 国庆节期间去了老婆老家,那几天基本都在玩,没有进行任何恢复性的训练。
2015年7月1日做的ACL手术,上一篇写到了4-8周的恢复情况,也就是8月份的恢复情况。当时情况是走路稍微有点瘸,速度和正常人无异,弯腿角度140度左右。训练情况是每周去健身房3次左右,每次椭圆机20分钟,固定自行车30分钟,另外加上一些力量训练。
但凡服务器上了一定规模(百台以上),普通的ssh登录管理的模式就越来越举步维艰。试想Linux发布了一个高危漏洞的补丁,你要把手下成百上千台机器都更新该补丁,如果没有一种自动化方式,那么至少要耗上大半天时间。
7月1日做的手术,经过一个月的康复,走路已经可以完全不用拐杖了,护具也只是在办公室的时候带着,下班回到家里一般就不带了。前4周的恢复情况请参加我前一篇文章。 7月29日去杭州出差,保险起见还是带了护具,装在了行李箱里。
IT行业中的企业特点是都属于知识密集型企业。这种企业的核心竞争力与员工的知识和技能密切相关。而如果你在企业中扮演的是工程师的角色的话,那么你的核心竞争力就是IT相关的知识与技能的储备情况。而众所周知,IT行业是一个大量产生新知识的地方,就拿Web前端举例,短短的5,6年时间,Web前端已经经历了数次变革,就目前来看变革还将继续下去。
7月1日手术。手术完后即按照护士要求做踝泵及伸腿运动,次数多少记不得了,反正300次应该是有的。护士说不能下地,但我坐床上实在无法撒尿,最后还是站在床边撒的。 7月2日早上刚开始发现不能直抬腿,主要是大腿肌肉可能麻醉效果还没过,完全无法收紧肌肉,膝盖部位一点力气都没有。
原文链接:http://jensrantil.github.io/salt-vs-ansible.html 作者: Jens Rantil 之前某些时候我需要评估配置管理系统。结合从他人得到的意见,我认为Puppet及Chef在配置和运行方面过于复杂。
虽然5月份已经确诊了前十字韧带断裂,但由于公司项目一时走不开,无法立即手术。几番协商以后,终于确认手术时间定于6月底。期间专门挂了胡勇的6月17日的门诊,让他给看了看。胡主任让助手给我做了各项检查,结合MRI结果,得出了我的前交叉韧带肯定断裂了的结论。
self-confidence(自信心)——是一种反映个体对自己是否有能力成功地完成某项活动的信任程度的心理特性,是一种积极、有效地表达自我价值、自我尊重、自我理解的意识特征和心理状态,也称为信心。
从小到大,虽然没得过什么大病,但是受的伤不少。什么磨血泡、扭伤、擦伤之类的家常便饭,对于经常踢球、打球的人来说没什么大不了,休息几天又是一条好汉。高中的时候曾经骨折过2回,虽然打着石膏的时候很苦逼,但是伤好后没留下什么后遗症,也没什么心理阴影。