Monthly Archives: 五月 2013

rails 中使用 mysql 的 MEDIUMTEXT 数据类型

接收用户的数据,像论坛的内容、博客的内容等等这样的数据,rails 中的 text 类型 默认使用的是 mysql 中的 TEXT 类型,该类型默认只能容纳 65535 bytes (~64kb), 要想使用 MEDIUMTEXT 或者 LONGTEXT 类型,只需要加上 limit 参数即可,比如想使用 MEDIUMTEXT 类型, 使用 add_column :table, :column, :text, limit: 64.kilobytes + 1,limit 参数比 65535 大 1 就是 在 MEDIUMTEXT 范围内,就会自动使用 MEDIUMTEXT, LONGTEXT … Continue reading

Posted in ruby on rails | Tagged , | Leave a comment

服务器/vps ubuntu 和 centos 选哪个?

在国内 Linux 服务器市场中,应该 ubuntu 和 centos 要占一半以上的市场, 最近折腾了 N 个 VPS,基本都是在这 2 个系统中折腾。 2 个系统的稳定性都没得说,只是包管理不一样,选择哪个系统大多数是在选包管理。 yum,官方的源软件老、量少,连个 htop 也得用第三方源 apt,比 yum 好一些 所以使用 centos,一开始你就要添加各种第三方 yum 源,使用起来才爽;而 ubuntu 的 apt,肯定也不是最新的软件版本,但也不至于太老,说的过去,能用,软件的数量也比 yum 多 很多,不是有特殊需要,一般不需要添加其它源。 我现在有 ubuntu 就用这个,没有的话 centos 顶上。

Posted in Linux | Tagged , , , | Leave a comment

Python 2.7 中的 xreadlines unicode 中文编码陷阱

Python 2.x 自从有了 from __future__ import unicode_literals 之后编码问题貌似好多了,内部统一使用 unicode 编码,输出的终端也能根据终端的编码自动 转换,对于外部的文件读写也有了 codecs ,可以轻松搞定编码问题。 但是,但是, xreadlines 是个陷阱 通过 readlines 和 readline 读取的内容都能自动转换成 unicode 类型,而 xreadlines 还是 str 类型。

Posted in Python | Tagged , , | 1 Comment

使用 rbenv 代替 rvm

之前一直使用 rvm,本地使用还好,没什么不好的地方,但是在服务器上需要开机启动 unicorn,这个就有些麻烦了,之前写过方法,很麻烦 看到 rbenv,就在本地用了下,非常好,有意想不到的效果,mac 上安装 ruby 2.0,他能自动把最新的 openssl 1.0.1e 安装上,rvm 的话需要先安装 homebrew ,使用 homebrew 安装最新的 openssl,然后才能安装 ruby 2.0 本地使用还有一点和 rvm 不同,rvm 可以直接执行 rake,用了 rbenv 之后需要使用 bundle exec rake … 方法执行 rake,不然会遇到版本问题 服务器上开机执行 unicorn,就比 rvm 太简单了, 直接在脚本里面加上下面一行就可以了 PATH=$HOME/.rbenv/bin:$HOME/.rbenv/shims:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 综合来说 rbenv … Continue reading

Posted in ruby on rails | Tagged , | Leave a comment