配置主从PostgreSQL数据库

2014-09-05 16:47

背景

数据库的数据量开始增多,负载开始变高,需要做一个数据库主从配置。

数据量,单表超过了100万条数据,应用程序做读写分离,写到主数据库,读从从数据库。

步骤

  • 生成操作用的用户
  • 配置主数据库,激活备份模式
  • 关停从数据库,复制数据
  • 配置从数据库,从主数据库同步数据

生成操作用的用户

sudo apt-get install postgresql
sudo -s postgres
psql -c "CREATE USER rep REPLICATION LOGIN CONNECTION...
Read more

详解Ruby里用到的比较函数(equal?, eql?, ==, ===)

2014-07-05 18:10

Ruby里面有4种比较方法,equal?, eql?, ==, ===,而且在不同的类里面表现的很不一样。在使用的时候也特别容易搞糊涂。 这篇博文将演示一些代码来讲解各个方法。

== - 类意义上的 相等,需要每个类自己定义实现

在特定类中觉得两个对象是否相同,需要看业务上的逻辑表象,所有由程序员覆盖该方法的定义,决定两个对象是否相同。

比如 String 类,他是来计较实际的文字串是否相同,而不在意是否来自同一个内存区域。

>> a = "abc"
#=> "abc"

>> b 
Read more

使用 chinacity 从国家统计局官网取最新城市数据

2014-06-30 20:09

最近项目里需要用到中国城市数据,看了几个Gem,发现数据都不是最新的,遂写了个Gem chinacity 用来从国家统计局取最新数据。

因为考虑到城市类基础数据一旦开始使用,id与别的数据关联后就比较难再更新数据了,所以就做成只取数据生成文件的简单小工具。

功能

  • 从国家统计局官网取最新数据。
  • 支持导出 JSON,CSV格式
  • JSON 数据 兼容 china_city Gem 的数据格式
  • 支持同时导出拼音缩写

用法

导出JSON格式

$ chinacity > areas.json
Read more

独立博客,自媒体第一步

2014-04-28 00:27

自媒体

流行年年有,每年各不同。

自媒体应该是2013年的流行词之一了,搭上微信的强大功能可以说推动了整个自媒体运动。 而自媒体自然成了2013年的宠儿,有人断言自媒体是现在为止最为有效的营销手段。

博客也曾风靡一时,而后有了微博之后全民注意力转移到了微博,现在微信出来之后大家又把目光移到了微信上面。 我不否认微信的强大魅力,新生事物能够获得关注已经说明了他自身的价值。 但是我不觉得她能替代博客与微博,她们每个都有自己独特的适用场景。

  • 博客写长篇日志,做高质量内容
  • 微博适合营销传播,扩散...
Read more

新版博客发布,使用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