新版博客发布,使用Middleman做为博客引擎

2014-04-23 12:46

在使用 Octopress 写博客 2年之后,有很多的新技术涌现,我决定更新一下博客引擎,并重新设计界面。

我需要的功能

  • 支持博客
  • 支持分类标签
  • 支持markdown,语法高亮
  • 支持Sass, CoffeScript
  • 支持开发,商业代码分离
  • 方便发布
  • 容易扩展
  • 容易升级依赖包,使用最新技术
  • 支持开发状态代码有改动时浏览器自动刷新(LiveReload)
Read more

Mac里快速输入特殊字符

2014-04-10 08:42
Mac

无意中发现的在Mac特殊字符输入方法。按住Option键的同时输入=,就会变成不等号(≠)了。 按住Option的同时按住Shift,又会有不同的变化。

Read more

解决Git stash冲突问题

2014-03-28 15:39
Git

本篇博文分享一下git stash以及他的实际使用技巧

  • Git stash 是什么,他的使用场景,以及如何来使用
  • Git stash pop 时冲突的解决方法
Read more

使用Chef来自动化部署

2013-11-22 23:55

本篇主要分享一下如何使用Chef进行快速部署一个应用到服务器。 为了讲解的需要这里做了一些假定。

  • 使用Vagrant作为一个测试服务器
  • 使用Rails开发了一个应用
  • 该应用使用了一台Postgresql数据库服务器
  • 该应用有一台memcached用来做缓存服务
  • 该应用使用Nginx作为Web服务器
Read more

Install Ruby with readline supported on Mac

2013-09-26 22:17

Just a memo for installing ruby on Mac OSX with the feature of typing Chinese under ruby console.

brew install readline ruby-build
RUBY_CONFIGURE_OPTS=--with-readline-dir=`brew --prefix readline` rbenv install 1.9.3-p286

or to use pure Ruby readline

Read more

Git revisions

2013-07-03 16:01
Git

这篇博文将使用一些代码来讲述Git使用中比较中级的技巧。

  • Git中 ^ 与 ~ 的区别
  • 假设从一个分支衍生出了另一个分支,如何取得该分支的所有递交列表
Read more

Speed spider for web crawling

2013-06-01 22:30

background

Some days ago I wanted to learn some css stuff from a site, I changed some css style to see what it turns to. After 10 minutes after I got tired when I have to change the source again and again in the browser. So I googled to find what kind of tools can be used to download files from a site, but I can’t find anything satisfied. So after searched github I found I can do it myself with little work.

Here comes the SpeedSpider, it’s A simple and speedy web spider for site pages downloading.

UPDATE:

It turns out wget can do all the jobs I wanted except it doest not use threads. So wget way may be slower than SpeedSpider. You can download bootstrap page with code below.

wget -m -p -E -k -np http://twitter.github.io/bootstrap
Read more

Use NFS to share files

2013-04-23 14:33

当一个服务器不能负载的时候,就需要增加一个服务器来做负载均衡,这个时候就需要做文件共享。 这一次我们来看看如何在ubuntu12.04上用nfs来做文件共享

Read more

Config DNS server for development

2013-04-22 19:28

开发的时候我们很多时候需要配置一个与线上相同的环境来做测试。 其中一项就是我们需要用线上相同的域名在做测试,这样就需要在开发环境里面配置域名映射。 最为简单的情况就是使用/etc/hosts,但是如果是有一团队来做测试,需要所有的人有相同的配置, 特别是有新成员来的时候,相同的工作要不厌其烦的重复做重复说明。

还有一种办法就是找一台机器来做域名解析服务,其实配置起来也不是很麻烦,下面就让我来讲一个简单的例子。

Read more

Use LVM with your server

2013-01-30 11:22

我们在使用服务器的时候会遇到各种各样的问题,比如今天要说的硬盘管理。

在服务器刚开始使用的时候一般只装配了现阶段要使用的容量,究其原因

  1. 资金有限,不能一步到位
  2. 前期无法得知需要多大容量,需要使用一段时间才能评估
  3. 类似需要时增加配额的策略

而如果当发现硬盘容量不够需要增加时,如果安装普通mount方法,需要准备一个更大的硬盘,把原始盘的内容复制过来。 这个操作会带来一定的风险:

  1. 复制需要一定的时间,在复制过程中原始盘内容可能又会增加
  2. 使用新盘后,原始盘多了出来,不能重复使用。
  3. 无法使用多盘来有效分散IO读写压力

使用LVM就可以克服以上的问题。

Read more