使用incron监视文件变动以及避免incron多次触发

此博客使用的是incron来监视Dropbox的文件变动,然后自动生成最新的页面。

incron的基本使用

CentOS / Red Hat:

1
sodo yum install -y incron

debian:

1
sodo apt-get install incron

然后su youruser到想要执行脚本的用户,键入incrontab -e

比如,我想监视/home/www/blog文件夹下的增删改移,并且一旦检测到就执行runhexo.sh的话,就输入:

1
/home/www/blog IN_MODIFY,IN_CREATE,IN_DELETE,IN_MOVE /home/www/runhexo.sh

保存退出。

之后执行systemctl enable incrond && systemctl start incrond开启incron的deamon。

incron的log默认在/var/log/cron

然后,开启incron以及设置自动开启:

1
2
service incrond start
chkconfig incrond on

#incron多次触发的避免

其实很简单,创建一个lock file就好,比如:

1
2
3
4
5
6
#!/bin/bash
if [ ! -f /var/lock/runhexo ]; then
touch /var/lock/runhexo
cd /home/www/blog && ls -al
rm -rf /var/lock/runhexo
fi

用GoogleMaps的API生成经纬度-城市名表

今天和同事聊天,突然提到怎么通过经纬度获取城市信息。找了一下网上似乎没有现成的数据库,于是用了半小时撸了个暴力程序。

原理就是:

  1. 弄个线程池
  2. 暴力调用GoogleAPI去获取位置信息
  3. 记在redis里面

本文仅为娱乐,因为有现成的数据库。请看末尾链接

博客启用http2+nginx1.9.5

0x01

之前由于种种原因(更多是顾忌seo)没有采用https,但是这次在nginx发布了1.9.5版本后,正式支持了HTTP/2 module的支持(之前是通过打Patch):。并且早些时候Chrome宣布将停止支持SPDY,以及百度不久前正式宣布无差别收录https网站,所以果断趁着nginx发布版本,给网站换上了https。

OS X下让supervisor开机启动,以及权限、环境变量、codesign问题

项目使用到一套自己搭建的web操作平台。该平台用python+flask+redis+git+svn进行自动化操作。其启动脚本采用的是supervisor来管理。

今天想让开机自动运行supervisor,于是进行了一番尝试。

我们的目标

当然,不是“没有蛀牙”。

下文模拟的目标是

系统启动时 无需 登陆,用supervisord启动某supervisord.conf。

看似很简单,其实踩了不少坑。

博客迁移至ConoHa,再见DigitalOcean(附优惠券和节点测评)

2016-4-26更新: 邀请送日元已失效。且博客已不在Conoha。因其速度实在难以令人满意。

(点文章内邀请链接注册即送1000日元) (不过我当时注册就没点,少赚了几十大洋T=T)

DigitalOcean的VPS最近被各种墙,微博API审核也通不过,说打不开页面。当然梯子也经常无法用。估计已经被华人玩坏了吧。

所以在权衡很久之后,选择了ConoHa的VPS。

ConoHaLogo

这家公司提供多个地区的VPS,分别是

  • 日本东京 900日元/月
  • 新加坡 1170日元/月
  • 美国 1170日元/月

以上的最低配置是

  • 2 core
  • 1GB ram
  • 50GB ssd

我申请了好几个东京和新加坡的节点,下面说下测试的结果

测试的结论(没保留Benchmark的数据):

【游戏推荐】Lifeline-我们的征途是星辰大海

loading

蝴蝶效应(The Butterfly Effect)是指在一个动力系统中,初始条件下微小的变化能带动整个系统的长期的巨大的连锁反应。这是一种混沌现象。任何事物发展均存在定数与变数,事物在发展过程中其发展轨迹有规律可循,同时也存在不可测的“变数”,往往还会适得其反,一个微小的变化能影响事物的发展,说明事物的发展具有复杂性。