<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>blog // smallfish</title><link>https://smallfish.github.io/</link><description>Recent content on blog // smallfish</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Wed, 31 Dec 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://smallfish.github.io/index.xml" rel="self" type="application/rss+xml"/><item><title>My 2025</title><link>https://smallfish.github.io/2025/12/31/my-2025/</link><pubDate>Wed, 31 Dec 2025 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2025/12/31/my-2025/</guid><description>&lt;p>又是一年来到, 年末的天气 (杭州) 不是很美丽, 随缘记录&lt;/p></description></item><item><title>HappyCheers 快乐干杯!</title><link>https://smallfish.github.io/2025/01/15/happy-cheers/</link><pubDate>Wed, 15 Jan 2025 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2025/01/15/happy-cheers/</guid><description>&lt;p>新写了个 App 应用: &lt;b>&lt;u>HappyCheers&lt;/u>&lt;/b> (目前仅支持 iPhone) 应用截图参考: &lt;a href="https://apps.apple.com/cn/app/happycheers/id6740479756">App Store 地址&lt;/a>&lt;/p></description></item><item><title>My 2024</title><link>https://smallfish.github.io/2024/12/31/my-2024/</link><pubDate>Tue, 31 Dec 2024 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2024/12/31/my-2024/</guid><description>&lt;p>一年又一年, 记录下流水账和当前想法, 想到哪就记到哪吧.. 其实 ** 是没有记忆的&lt;/p></description></item><item><title>My 2023</title><link>https://smallfish.github.io/2023/12/31/my-2023/</link><pubDate>Sun, 31 Dec 2023 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2023/12/31/my-2023/</guid><description>&lt;p>时间一直去, 回忆真美丽&amp;hellip; 又是一年的碎碎念&lt;/p></description></item><item><title>covid-19</title><link>https://smallfish.github.io/2022/12/27/covid-19/</link><pubDate>Tue, 27 Dec 2022 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2022/12/27/covid-19/</guid><description>&lt;p>新冠 covid 中招碎碎帐&lt;/p></description></item><item><title/><link>https://smallfish.github.io/about/</link><pubDate>Tue, 28 May 2019 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/about/</guid><description/></item><item><title/><link>https://smallfish.github.io/archives/</link><pubDate>Tue, 28 May 2019 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/archives/</guid><description/></item><item><title>wrk 使用</title><link>https://smallfish.github.io/2018/01/18/wrk-tips/</link><pubDate>Thu, 18 Jan 2018 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2018/01/18/wrk-tips/</guid><description>&lt;p>wrk 使用小记，备忘用&lt;/p></description></item><item><title>docker supervisord 管理多进程的一些建议</title><link>https://smallfish.github.io/2017/12/12/docker-supervisord-tips/</link><pubDate>Tue, 12 Dec 2017 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2017/12/12/docker-supervisord-tips/</guid><description>&lt;p>上一次提到 supervisord 还是 2011 年 &lt;a href="https://smallfish.github.io/2011/05/31/python-supervisor/">python supervisor&lt;/a> 这里再补充一篇，基本上是这几年在 docker 里面的一些用法和建议。在容器里面是不太建议里面跑多个进程（服务）的玩法，但是有的时候实际业务在所难免&lt;/p></description></item><item><title>Go flag/kingpin 命令行解析多个同名参数</title><link>https://smallfish.github.io/2015/01/17/go-flag-multiple-values/</link><pubDate>Sat, 17 Jan 2015 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2015/01/17/go-flag-multiple-values/</guid><description>&lt;p>想了半天标题应该怎么写，都不太好表达，要的效果如下：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>xx --name&lt;span style="color:#f92672">=&lt;/span>aa --name&lt;span style="color:#f92672">=&lt;/span>bb&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;p>需要解析出 &lt;code>name&lt;/code> 参数，默认 &lt;code>flag&lt;/code> 解析后返回的是最后一个值，即：&lt;code>bb&lt;/code>&lt;/p></description></item><item><title>Docker Volume 属主设置</title><link>https://smallfish.github.io/2014/12/26/docker-volume-chown/</link><pubDate>Fri, 26 Dec 2014 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2014/12/26/docker-volume-chown/</guid><description>&lt;p>最近在测试 Volume 挂载时候有点问题，描述如下：&lt;/p></description></item><item><title>翻译-如何组织Go代码</title><link>https://smallfish.github.io/2014/11/06/organizing-go-code/</link><pubDate>Thu, 06 Nov 2014 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2014/11/06/organizing-go-code/</guid><description>&lt;p>原文地址：&lt;a href="http://talks.golang.org/2014/organizeio.slide">http://talks.golang.org/2014/organizeio.slide&lt;/a>，译文尽量贴近原文，会适当的增删，勿拍。&lt;/p>
&lt;p>包&lt;/p>
&lt;p>Go 程序都是由包构成，每个文件都以 &lt;code>package&lt;/code> 开头，程序主体执行从 &lt;code>main&lt;/code> 包开始：&lt;/p></description></item><item><title>PostgreSQL JSON 数据类型</title><link>https://smallfish.github.io/2014/07/25/postgresql-json/</link><pubDate>Fri, 25 Jul 2014 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2014/07/25/postgresql-json/</guid><description>&lt;p>从PostgreSQL 9.3版本开始，JSON已经成为内置数据类型，“一等公民”啦。&lt;/p></description></item><item><title>Test::Nginx 模块介绍</title><link>https://smallfish.github.io/2013/12/04/test-nginx/</link><pubDate>Wed, 04 Dec 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/12/04/test-nginx/</guid><description>&lt;p>先说句题外话，Perl的测试模块那真是相当的爽，不仅可以爽到无与伦比的正则，还可以对测试用例自由组合、乱序运行等等。&lt;/p>
&lt;p>Perl测试模块大概有如下：&lt;/p></description></item><item><title>PostgreSQL ARRAY 数据类型</title><link>https://smallfish.github.io/2013/11/28/postgresql-array/</link><pubDate>Thu, 28 Nov 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/11/28/postgresql-array/</guid><description>&lt;p>刚好手头有一个需求，是涉及到数组类型的，懒的插入多条数据库记录，想起了ARRAY数据类型。&lt;/p>
&lt;p>官方文档参考：&lt;/p></description></item><item><title>我的第一次马拉松（近期跑步总结）</title><link>https://smallfish.github.io/2013/11/03/hangzhou-malasong/</link><pubDate>Sun, 03 Nov 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/11/03/hangzhou-malasong/</guid><description>&lt;p>今年博客写的相当少，今天再来一篇非技术内容吧，源于今天刚好跑完了杭州马拉松（半马）。今年7月份开始计划跑步，从最初的4圈就气喘吁吁快跪的样子，一步一步的熬到现在可以轻松跑完10公里，当然仅仅是慢跑的水平。&lt;/p>
&lt;p>凭着一时冲动报名了半马（21km），虽然在规定的时间（3小时）内跑完，还是觉得跟自己最初的目标有点差距来着，原计划2小时跑完，结果跑完已经超过20多分钟。不过也是有原因的，简单总结一下吧。&lt;/p></description></item><item><title>Python Testing</title><link>https://smallfish.github.io/2013/09/12/python-testing/</link><pubDate>Thu, 12 Sep 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/09/12/python-testing/</guid><description>&lt;p>代码写多了越发觉得测试的重要性，之前一直喜欢“目测”的做法已经不值得推荐了。当然，这只是一个玩笑。&lt;/p>
&lt;p>在Python代码里测试大概有这么几种：&lt;a href="http://docs.python.org/2/library/doctest.html">doctest&lt;/a>、&lt;a href="http://docs.python.org/2/library/unittest.html">unittest&lt;/a>和&lt;a href="http://nose.readthedocs.org/en/latest/">nose&lt;/a>（第三方工具）。&lt;/p></description></item><item><title>Python Profile 工具性能分析</title><link>https://smallfish.github.io/2013/08/28/python-profile/</link><pubDate>Wed, 28 Aug 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/08/28/python-profile/</guid><description>&lt;p>最近碰到“程序速度大大降低”的说法，还是直接用数据说明比较有信服力，以及可以找出真正问题所在。&lt;/p>
&lt;p>Python自带了几个性能分析的模块：profile、cProfile和hotshot，使用方法基本都差不多，无非模块是纯Python还是用C写的。&lt;/p></description></item><item><title>RabbitMQ REST API</title><link>https://smallfish.github.io/2013/03/28/rabbitmq-http/</link><pubDate>Thu, 28 Mar 2013 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2013/03/28/rabbitmq-http/</guid><description>&lt;p>最近造了一个轮子：&lt;a href="https://github.com/smallfish/rabbitmq-http">rabbitmq-http&lt;/a>，源于内部项目的一个翻版。基于 &lt;a href="http://golang.org">Go&lt;/a> 语言实现。&lt;/p></description></item><item><title>RabbitMQ trace 日志调试</title><link>https://smallfish.github.io/2012/12/19/rabbitmq-trace/</link><pubDate>Wed, 19 Dec 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/12/19/rabbitmq-trace/</guid><description>&lt;p>RabbitMQ 默认日志里只有类似客户端“accpet/close”等信息，对于有异常或者跟踪消息内部结构就比较麻烦了。&lt;/p></description></item><item><title>Go 模块测试</title><link>https://smallfish.github.io/2012/12/07/golang-module-test-benchmark/</link><pubDate>Fri, 07 Dec 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/12/07/golang-module-test-benchmark/</guid><description>&lt;p>Go 很多地方都透露着“约定大于配置”的理论，比如测试、可见性、语法等等。&lt;/p></description></item><item><title>lua-resty-beanstalkd 模块教程</title><link>https://smallfish.github.io/2012/11/25/lua-resty-beanstalkd/</link><pubDate>Sun, 25 Nov 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/11/25/lua-resty-beanstalkd/</guid><description>&lt;p>本文涉及几个名词：&lt;/p>
&lt;ul>
&lt;li>
&lt;p>ngx_lua &lt;a href="http://wiki.nginx.org/HttpLuaModule">http://wiki.nginx.org/HttpLuaModule&lt;/a>&lt;/p></description></item><item><title>LuaJIT FFI 调用 Curl 示例</title><link>https://smallfish.github.io/2012/10/11/luajit-ffi-curl-example/</link><pubDate>Thu, 11 Oct 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/10/11/luajit-ffi-curl-example/</guid><description>&lt;p>&lt;a href="http://luajit.org">LuaJIT&lt;/a> 是一个好东西，比官方 &lt;a href="http://lua.org">Lua&lt;/a> 解释器性能上提升很多。ngx_lua/&lt;a href="http://openresty.org">ngx_openresty&lt;/a> 都推荐用 LuaJIT 来加速 Lua 代码。&lt;/p></description></item><item><title>Fabric 部署工具</title><link>https://smallfish.github.io/2012/08/30/deploy-with-fabric/</link><pubDate>Thu, 30 Aug 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/08/30/deploy-with-fabric/</guid><description>&lt;p>Fabric 是基于 SSH 协议的 Python 工具，相比传统的 ssh/scp 方式，用 Python 的语法写管理命令更易读也更容易扩展，管理单台或者多台机器犹如本地操作一般。&lt;/p></description></item><item><title>如何编写 Go 程序（最新版）</title><link>https://smallfish.github.io/2012/03/14/howto-write-golang-code/</link><pubDate>Wed, 14 Mar 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/03/14/howto-write-golang-code/</guid><description>&lt;p>官网文档（weekly）：&lt;a href="http://weekly.golang.org/doc/code.html">http://weekly.golang.org/doc/code.html&lt;/a>&lt;/p>
&lt;p>中文版（旧版）：&lt;a href="http://chenxiaoyu.org/2010/06/29/how-to-write-go.html">http://chenxiaoyu.org/2010/06/29/how-to-write-go.html&lt;/a>&lt;/p></description></item><item><title>Nginx GZip 压缩</title><link>https://smallfish.github.io/2012/03/08/nginx-gzip/</link><pubDate>Thu, 08 Mar 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/03/08/nginx-gzip/</guid><description>&lt;p>Nginx GZip 模块文档详见：&lt;a href="http://wiki.nginx.org/HttpGzipModule">http://wiki.nginx.org/HttpGzipModule&lt;/a>&lt;/p></description></item><item><title>Nginx-Lua HTTP 401 认证校验</title><link>https://smallfish.github.io/2012/02/08/nginx-lua-401-auth/</link><pubDate>Wed, 08 Feb 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/02/08/nginx-lua-401-auth/</guid><description>&lt;p>本文示例依赖模块：&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://github.com/chaoslawful/lua-nginx-module/tags">lua-nginx-module&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://github.com/FRiCKLE/ngx_coolkit">ngx_coolkit&lt;/a>（获取$remote_passwd 输入值）&lt;/li>
&lt;/ul>
&lt;p>如何编译Nginx这些扩展模块，请参考以前&lt;a href="http://chenxiaoyu.org/2011/10/30/nginx-modules.html">《Nginx 第三方模块试用记》&lt;/a>。&lt;/p></description></item><item><title>Nginx-Lua过滤POST请求</title><link>https://smallfish.github.io/2012/01/04/nginx-lua-post-max/</link><pubDate>Wed, 04 Jan 2012 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2012/01/04/nginx-lua-post-max/</guid><description>&lt;p>注：此文章会持续更新&lt;/p>
&lt;p>2012 来的几天关于Hash攻击的文章不断，基本语言级别的都收到影响。&lt;/p></description></item><item><title>JSON 美化输出</title><link>https://smallfish.github.io/2011/11/24/json-format/</link><pubDate>Thu, 24 Nov 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/11/24/json-format/</guid><description>&lt;p>经常会碰到一些返回 JSON 格式的应用，默认都是一大坨字一起显示，完全是虐待自己的眼睛。&lt;/p></description></item><item><title>Nginx Session 模块</title><link>https://smallfish.github.io/2011/11/09/nginx-session/</link><pubDate>Wed, 09 Nov 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/11/09/nginx-session/</guid><description>&lt;p>上一篇&lt;a href="http://chenxiaoyu.org/2011/10/30/nginx-modules.html">《Nginx第三方模块》&lt;/a>涉及了数据库、Memcached以及Lua的扩展，但是相对于Web开发是不是还缺点什么呢？答案是回话（Session）模块。&lt;/p>
&lt;p>这里还是需要感谢一下&lt;a href="http://weibo.com/agentzh">@agentzh&lt;/a>，已经封装好了encrypted-session模块。模块依赖ngx_devel_kit包。模块地址如下：&lt;/p></description></item><item><title>Nginx 第三方模块试用记</title><link>https://smallfish.github.io/2011/10/30/nginx-modules/</link><pubDate>Sun, 30 Oct 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/10/30/nginx-modules/</guid><description>&lt;p>最近试用了几个&lt;a href="http://weibo.com/agentzh">@agentzh&lt;/a>写的第三方&lt;a href="http://nginx.net">Nginx&lt;/a>模块，甚为愉悦，没想到在Nginx可以玩很多技巧和扩展，分享一下。&lt;/p>
&lt;p>本文尝试的几个模块大概分为：&lt;/p></description></item><item><title>auto-xhprof PHP自动性能测试工具</title><link>https://smallfish.github.io/2011/09/15/php-auto-xhprof/</link><pubDate>Thu, 15 Sep 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/09/15/php-auto-xhprof/</guid><description>&lt;p>auto-xhprof 项目地址： &lt;a href="https://github.com/smallfish/auto-xhprof">https://github.com/smallfish/auto-xhprof&lt;/a>&lt;/p></description></item><item><title>supervisor - Python进程管理工具</title><link>https://smallfish.github.io/2011/05/31/python-supervisor/</link><pubDate>Tue, 31 May 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/05/31/python-supervisor/</guid><description>&lt;p>经常会碰到要写一些守护进程，简单做法放入后台：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>shell&lt;span style="color:#f92672">&amp;gt;&lt;/span> nohup python xxx&lt;span style="color:#f92672">.&lt;/span>py &lt;span style="color:#f92672">&amp;amp;&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;p>偶尔这么做还可以接受，如果一堆这样的呢？&lt;/p></description></item><item><title>pythonbrew - Python多版本管理利器</title><link>https://smallfish.github.io/2011/04/03/multi-python-manage-pythonbrew/</link><pubDate>Sun, 03 Apr 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/04/03/multi-python-manage-pythonbrew/</guid><description>&lt;p>相信不少人在自己机器上有多个Python版本，我的机器上Python有四个版本：2.5.x、2.6.x、2.7和stackless。&lt;/p>
&lt;p>测试Google App Engine时候需要切换到2.5，正式调试时候回归到2.6，自己玩的时候会选择2.7或者stackless，每次都是通过bash profile来调整，或者手动加link。真麻烦那。。。&lt;/p></description></item><item><title>PostgreSQL Key-Value 数据类型 hstore 使用教程</title><link>https://smallfish.github.io/2011/02/19/postgresql-key-value-hstore/</link><pubDate>Sat, 19 Feb 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/02/19/postgresql-key-value-hstore/</guid><description>&lt;p>现在满地都是KV数据库的文字，PostgreSQL 也有类似的结构。不过是通过其强大的扩展方式实现的。&lt;/p></description></item><item><title>Pylons 入门实例教程 – 发布应用</title><link>https://smallfish.github.io/2011/02/19/pylons-tutorial-deploy-application/</link><pubDate>Sat, 19 Feb 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/02/19/pylons-tutorial-deploy-application/</guid><description>&lt;p>前面几篇教程简单讲述了如何使用 Pylons 进行 WEB 方面开发的步骤，包括简单的 Hello、表单和数据库操作等内容。本篇将描述一下如何在正式环境中发布基于 Pylons 的 WEB 应用。&lt;/p></description></item><item><title>Python Story</title><link>https://smallfish.github.io/2011/02/19/python-story/</link><pubDate>Sat, 19 Feb 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/02/19/python-story/</guid><description>&lt;p>&lt;span style="font-size:13px;line-height:19px;">&lt;a title="Python story" href="http://www.slideshare.net/nnfish/python-story" target="_blank">&lt;a href="http://www.slideshare.net/nnfish/python-story">http://www.slideshare.net/nnfish/python-story&lt;/a>&lt;/a>&lt;/span>&lt;/p></description></item><item><title>开源网页截屏工具 CutyCapt Linux 下安装和使用</title><link>https://smallfish.github.io/2011/02/19/cutycapt-for-linux/</link><pubDate>Sat, 19 Feb 2011 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2011/02/19/cutycapt-for-linux/</guid><description>&lt;p>目的是想在服务器端生成某个网页的缩略图。Google了好久，发现一个好开源东西：CutyCapt。&lt;/p>
&lt;p>系统：CentOS 5.5
官网：&lt;a href="http://cutycapt.sourceforge.net/">http://cutycapt.sourceforge.net/&lt;/a>
依赖：QT &lt;a href="http://www.qtsoftware.com/">http://www.qtsoftware.com/&lt;/a>&lt;/p></description></item><item><title>Pythonic 分享</title><link>https://smallfish.github.io/2010/08/07/pythonic-ppt/</link><pubDate>Sat, 07 Aug 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/08/07/pythonic-ppt/</guid><description>&lt;p>很荣幸收到龙哥 @hoorace 邀请去参加了杭州第四期程序员圆桌会议，顺带介绍了下最近在公司内部做的关于《Pythonic》分享。喜欢Python的可以下载看看把。&lt;/p></description></item><item><title>Pylons 入门实例教程 – cookie 和 session</title><link>https://smallfish.github.io/2010/07/03/pylons-tutorial-cookie-session/</link><pubDate>Sat, 03 Jul 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/07/03/pylons-tutorial-cookie-session/</guid><description>&lt;p>本篇讲述在 Pylons 里使用 cookie 和 session。&lt;/p></description></item><item><title>Pylons 入门实例教程 – 数据库操作</title><link>https://smallfish.github.io/2010/07/01/pylons-tutorial-database/</link><pubDate>Thu, 01 Jul 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/07/01/pylons-tutorial-database/</guid><description>&lt;p>前面两篇入门，讲述了 Pylons 大致开发的流程、表单以及文件上传，思路大致跟传统的开发类似。本篇简单讲述下在 Pylons 如何使用数据库。&lt;/p></description></item><item><title>Pylons 入门实例教程 – 表单和文件上传</title><link>https://smallfish.github.io/2010/06/30/pylons-tutorial-form-upload-file/</link><pubDate>Wed, 30 Jun 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/06/30/pylons-tutorial-form-upload-file/</guid><description>&lt;p>继续上一篇《&lt;a href="http://chenxiaoyu.org/2010/06/28/pylons-tutorial-hello.html">Pylons 入门实例教程 - Hello&lt;/a>》，现在开始讲在 Pylons 里如何提交表单和上传文件。&lt;/p></description></item><item><title>如何写 Go 代码？</title><link>https://smallfish.github.io/2010/06/29/how-to-write-go/</link><pubDate>Tue, 29 Jun 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/06/29/how-to-write-go/</guid><description>&lt;p>原文：&lt;a href="http://golang.org/doc/code.html">http://golang.org/doc/code.html&lt;/a>&lt;/p>
&lt;p>简述&lt;/p></description></item><item><title>Pylons 入门实例教程 - Hello</title><link>https://smallfish.github.io/2010/06/28/pylons-tutorial-hello/</link><pubDate>Mon, 28 Jun 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/06/28/pylons-tutorial-hello/</guid><description>&lt;p>&lt;a href="http://pylonshq.com/">http://pylonshq.com/&lt;/a>，当然，这些组件只是默认，你还可以根据自己喜好来选择其他组件，比如你可以采用 Jinja2 或 Genshi 模板，ORM也可以采用 SQLObject。完全是自由组合。&lt;/p></description></item><item><title>PostgreSQL COPY 导入/导出数据</title><link>https://smallfish.github.io/2010/06/02/postgresql-copy-dump-store/</link><pubDate>Wed, 02 Jun 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/06/02/postgresql-copy-dump-store/</guid><description>&lt;p>COPY 命令可以快速的导入数据到 PostgreSQL 中，文件格式类似CVS之类。适合批量导入数据，比 \i 和恢复数据表快。&lt;/p></description></item><item><title>Cython 教程 - 调用外部C语言函数</title><link>https://smallfish.github.io/2010/05/30/cython-extern-c/</link><pubDate>Sun, 30 May 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/05/30/cython-extern-c/</guid><description>&lt;p>一般情况完全可以在 Python 里导入 from math import sin 然后调用 sin() 函数。然而，调用C里面的 sin() 函数速度会更快，尤其在复杂的循环里。在 Cython 里可以这样声明和使用：&lt;/p></description></item><item><title>Go 语言模块安装工具：goinstall</title><link>https://smallfish.github.io/2010/05/30/goinstall/</link><pubDate>Sun, 30 May 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/05/30/goinstall/</guid><description>&lt;img src="http://golang.org/doc/logo-153x55.png" alt="" />
&lt;p>文档地址：&lt;a href="http://golang.org/cmd/goinstall/">http://golang.org/cmd/goinstall/&lt;/a>&lt;/p></description></item><item><title>【译】MongoDB 入门教程</title><link>https://smallfish.github.io/2010/04/27/mongodb-tutorail/</link><pubDate>Tue, 27 Apr 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/04/27/mongodb-tutorail/</guid><description>&lt;p>原文参见：&lt;a href="http://www.mongodb.org/display/DOCS/Tutorial">http://www.mongodb.org/display/DOCS/Tutorial&lt;/a>&lt;/p>
&lt;p>启动数据库&lt;/p></description></item><item><title>Python ConfigParser 与 ConfigObj INI 配置读写顺序</title><link>https://smallfish.github.io/2010/04/19/python-configparser-configobj/</link><pubDate>Mon, 19 Apr 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/04/19/python-configparser-configobj/</guid><description>&lt;p>默认的ConfigParser对于选项是按照字母顺序排列的。如下代码：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> &lt;span style="color:#f92672">from&lt;/span> ConfigParser &lt;span style="color:#f92672">import&lt;/span> ConfigParser
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf &lt;span style="color:#f92672">=&lt;/span> ConfigParser()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf&lt;span style="color:#f92672">.&lt;/span>add_section(&lt;span style="color:#e6db74">&amp;#39;d&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf&lt;span style="color:#f92672">.&lt;/span>set(&lt;span style="color:#e6db74">&amp;#39;d&amp;#39;&lt;/span>, &lt;span style="color:#e6db74">&amp;#39;name&amp;#39;&lt;/span>, &lt;span style="color:#e6db74">&amp;#39;smallfish&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf&lt;span style="color:#f92672">.&lt;/span>add_section(&lt;span style="color:#e6db74">&amp;#39;a&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf&lt;span style="color:#f92672">.&lt;/span>set(&lt;span style="color:#e6db74">&amp;#39;a&amp;#39;&lt;/span>, &lt;span style="color:#e6db74">&amp;#39;name&amp;#39;&lt;/span>, &lt;span style="color:#e6db74">&amp;#39;smallfish2&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf&lt;span style="color:#f92672">.&lt;/span>write(open(&lt;span style="color:#e6db74">&amp;#39;d:/a.ini&amp;#39;&lt;/span>, &lt;span style="color:#e6db74">&amp;#39;w&amp;#39;&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> cf &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#66d9ef">None&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;p>生成配置如下：&lt;/p></description></item><item><title>Nginx 启动/重启脚本笔记</title><link>https://smallfish.github.io/2010/03/27/nginx-setup-config/</link><pubDate>Sat, 27 Mar 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/03/27/nginx-setup-config/</guid><description>&lt;p>Nginx本身可以通过&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>kill &lt;span style="color:#f92672">-&lt;/span>HUP &lt;span style="color:#960050;background-color:#1e0010">`&lt;/span>cat &lt;span style="color:#f92672">/&lt;/span>usr&lt;span style="color:#f92672">/&lt;/span>local&lt;span style="color:#f92672">/&lt;/span>nginx&lt;span style="color:#f92672">/&lt;/span>logs&lt;span style="color:#f92672">/&lt;/span>nginx&lt;span style="color:#f92672">.&lt;/span>pid&lt;span style="color:#960050;background-color:#1e0010">`&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;p>进行平滑重启的，可以通过ps进程查看一下。效果还是挺不错的。&lt;/p></description></item><item><title>web.py 数据库操作指南</title><link>https://smallfish.github.io/2010/03/19/webpy-database-tutorial/</link><pubDate>Fri, 19 Mar 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/03/19/webpy-database-tutorial/</guid><description>&lt;p>官网地址：&lt;a href="http://webpy.org/">http://webpy.org/&lt;/a>&lt;/p>
&lt;p>web.py是一个小巧灵活的框架，最新稳定版是0.33。这里不介绍web开发部分，介绍下关于数据库的相关操作。&lt;/p></description></item><item><title>Python(Stackless) + MongoDB Apache 日志(2G)分析</title><link>https://smallfish.github.io/2010/03/04/python-stackless-mongodb-apache-log/</link><pubDate>Thu, 04 Mar 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/03/04/python-stackless-mongodb-apache-log/</guid><description>&lt;p>为何选择Stackless？ &lt;a href="http://www.stackless.com">http://www.stackless.com&lt;/a>&lt;/p>
&lt;p>Stackless可以简单的认为是Python一个增强版，最吸引眼球的非“微线程”莫属。微线程是轻量级的线程，与线程相比切换消耗的资源更小，线程内共享数据更加便捷。相比多线程代码更加简洁和可读。此项目是由EVE Online推出，在并发和性能上确实很强劲。安装和Python一样，可以考虑替换原系统Python。:)&lt;/p></description></item><item><title>PostgreSQL UUID 函数</title><link>https://smallfish.github.io/2010/02/26/postgresql-uuid/</link><pubDate>Fri, 26 Feb 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/02/26/postgresql-uuid/</guid><description>&lt;p>测试环境：PostgreSQL 8.4&lt;/p></description></item><item><title>PostgreSQL RPM 安装笔记</title><link>https://smallfish.github.io/2010/02/06/postgresql-rpm-setup/</link><pubDate>Sat, 06 Feb 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/02/06/postgresql-rpm-setup/</guid><description>&lt;p>测试环境：REHL 5.3
PostgreSQL版本：8.4.2&lt;/p></description></item><item><title>MySQL/PostgreSQL小命令对比</title><link>https://smallfish.github.io/2010/02/05/mysql-postgresql-command/</link><pubDate>Fri, 05 Feb 2010 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2010/02/05/mysql-postgresql-command/</guid><description>&lt;p>对比下一些两个数据库常用的操作。分别使用自带的client程序。&lt;/p>
&lt;p>MySQL命令行：&lt;/p></description></item><item><title>PostgreSQL Partitioning 表分区</title><link>https://smallfish.github.io/2009/12/22/postgresql-partitioning/</link><pubDate>Tue, 22 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/22/postgresql-partitioning/</guid><description>&lt;p>测试版本：pg 8.3 (ubuntu)&lt;/p></description></item><item><title>PostgreSQL tablespace 表空间</title><link>https://smallfish.github.io/2009/12/22/postgresql-tablespace/</link><pubDate>Tue, 22 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/22/postgresql-tablespace/</guid><description>&lt;p>pgsql允许管理员在文件系统里定义表空间存储位置，这样创建数据库对象时候就可以引用这个表空间了。好处就不用多说了，可以把数据库对象存储到不同的分区上，比如更好的存储之类。默认initdb之后会有两个表空间pg_global和pg_default。&lt;/p>
&lt;p>查看pgsql当前表空间有哪些可以试试下面：&lt;/p></description></item><item><title>C Apache Module 开发入门</title><link>https://smallfish.github.io/2009/12/16/hello-c-apache-module/</link><pubDate>Wed, 16 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/16/hello-c-apache-module/</guid><description>&lt;p>前言：&lt;/p>
&lt;p>扩展Apache模块开发网上大部分教程都是围绕Perl语言，老外的《Writing Apache Modules with Perl and C》可以算是经典之作了，可惜一直都是针对老版本开发，而且主力语言是Perl，C语言部分只是略有介绍。不过相比较而言用Perl来扩展模块功能确实比 C语言来的快速以及便捷多了，也简单容易。我自己也在工作里应用了一部分，主要是在防盗链上面写了两个简单都模块，可以参考我写的另外两篇文章：&lt;a href="http://chenxiaoyu.org/blog/archives/120">http://chenxiaoyu.org/blog/archives/120&lt;/a>。说了那么多题外话，回到正题，这里只是用C语言实现一个简单的hello模块，模块功能是查询MySQL自带mysql数据库里都user表。&lt;/p></description></item><item><title>Java调用Linux SCP操作</title><link>https://smallfish.github.io/2009/12/16/use-java-for-linux-scp/</link><pubDate>Wed, 16 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/16/use-java-for-linux-scp/</guid><description>&lt;p>先来回顾下linux下scp命令的用法：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>[shell &lt;span style="color:#960050;background-color:#1e0010">$&lt;/span>] scp &lt;span style="color:#f92672">-&lt;/span>r &lt;span style="color:#f92672">/&lt;/span>本地目录或文件 user&lt;span style="color:#f92672">@&lt;/span>&lt;span style="color:#ae81ff">192.168.0.110&lt;/span>:&lt;span style="color:#f92672">/&lt;/span>远程目录&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;p>这条命令是把本地的目录或者文件拷贝到远程192.168.0.110一个目录下，如果是从远程拷到本地，则反一下ip和目录。-r则是递归目录。更多参见scp &amp;ndash;help&lt;/p></description></item><item><title>SSH, SCP 不输入密码</title><link>https://smallfish.github.io/2009/12/16/ssh-scp-use-none-password/</link><pubDate>Wed, 16 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/16/ssh-scp-use-none-password/</guid><description>&lt;p>经常在不同linux机器之间互相scp拷文件，每次总是要输入密码才可行。&lt;/p>
&lt;p>通过ssh-keygen生成公钥，在两台机器之间互相建立信任通道即可。假设本地机器client，远程机器为server。&lt;/p></description></item><item><title>修改 ModPython 下 PYTHON_EGG_CACHE 报错</title><link>https://smallfish.github.io/2009/12/16/modpython-python_egg_cache-error/</link><pubDate>Wed, 16 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/16/modpython-python_egg_cache-error/</guid><description>&lt;p>环境：Linux Apache Python(mod_python)&lt;/p></description></item><item><title>Apache Mod_Perl 防盗链</title><link>https://smallfish.github.io/2009/12/15/apache-mod-perl-check-url/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/apache-mod-perl-check-url/</guid><description>&lt;p>大体思路是这样的，比如有 一个地址：http://www.aa.com/down/1.mp3，不幸搜索引擎或者迅雷扒到了，就无偿为他们奉献流量了。 但是假如在http://www.aa.com/down/1.mp3?key=123，key参数每天变化或者几分钟变化一次，在apache服务端校 验下这个参数，不正确则显示拒绝访问或者找不到的话，那样防盗链的效果就算达到了把。&lt;/p></description></item><item><title>Apache Mod_Perl实现 URL Rewrite</title><link>https://smallfish.github.io/2009/12/15/apache-mod-perl-urlrewrite/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/apache-mod-perl-urlrewrite/</guid><description>&lt;p>相信apache的mod_rewrite模块都很熟悉了，今天这儿换个思路，利用mod_perl来实现下，发现竟然是如此的简单！&lt;/p>
&lt;p>首先得保证apache已经安装了mod_perl模块，具体安装配置可以看上一篇文章哦。&lt;/p></description></item><item><title>Apache 虚拟主机配置笔记</title><link>https://smallfish.github.io/2009/12/15/apache-vhost-config/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/apache-vhost-config/</guid><description>&lt;p>环境：Linux Apache2.2 （路径 /usr/local/apache）&lt;/p></description></item><item><title>Memcached Java/Python Client API 共享</title><link>https://smallfish.github.io/2009/12/15/memcached-java-python-client-share/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/memcached-java-python-client-share/</guid><description>&lt;p>用Python写了一个计划任务，定时更新Memcached中一个key值，写的很happy，几分钟搞定。&lt;/p>
&lt;p>然后在Java Servlet测试，代码写的也很happy，编译 - 刷新，一气呵成。&lt;/p></description></item><item><title>mysqldumpslow 慢查询日志分析工具</title><link>https://smallfish.github.io/2009/12/15/use-mysqldumpslow/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/use-mysqldumpslow/</guid><description>&lt;p>mysql自带的这个玩意挺好使的，可以对慢查询里的sql进行排序、计算等操作。&lt;/p>
&lt;p>首先得配置my.cnf：&lt;/p></description></item><item><title>Perl 批量跳过 MySQL Slave 复制错误</title><link>https://smallfish.github.io/2009/12/15/use-perl-skip-mysql-slave-error/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/use-perl-skip-mysql-slave-error/</guid><description>&lt;p>发现mysql slave服务器经常因为一些特殊字符或者符号产生的更新语句报错，整个同步也会因此而卡在那，最初的办法只是手动去出错的机器，执行下面三条sql语句，跳过错误即可。&lt;/p></description></item><item><title>Pexpect通过SSH执行远程命令</title><link>https://smallfish.github.io/2009/12/15/use-pexpect-for-ssh-remote/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/use-pexpect-for-ssh-remote/</guid><description>&lt;p>pexpect是python一个模块，可以通过：easy_install pexpect 来安装。&lt;/p></description></item><item><title>SSH Tunnel Memcached</title><link>https://smallfish.github.io/2009/12/15/ssh-tunnel-for-memcached/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/ssh-tunnel-for-memcached/</guid><description>&lt;p>最近一台服务器放进了移动机房，需要访问原电信机房一台Memcached服务器，Memcached服务是以内网形式启动。&lt;/p>
&lt;p>依靠google大神，搜索出解决思路，在本地起一个SSH链接，通过本地一个端口实现对另外机器的映射或者叫做转发。&lt;/p></description></item><item><title>使用 Perl 快速解析 Apache Log</title><link>https://smallfish.github.io/2009/12/15/use-perl-parse-apache-log/</link><pubDate>Tue, 15 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/15/use-perl-parse-apache-log/</guid><description>&lt;p>功能简述&lt;/p>
&lt;p>统计出日志里一个或多个页面总共访问的次数，比如aa.jsp, bb.jsp这样页面分别多少次。&lt;/p></description></item><item><title>emacs windows配置笔记</title><link>https://smallfish.github.io/2009/12/10/emacs-windows-config/</link><pubDate>Thu, 10 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/10/emacs-windows-config/</guid><description>&lt;p>俺最新.emcas配置地址是：&lt;a href="http://github.com/smallfish/editor/blob/master/emacs/.emacs">http://github.com/smallfish/editor/blob/master/emacs/.emacs&lt;/a>&lt;/p>
&lt;p>最近手痒，看到不少牛x人物都是用emacs，遂在windows下装一个玩玩。&lt;/p></description></item><item><title>使用Git维护你的网站</title><link>https://smallfish.github.io/2009/12/08/use-git-for-web/</link><pubDate>Tue, 08 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/08/use-git-for-web/</guid><description>&lt;img class="alignnone size-full wp-image-92" title="git-tree" src="http://chenxiaoyu.org/wp-content/uploads/2009/12/git-tree.gif" alt="git-tree" width="263" height="316" />
&lt;p>简介&lt;/p></description></item><item><title>tornado.database添加PooledDB连接池功能</title><link>https://smallfish.github.io/2009/12/01/python-tornado-dbutil/</link><pubDate>Tue, 01 Dec 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/12/01/python-tornado-dbutil/</guid><description>&lt;p>tornado.database模块简单包装了下对MySQL的操作，短小精悍。&lt;/p>
&lt;p>无奈源码中无连接池功能，遂加上了一段DBUtils模块功能。&lt;/p></description></item><item><title>Pysvn 程序员指南</title><link>https://smallfish.github.io/2009/11/20/pysvn-tutorial/</link><pubDate>Fri, 20 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/20/pysvn-tutorial/</guid><description>&lt;p>这是一篇关于pysvn模块的指南.&lt;/p>
&lt;p>完整和详细的API请参考 &lt;a href="http://pysvn.tigris.org/docs/pysvn_prog_ref.html">http://pysvn.tigris.org/docs/pysvn_prog_ref.html&lt;/a>.&lt;/p></description></item><item><title>Cython参考指南 - 编译</title><link>https://smallfish.github.io/2009/11/19/cython-compile/</link><pubDate>Thu, 19 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/19/cython-compile/</guid><description>&lt;p>Cython代码跟Python不一样，必须要编译。&lt;/p>
&lt;p>编译经过两个阶段：&lt;/p></description></item><item><title>Win Python Pyrex 扩展</title><link>https://smallfish.github.io/2009/11/17/python-pyrex-for-win/</link><pubDate>Tue, 17 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/17/python-pyrex-for-win/</guid><description>&lt;p>在偶的ubuntu里编写pyrex程序编译成so还是挺爽的，用 timeit.Timer 测试性能提升不少，今天在windows也尝试了一番。&lt;/p></description></item><item><title>MySQL Query Profile 简单使用</title><link>https://smallfish.github.io/2009/11/16/mysql-query-profile/</link><pubDate>Mon, 16 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/16/mysql-query-profile/</guid><description>&lt;p>MySQL Query Profile MySQL 5.0.37 以上开始支持 MySQL Query Profiler, 可以查询到此 SQL 会执行多少时间, 并看出 CPU/Memory 使用量, 执行过程中 System lock, Table lock 花多少时间等等.&lt;/p></description></item><item><title>Google App Engine 上试用 web.py 笔记</title><link>https://smallfish.github.io/2009/11/10/google-appengine-webpy/</link><pubDate>Tue, 10 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/10/google-appengine-webpy/</guid><description>&lt;p>看到有人在坛子里询问在GAE如何发布web.py有关问题，就尝试了一把。具体安装和使用过程如下，请对照自己本地路径相应修改：&lt;/p>
&lt;ol>
&lt;li>复制本地对应web.py目录到GAE对应应用目录&lt;/li>
&lt;/ol>
&lt;p>比如：D:\Python25\Lib\site-packages\web 到 e:\googleapp\pynotes&lt;/p></description></item><item><title>Python Mako Template 学习笔记</title><link>https://smallfish.github.io/2009/11/10/python-mako-template/</link><pubDate>Tue, 10 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/10/python-mako-template/</guid><description>&lt;p>Mako是什么？Moko是Python写的一个模板库，Python官网&lt;a href="http://python.org/">http://python.org/&lt;/a>用的就是它哦。其他废话也就不累赘了，直接来点代码，方便阅读与了解把。&lt;/p>
&lt;p>(Mako官网地址：&lt;a href="http://www.makotemplates.org/">http://www.makotemplates.org/&lt;/a> ，可以下载安装包，推荐使用easy_install安装)&lt;/p></description></item><item><title>Python MySQL 库安装笔记</title><link>https://smallfish.github.io/2009/11/10/python-mysql-install/</link><pubDate>Tue, 10 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/10/python-mysql-install/</guid><description>&lt;p>其实MySQL-python安装很简直，以前一直也没在意，今天发觉换了1.2.3新版本，ms蹦出很多问题来了。
做个记录，防止以后有问题无处可查。&lt;/p></description></item><item><title>Python MySQLdb 查询返回字典结构</title><link>https://smallfish.github.io/2009/11/10/python-mysqldb-return-dict/</link><pubDate>Tue, 10 Nov 2009 00:00:00 +0000</pubDate><guid>https://smallfish.github.io/2009/11/10/python-mysqldb-return-dict/</guid><description>&lt;p>MySQLdb默认查询结果都是返回tuple，输出时候不是很方便，必须按照0，1这样读取，无意中在网上找到简单的修改方法，就是传递一个cursors.DictCursor就行。&lt;/p>
&lt;p>默认程序：&lt;/p></description></item></channel></rss>