如何构建职业成长方面的良性循环系统?
想必大家天天看技术文章应该都看累了吧,今天咱们不谈技术,聊个有意思的话题,即如何为自己构造出一个 职业成长方面动力十足的良性循环系统。
什么意思呢?
我相信各位做技术的 “秃头老码农” 肯定都有过或实践过这样一个想法:即通过在上班之余努力学习各种知识、开发技能和思维能力,一段时间后提高我们的工作能力,进而做出更好的工作成绩。这些工作成绩会为我们带来更多的金钱,如升职加薪、当上CTO、迎娶白富美等。
这些钱会对我们构成正面激励,让我们有更大的学习动力去继续学习更多的知识和能力,然后继续这一良性循环。这里我们用一张系统动力图来描述这个循环过程。
Podman是什么?与Docker有什么区别?
容器编排工具作为当今最重要的Web开发技术之一,众多强者都在尝试争夺这一行业的主导地位。
Podman是RedHat的一款产品,旨在使用类似于Kubernetes的方法来构建、管理和运行容器,作为一款主流容器的可靠替代产品,它吸引了开发人员的关注。自RHEL 8起,Red Hat用CRI-O/Podman取代了Docker Daemon。为什么Red Hat想要摆脱Docker Daemon?这是因为使用Docker Daemon运行Docker有以下这些问题:
Git 不要只会 pull 和 push,试试这 5 条提高效率的命令!
谈谈技术人员如何做好团队管理
很多技术人员在职业上对自己要求高,工作勤奋,承担越来越大的责任,最终得到信任,被提拔到管理岗位。但是往往缺乏专业的管理知识,在工作中不能从整体范围优化工作流程,仍然是“个人贡献者”的工作方式,遇到问题自己上,经常耽误了本职工作。
于是翻了很多书,看了很多文章,学习了很多“为人处世的艺术”和“企业发展的战略”,最终把自己干成了研发部主管,技术却逐渐荒废。管理工作是什么呢,技术和管理是截然不同的两条发展方向吗?
不是的。技术和管理都要做到量化分析,全局优化,存在很多相似的方法。 这里用一个系统性能优化的场景举个例子,大家可以体会一下:
公司里有一个程序,运行在10台服务器的集群上。现在业务量增加了,请求处理不完。老板把你找来,要你优化这个程序。接到这个头疼的任务,你把开发测试运维各个部门的人都找来开会想办法,有人说数据库该升级了,有人说代码写的太烂要优化,有人说机器太少再加5台,还有人说我们要改架构上云,上了云以后就再也没有这种问题了。你该听谁的呢?
Git协同工作流,你该怎么选?
与其花时间在 Git 协同工作流上,还不如把时间花在调整软件架构和自动化软件生产和运维流程上来,这才是真正简化协同工作流程的根本
来源:https://time.geekbang.org/column/article/2440
与传统的代码版本管理工具相比,Git 有很多的优势,因而越来越成为程序员喜欢的版本管理工具。我觉得,Git 这个代码版本管理工具最大的优势有以下几个。
如何优雅地处理重复请求(并发请求)
对于一些用户请求,在某些情况下是可能重复发送的,如果是查询类操作并无大碍,但其中有些是涉及写入操作的,一旦重复了,可能会导致很严重的后果,例如交易的接口如果重复请求可能会重复下单。
重复的场景有可能是:
- 黑客拦截了请求,重放
- 前端/客户端因为某些原因请求重复发送了,或者用户在很短的时间内重复点击了
- 网关重发
- ….
本文讨论的是如何在服务端优雅地统一处理这种情况,如何禁止用户重复点击等客户端操作不在本文的讨论范畴。
MySQL Order By 文件排序,很多人搞不懂~
我们日常工作中写 SQL 语句,经常会使用 order by 对记录进行排序。如果 order by 能够使用索引中记录已经排好序的特性,就不需要再借助内存或磁盘空间进行排序,这无疑是效率最高的。然而,还是有各种情况导致 order by 不能够使用索引,而是要进行额外的排序操作。MySQL 把需要借助内存或磁盘空间进行的排序操作统称为文件排序,而没有在概念上进一步分为文件排序和内存排序。
本文讲述的文件排序逻辑基于 MySQL 5.7.35 源码。
git flow,如何设计合理的多人开发模式?
来源:https://time.geekbang.org/column/article/382342
一个企业级项目是由多人合作完成的,不同开发者在本地开发完代码之后,可能提交到同一个代码仓库,同一个开发者也可能同时开发几个功能特性。这种多人合作开发、多功能并行开发的特性如果处理不好,就会带来诸如丢失代码、合错代码、代码冲突等问题。
所以,在编码之前,我们需要设计一个合理的开发模式。又因为目前开发者基本都是基于 Git 进行开发的,所以本节课,我会教你怎么基于 Git 设计出一个合理的开发模式。
那么如何设计工作流呢?你可以根据需要,自己设计工作流,也可以采用业界沉淀下来的、设计好的、受欢迎的工作流。一方面,这些工作流经过长时间的实践,被证明是合理的;另一方面,采用一种被大家熟知且业界通用的工作流,会减少团队内部磨合的时间。在这一讲中,我会为你介绍 4 种受欢迎的工作流,你可以选择其中一种作为你的工作流设计。