MongoDB 的复制集

MongoDB 如今还是很受欢迎的,毕竟它简单易用,方便拓展等等,然后它的一些高级功能不知道你有没有了解过,比如它的复制集。

为何需要复制集

假如经历过业务量的慢慢增长,就能感受到数据库拓展过程中的一些痛苦,以及,复制集的重要性了。毕竟单台机器的性能总是有限的,等业务量到达一定程度,就需要考虑使用多台来分散读写压力,常见的业务场景中,我们面对的都是读多写少的场景,因此,可以在相当的一段时间里,只考虑 分散读的压力

阅读全文

善用工具,节约时间

这个月似乎忙得晕头转向了,一到该写的日子,什么灵感都没,于是拖了一天,最后打算总结下自己的一些 DevOps 技巧以及比较好用的工具。

工具列表

Gitlab CI

这是必须的内容,每个我经手的项目,必须要有 CI 功能,其中会选择性加入代码静态检查以及单元测试等步骤,另外就是编译打包 Docker 镜像步骤,方便之后的部署。

阅读全文

谈谈 996.ICU:原来我们可以这样抗争

最近这一两周里,996.ICU 成了热门,我也不免随了这股大流,毕竟,这是切身相关的。

阅读全文

权限引擎之 casbin

上次介绍了权限系统的设计 后,这次我们来说说如何实现系统的实现。

阅读全文

系统权限的设计

今天,我们来说说系统设计中的权限设计(其实是为了之后写实践做铺垫 🌝)。

前言

一般来说,我们在设计与人有交互的系统时,如果涉及到多用户能对同类资源进行操作的时候,就会有区分权限的需求了。

阅读全文

为何 C++ 静态链接库顺序很重要

自从换了新环境,逐渐接触了一些机器学习相关库的过程中,不可避免的开始捡回 C/C++ 的一些知识,之后也会写一些 C/C++ 相关的文章。

一个编译错误

今天,我们从一个编译错误说起,之后再复习相关的知识:

阅读全文

《大江东去》读后感

历经一个月左右,断断续续把这三部曲看完了,这部小说是之前挺火的电视剧《大江大河》的原著小说,作者阿耐,那时候看了介绍之后,本想看电视剧,但是想到看电视剧太费时间,不如看小说了,而且还能感受到原著的原汁原味,而且小说有三部,电视剧貌似只拍了第一部。

注意:以下内容会有剧透,谨慎观看。

阅读全文

Golang 中的跨语言调用

今天,我们来说说 cgo。

前言

在有些特殊的场景下,我们会有这样的困扰:

  1. 当前开发语言的性能仍不够,比如视频处理(直播领域)、机器学习以及游戏;

阅读全文

听说你年会上又没中奖?

快回家过年了,伴随着各家公司年会的进行,最让人期待的莫过于抽奖环节了,伴随着台上老板宣布哪个哪个人中奖的时候,相信大部分人还是属于跟我差不多的类型:『中奖绝缘体』。

阅读全文

2018 年总结

2018 年总结

时间过得真快,一眨眼,2018 年要过去了,而 2017 年的总结 仿佛近在昨日,总体来说,今年感觉是成长有限。

先罗列几个数字:

  • 28 篇博客
  • 50 本书
  • 0 个女朋友
  • 6 处旅游地点
  • 3 个轮子

显然,被 2018 年给打脸了,肚子没减掉,来了深圳之后,见爸妈的机会也少了,博客内容受欢迎不如预期,主动认识的朋友也有限,女朋友与股市一样:没希望。

好了,脸打完,还是得回顾下自己这一年到底瞎干了啥。

阅读全文

Golang 中的测试

长期以来,有时候会不重视测试,尤其是赶项目时间的时候,而近来自己可以规划的时间多了之后,就开始想,如何才能把测试做好。

在这个实践测试的过程中,我也开始对一些设计原则有了更深一步的理解与思考。

杰出的开发者每编码一小时,就会花上两小时进行测试。 – Bruce Rosenblum, Disney-ABC TV Group President Of Business Operations

阅读全文

Golang 中的错误处理

错误处理在编程处理中,可谓是最重要也是最伤脑筋的一块内容,因为在绝大多数情况下,正确的途径只有几条,而剩下的几十上百种的情况便都是错误了,不同意?编译原理中提到的编译器了解下 :P 。

阅读全文

Golang 中的 stream

数据流的概念其实非常基础,最早是在通讯领域使用的概念,这个概念最初在 1998 年由 Henzinger 在文献 87 中提出,他将数据流定义为 “只能以事先规定好的顺序被读取一次的数据的一个序列”。[1]

阅读全文

当我换工作时我谈些什么

辞职换工作已有一月有余,正是可以谈谈这件事情的时候,而我选现在这个时间点来谈谈这件事情,也是为了想比较客观地谈谈这件事情。

阅读全文

Helm 实践之持续交付

这是 Helm 系列的第三篇,在前两篇中,我介绍了 Helm 的 入门 以及 配置实践,而今天我们来说说 Helm 持续发布的实践。

阅读全文