Archive for 五月, 2010

Go 语言模块安装工具:goinstall

By admin - Last updated: 星期日, 五月 30, 2010

文档地址:http://golang.org/cmd/goinstall/ Go模块列表:http://godashboard.appspot.com/package goinstall 主要是方便安装第三方模块,目前支持 hg(mercurial),git,svn三种版本控制系统。 下面来举例怎么安装 web.go 模块。源地址是:http://github.com/hoisie/web.go [email protected]:~$ goinstall -dashboard=true github.com/hoisie/web.go 根据网速快慢,过一段时间会结束。期间木有任何提示。(可以加上 -v=true 参数,可以显示安装过程和提示。) 查看下安装的目录和路径: [email protected]:~$ ls $GOROOT/src/pkg/github.com/hoisie/web.go/ examples _go_.8 Makefile Readme.md scgi.go status.go web_test.go fcgi.go LICENSE _obj request.go servefile.go web.go 代码示例: import (web “github.com/hoisie/web.go”) 另外注意点,官方文档里 -update 选项现在版本里已经缩写,改成 -u。

Cython 教程 – 调用外部C语言函数

By admin - Last updated: 星期日, 五月 30, 2010

一般情况完全可以在 Python 里导入 from math import sin 然后调用 sin() 函数。然而,调用C里面的 sin() 函数速度会更快,尤其在复杂的循环里。在 Cython 里可以这样声明和使用: cdef extern from “math.h”: double sin(double) cdef double f(double x): return sin(x*x) 请注意,上面的代码声明了 math.h 里的函数,提供给 Cython 使用。C编译器在编译时将会看到 math.h 的声明,但 Cython 不会去分析 math.h 和单独的定义。 当调用一个C函数时,一定要注意引入适当的链接库。这个依赖于特定的平台;下面的例子可以在Linux和Mac OS X下运行: from distutils.core import setup from distutils.extension import Extension from Cython.Distutils import build_ext ext_modules=[ Extension("demo", ["demo.pyx"], [...]

其实我就是个演员

By admin - Last updated: 星期五, 五月 21, 2010

注:此文系纯水贴,正经人士请绕道。 场景1 某日很HI的写着程序,凑巧做网页的美工不在,活又耽误不得,只能捋起袖子,装起了Dreamweaver+Fireworks,三下五除二搞定了前端页面。话说自从开始写程序起,就很少碰这些高级玩意了。现在只是偶尔PS修修抠抠图,享受下钢笔抠图小YY一把就足够了。 其实在做程序之前,俺一直是个美工,作图做页面只不过信手拈来。 场景2 简历给某朋友看了之后,很惊讶道:原来你是做Java的?只好含泪不语+内流满面了。难道我博客只写Python或者Perl,不意味着俺就是折腾这些的哇。只好幽幽的坦然回答之:其实我的主业是Java开发者,做了六年多。 其实动态语言只是我的业余爱好,顺带写了点分享的博文而已。只不过对外闭口没提Java。 场景3 有些朋友看我经常推荐PostgreSQL,就问俺:Pg和MySQL到底有哪些区别?描述种种,感觉可能他也云里雾里。遂让他自己说说需求,最后还是推荐他用MySQL。顺带讲述了一些常用优化和监控的办法。丫又惊讶的说原来你一直用的MySQL啊。好吧,只好再次内流。 其实我正儿八经用数据库最长久的就是MySQL了,基本也有六年多了把。Pg只是我的业余爱好,没事研究了下,寻找下乐趣而已。 如此场景会继续重现,遂略过数字。。。 其实,我就是个演员。对系统(Linux)、语言(Java/Python/Perl)、数据库(MySQL/PostgreSQL)都略懂的角色。 不同的时间,演绎不同的角色。过去是,现在是,将来也是。

[图文解说] Virtual Box 通过 NAT(默认) 共享虚拟机中的服务

By admin - Last updated: 星期一, 五月 10, 2010

Virtual Box 是个不错的虚拟机,小巧,功能也齐全。好像有点推销鸟。说正题,上次有个朋友就提到怎么能主机里访问虚拟机里的服务,昨晚实验了下,颇为顺利。记录下。这里利用的是默认的NAT上网,也就是共享主机上网,而不是设置独立的IP。 主机:Win XP 虚拟:Ubuntu 9.10 目的:Win里ssh进Ubuntu,能访问里面提供的服务。 主要是通过 VBoxManage setextradata 设置一些属性。 先上几个步骤图把。注意一下修改,先得关闭虚拟机,修改完事以后再启动。 1. 查看虚拟机中的名称:ubuntu9 2. 进入本机Vbox目录,运行VBoxManage,查看下。 3. 添加三个项目 下面的pcnet是vbox里的网络设置,0是表示第一个网卡,后面一次类推。22是ssh端口,映射到主机的22端口。 VBoxManage setextradata “ubuntu9″ “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol” TCP VBoxManage setextradata “ubuntu9″ “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort” 22 VBoxManage setextradata “ubuntu9″ “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort” 22 4. 再次查看 5. 启动虚拟机。 6. 设置putty登陆之。 到这里已经顺利ssh 到127.0.0.1,如果想访问虚拟机里的web服务器呢?同样很简单。 只要如下设置,web端口为81,跟上面也雷同: VBoxManage setextradata “ubuntu9″ “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/Protocol” TCP VBoxManage setextradata “ubuntu9″ “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/GuestPort” 81 VBoxManage [...]