2009年09月存档文章

添加sqlite3_exec16,满足对unicode的操作

因老纪采集器的数据存储要用到sqlite3,所以对其研究了一下,发现有个地方要改:sqlite3_exec
sqlte3里面只有sqlite3_exec, 而没有对应的utf16版的sqlite3_exec16,这是怎么回事呢?老纪也不知道,按理说应该有这么一个函数,因为sqlite3_exec的原型

SQLITE_API int sqlite3_exec(
sqlite3*, /* An open database */
const char *sql, [...]

More »

老纪采集器网络核心部分完成

老纪采集器的宗旨是方便站长维护网站,能够多快好省的完成网站的创建和维护
经过一段时间开发,老纪采集器的网络核心部分完成,主要包括:

支持sock、http代理
支持ssl连接
支持单线程异步文件分块下载
支持多附件上传
支持chunked传输
支持gzip、deflate的解压
支持cookie保存、加载
支持主机ip地址缓存
对http 1.0、http 1.1协议较为完善的支持

网络核心部分的完成是老纪采集器能够成为优秀网络数据采集发布工具的基础。下一阶段就要对采集内容做处理了,需要对各种字符类型做全面的支持。

More »

用Mochiweb打造百万级Comet应用,第三部分

原文:A Million-user Comet Application with Mochiweb, Part 3
参考资料:Comet–基于 HTTP 长连接、无须在浏览器端安装插件的“服务器推”技术为“Comet”
MochiWeb–建立轻量级HTTP服务器的Erlang库
在这个系列的第一部分 和第二部分 展示了怎样用mochiweb构建一个comet应用,怎样把消息路由到连接的客户端。我们完成了把应用内存压缩到每个连接8KB的程度。我们也做了老式的c10k测试, 注意到10,000个连接用户时到底发生了什么。我们也做了几个图。很有乐趣,但是现在是时候把我们标题所宣称的做好了,把它调优到一百万个连接。
有以下内容:
* 添加一个发布订阅式的基于Mnesia的订阅数据库
* 为一百万用户生成一个真实的朋友数据集
* 调整mnesia载入朋友数据
* 从一个机子打开一百万连接
* 有一百万连接用户的基准测试
* [...]

More »

用Mochiweb打造百万级Comet应用,第二部分

原文:A Million-user Comet Application with Mochiweb, Part 2
参考资料:Comet–基于 HTTP 长连接、无须在浏览器端安装插件的“服务器推”技术为“Comet”
MochiWeb–建立轻量级HTTP服务器的Erlang库
在第一部分 , 我们构建了一个每10秒向客户端发送一条消息的mochiweb comet应用(没什么用处)。我们微调了一下linux内核,做了一个能够建立大量网络连接以测试应用性能和所耗内存的工具 。我们发现每个连接花费大约45K内存。
本系列的第二部分讲的主要是把应用变得更加有用,更加节省内存:
* 用一个login/logout/send API实现一个消息路由器
* 更新mochiweb应用使之能够从路由器接收消息
* 建立一个分布式erlang系统,这样我们可以在不同的节点和主机上运行路由器
* 写一个能给路由器发送大量无用信息的工具
* 超过24小时的内存用量图,优化mochiweb应用以节约内存
这就意味着我们需要把消息发送逻辑从mochiweb应用中剥离出来。利用第一部分的压力测试工具,我们可以建立一个更接近产品级别的基准测试。
实现消息路由器

More »

用Mochiweb打造百万级Comet应用,第一部分

把老纪在javaeye写的几篇过于erlang的文章转过来
原文:A Million-user Comet Application with Mochiweb, Part 1
参考资料:Comet–基于 HTTP 长连接、无须在浏览器端安装插件的“服务器推”技术为“Comet”
MochiWeb–建立轻量级HTTP服务器的Erlang库
在这个系列中,我将详述我所发现的mochiweb是怎样支持那么巨大的网络连接的,为大家展示怎样用mochiweb构建一个comet应用,这个应用中每个mochiweb连接都被注册到负责为不同用户派送消息的路由器上。最后我们建立一个能够承受百万并发连接的可工作的应用,更重要的我们将知道这样的应用需要多少内存才能使它跑起来。
本部分内容如下:
* 建立一个基本的comet应用, 它每10秒钟给客户端发送一条消息
* 调整linux内核参数,使它能够处理大量的TCP连接
* 写一个能够建立大量网络连接的压力测试工具 (也就是 C10k测试)
* 检查每个连接到底需要多少内存.
本系列续作将包括怎样建立一个真正的信息路由系统,降低内存使用的技巧,100K和1m并发连接的测试。
基础是你需要知道一些linux命令行操作和一点Erlang知识,否则看不懂别怪我呀,呵呵

More »

老纪博客2个月试用linode的情况总结

老纪自打7月18号申请linode后到现在,linode vps已经有2个多月了。7月27好上线老纪博客,一个用nginx做前端,php-cgi做后端的一个wordpress技术博客站(配置请参阅“Linode VPS的申请和设置及基于Nginx的WordPress详细配置”),在未经作任何推广的情况下IP一直徘徊在40-100之间(什么时候4000-10000呀,呵呵),几个搜素引擎的蜘蛛爬的比较勤,特别是google,只要我已写完博客,3、5分钟后就可以查到了。
老纪用的linode vps是360基本型的(linode入门手册),到目前为止运行两个站,速度和稳定性还是很不错的,从linode提供的统计来看,带宽和CPU都足够,支持个10000ip的可能性还是有的。
附上个图片供参考

More »

主流浏览器对WebGL的支持

Firefox nightly Builds版本已经添加了对WebGL的支持,前一段时间WebKit浏览器引擎已对WebGL提供了支持,如果IE8、9也对WebGL(或者相兼容的技术)提供支持的话,那么浏览器也就进入了3D时代。
通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。老纪想这样桌面应用转入浏览器的步伐会进一步加快,以后的计算时代真的进入了网络时代了。
WebGL现状:苹果和Google都是Khronos Group组织的成员,因此他们的Safari、Chrome等WebKit核心浏览器获得这种3D GPU加速特性应该是水到渠成的了,特别是Safari(桌面版和手机版)可能未来几个月内就会公布相关消息。Mozilla、Opera虽然在核心引擎上走的是另一条路,但也积极支持创建3D Web图形开放标准,也为Khronos Group的规范制定做出了自己的贡献。剩下的就是大头IE了,对其抱有期待!

More »

迷茫

迷茫,非常的迷茫,何时才能找到一个出路,怎样才能找到一个出路!!!

More »

纪念《蜡笔小新》之父-臼井仪人

蜡笔小新给我带来过很多的快乐,快乐到每次看它都会流泪,不得不流泪,那是笑出的眼泪。记得刚上班的时候,办公室里一片安静,突然之间一阵好像不能控制的爆笑出来了,不用说,有人正在偷看蜡笔小新。其中一个同事学小新的声音特别的像,我们就给他起了个外号叫小新,这个名字一直叫了10年。有的时候想如果我的儿子也像小新那样我该如何,看着儿子总是喜欢摸肉肉,看到新娘就无比兴奋,看到美女就说漂亮阿姨的时候,我就想他现在就有几分相像了。

小新档案:
  姓名:野原新之助
  昵称:小新、新之助
  年龄:5岁
  身高:1.1米
  体重:22.8kg
  血型:B型
  学历:双叶幼稚园向日葵小班学生、春日部小学学生
  特长:模仿发射动感光波、举屁股晃动、跳草裙舞、做布偶装
  最喜欢的人:大原娜娜子(有的叫本宫娜娜子)邻居家的大姐姐动感超人泳装女高中以上的漂亮姐姐小宫悦子
  最崇拜的偶像:动感超人、康达姆机器人、肥嘟嘟左卫门(小新原创)、铅笔小新(播出后深受小新和自己的朋友欢迎,但父母却很抗议)、美少女战士
  最喜欢的食物:小熊巧克力饼干、动感汉堡、咖喱、纳豆饭(加葱的)、炸薯条、刨冰、冰淇淋、布丁、蛋糕、薯片、仙贝、洋芋片等零食
  最喜欢的饮料:纯100%果汁、可乐、绿茶(浓一点的)
  最讨厌的食物:青椒、胡萝卜,味磳汤(不加葱的)(只要是蔬菜就讨厌)
  最喜欢的动作:屁屁舞、把妈妈的内衣裤套在头上、大象舞、学动感超人大笑、发射动感光波、滚来滚去
  最喜欢的运动:睡觉、骑三轮车、滑雪、旱冰(曾被天才阿新收为徒弟)
  嗜好:看泳装美女写真集、和漂亮姐姐搭讪(高中以上)、制作有趣的玩具(制作布偶装)、玩奇怪的游戏(如小熊游戏)
  优点:活泼、好动、可爱、标新立异
  缺点:好色、顽皮、早熟、超级健忘
  最喜欢的电影作品:动感超人,康达姆机器人
  最喜欢的歌曲:《动感超人》插曲!
  好朋友:樱田妮妮,阿呆,佐藤正男,风间彻
  三角裤图案:动感超人

蜡笔小新的爸爸-臼井仪人‎登山遇难,表纪念!!!

More »

表妹结婚,高兴

今天表妹结婚,很高兴,虽说天宫不怎么作美,下起了小雨,但是整个过程还是挺圆满的。
有幸让当证婚人致证婚词,提前写了个稿子,自认为挺不错,但是有人说太长,我就说临场发挥好了,结果上台一激动,词都忘了,结结巴巴的证婚完毕,惭愧!以后要多加锻炼了,呵呵
祝愿他们永结同心,白头偕老!幸福安康!

More »