python2与python3踩坑(持续更新...)

python2与python3踩坑(持续更新…)

阅读全文

nginx旁路

旁路的目的是为了把请求复制一份发到另外的服务上去。这样就可以不影响主流程的情况下 处理额外的逻辑了。最简单的方式就是让nginx把请求发出去,这样我们只要改配置就行了, 而不用改代码。相对于开发,测试回归的成本往往要高很多。

阅读全文

nginx配置http basic认证

http basic认证允许我们对自己的web服务器做简单的认证。可以适当的防止别人浏览器我们 的页面。

阅读全文

golang channel有没buffer的区别

初学golang的很多人对buffer大小为0和1的channel都不了解。

下面通过make(chan bool)make(chan bool, 1)的例子说明它们的区别。

阅读全文

strace命令介绍

linux下跟踪系统调用和信号的命令。

阅读全文

linux只允许程序的一个进程实例运行

有的时候,我们需要确保当前只有一个进程实例在运行。特别是定时跑定时任务的时候。

unix/linux的cron可以配置定时任务,让它在指定的时间运行。但是,只要到任务指定的时 间,cron就会fork一个新的进程来执行任务,它不会保证前一个任务运行完成了,下一个任 务才开始。而有时我们却需要只能有一个实例运行。

阅读全文

计算机类专业怎么读

前几天看到红满堂发的照片,17级开学了。那已经离我7年之久了,这里给华农众多的新生 计算机师弟师妹一些建议,因为自己曾经一个人走太坎坷,希望这些建议可以帮助师弟师妹 的路可走得更顺一些。

阅读全文

golang定时任务cron

做后台经常会要写一些定时任务,让它定时执行。一般我们都会使用unix/linux自带cron 来做这个工作。但是cron有时并不是那么友好。比如:

  1. 时间粒度大,最小的粒度是分钟级的,而且你不能确保在一分钟内的第几秒执行任务。
  2. 每次任务都是开启新一个进程,开销大。
  3. 如果任务没有执行时,我们不好做监控。
  4. 不好锁定资源,因为每次都是一个新进程,但是有时我们的任务不能多个实例同时进行。

对于golang,我们可以使用cron来完成任务,而且可以解决以上的问题。

阅读全文

hexo博客push到github的后自动部署到github pages

博文写好完,每次除了要把它push到存储博文的仓库,还要执行hexo d才能部署到github pages。人都是懒惰的,多执行一个命令都懒。不信的话,按以下设置好后,就再也不想执行 hexo d了。

阅读全文

introduce-docker

这篇文章是只是简单的入门,所以这里会教你怎么可以简单的上手。比如以前完全没有用过 docker,现在要跑一个服务要用docker来跑。

阅读全文