<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AgilePHP</title>
	<atom:link href="http://www.agilephp.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agilephp.net</link>
	<description>开发可以敏捷，人生需要慢慢体味</description>
	<lastBuildDate>Fri, 27 Aug 2010 08:45:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>终于更新到3.0.1了</title>
		<link>http://www.agilephp.net/2010/08/update-to-wordpress-3-0-1/</link>
		<comments>http://www.agilephp.net/2010/08/update-to-wordpress-3-0-1/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 08:45:25 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[博客]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/?p=337</guid>
		<description><![CDATA[WordPress 3.0.0据我所知官方就没有发布简体中文版，3.0.1倒是发布了有一段时间了，我一直以为是因为国内的服务器访问WP的升级服务器速度有问题，所以下载不了更新包，无法更新，所以经常没事儿就跑到后台来试试看能不能更新的了。今天实在是受不了了，去Google了一把，才发现有人跟我有一样的问题，只要把一些插件禁用就可以更新了。想想我用的那些插件都是很大众的呀，遂把我认为的最小众的三个与flickr的插件禁了，反正在国内由于伟大的墙的存在，flickr的访问本来也不顺畅~真没想到呀真没有想到，然后就更新成功了。 最近在忙着复习、找工作还要看论文写设计，这一年好好忙过去吧！Fight! Related Posts 没有相关文章

<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></description>
			<content:encoded><![CDATA[<p>WordPress 3.0.0据我所知官方就没有发布简体中文版，3.0.1倒是发布了有一段时间了，我一直以为是因为国内的服务器访问WP的升级服务器速度有问题，所以下载不了更新包，无法更新，所以经常没事儿就跑到后台来试试看能不能更新的了。今天实在是受不了了，去Google了一把，才发现有人跟我有一样的<a href="http://www.8suo.com/201002/1317.html" target="_blank">问题</a>，只要把一些插件禁用就可以更新了。想想我用的那些插件都是很大众的呀，遂把我认为的最小众的三个与flickr的插件禁了，反正在国内由于伟大的墙的存在，flickr的访问本来也不顺畅~真没想到呀真没有想到，然后就更新成功了。</p>
<p>最近在忙着复习、找工作还要看论文写设计，这一年好好忙过去吧！Fight!</p>


<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/08/update-to-wordpress-3-0-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>无法将此图像设置为墙纸，出现了一个内部错误。</title>
		<link>http://www.agilephp.net/2010/08/windows-7-can-not-change-wallpaper/</link>
		<comments>http://www.agilephp.net/2010/08/windows-7-can-not-change-wallpaper/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 06:48:38 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[未分类]]></category>
		<category><![CDATA[出现了一个内部错误]]></category>
		<category><![CDATA[无法将此图像设置为墙纸]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/08/%e6%97%a0%e6%b3%95%e5%b0%86%e6%ad%a4%e5%9b%be%e5%83%8f%e8%ae%be%e7%bd%ae%e4%b8%ba%e5%a2%99%e7%ba%b8%ef%bc%8c%e5%87%ba%e7%8e%b0%e4%ba%86%e4%b8%80%e4%b8%aa%e5%86%85%e9%83%a8%e9%94%99%e8%af%af%e3%80%82/</guid>
		<description><![CDATA[今天是黑色星期五，也出现了一个小小的插曲。之前一直使用Win7里的壁纸播放功能，定时的更换壁纸，但是从昨天就发现壁纸不更新了，以为是个小问题，换个主题就OK了，所以也没有在意。今天去搞了一下，换主题，换壁纸，各种我能想到的方法都想到了，壁纸雷打不动的还是那一张。我并没有在组策略里禁用相关的选项，郁闷了。看到有人说重装系统后就好了，这不是扯淡么，为了张壁纸要重装系统，不甘心。于是在资源管理器里用图片查看器找到一张图片，然后右键点击设置为壁纸，弹出错误提示“无法将此图像设置为墙纸，出现了一个内部错误。”，这样就好办了，既然有错误提示，肯定有人遇到过这种问题，于是Google了一把，找到了解决办法。照着作，把C:\Users\XXX\AppData\Roaming\Microsoft\Windows\Themes\下的TranscodedWallpaper.jpg删除即能解决问题。 现在又看了一下，每次更换一张壁纸，上述的文件都会发生改变，难道是之前的文件产生了一个锁，无法更新这个文件，所以壁纸一直无法更新？可是我有重启、注销呀。希望记下这个能帮助遇到同样问题的人解决问题，节省宝贵的时间。 Related Posts mklink.exe 换了个新主题 了解一些“云”

<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/08/mklink-exe/" rel="bookmark">mklink.exe</a><!-- (10.3981)--></li>
		<li><a href="http://www.agilephp.net/2010/01/new-theme/" rel="bookmark">换了个新主题</a><!-- (5.46421)--></li>
		<li><a href="http://www.agilephp.net/2009/08/cloud-to-overview/" rel="bookmark">了解一些“云”</a><!-- (4.18851)--></li>
	</ol>
]]></description>
			<content:encoded><![CDATA[<p>今天是黑色星期五，也出现了一个小小的插曲。之前一直使用Win7里的壁纸播放功能，定时的更换壁纸，但是从昨天就发现壁纸不更新了，以为是个小问题，换个主题就OK了，所以也没有在意。今天去搞了一下，换主题，换壁纸，各种我能想到的方法都想到了，壁纸雷打不动的还是那一张。我并没有在组策略里禁用相关的选项，郁闷了。看到有人说重装系统后就好了，这不是扯淡么，为了张壁纸要重装系统，不甘心。于是在资源管理器里用图片查看器找到一张图片，然后右键点击设置为壁纸，弹出错误提示“无法将此图像设置为墙纸，出现了一个内部错误。”，这样就好办了，既然有错误提示，肯定有人遇到过这种问题，于是Google了一把，找到了<a href="http://hi.baidu.com/zqs1002/blog/item/a1f6fb22af76f25f9822ed87.html">解决办法</a>。照着作，把C:\Users\XXX\AppData\Roaming\Microsoft\Windows\Themes\下的TranscodedWallpaper.jpg删除即能解决问题。</p>
<p>现在又看了一下，每次更换一张壁纸，上述的文件都会发生改变，难道是之前的文件产生了一个锁，无法更新这个文件，所以壁纸一直无法更新？可是我有重启、注销呀。希望记下这个能帮助遇到同样问题的人解决问题，节省宝贵的时间。</p>


<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/08/mklink-exe/" rel="bookmark">mklink.exe</a><!-- (10.3981)--></li>
		<li><a href="http://www.agilephp.net/2010/01/new-theme/" rel="bookmark">换了个新主题</a><!-- (5.46421)--></li>
		<li><a href="http://www.agilephp.net/2009/08/cloud-to-overview/" rel="bookmark">了解一些“云”</a><!-- (4.18851)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/08/windows-7-can-not-change-wallpaper/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>25岁</title>
		<link>http://www.agilephp.net/2010/08/25-years-old/</link>
		<comments>http://www.agilephp.net/2010/08/25-years-old/#comments</comments>
		<pubDate>Sat, 07 Aug 2010 20:22:00 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[感悟]]></category>
		<category><![CDATA[校园]]></category>
		<category><![CDATA[生日]]></category>
		<category><![CDATA[生活]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/08/25%e5%b2%81/</guid>
		<description><![CDATA[25周岁了，算虚岁的话已经26了。说得再恐怖一点，已经是奔三的人了。人的一生当中没有几个25年，这第一个25年应该是这所有人生当中比较快乐轻松的，虽然现在并不觉得自己有多快乐轻松。不过有些压力也是正常的，只是别给自己过多的压力就好。 看着我2岁的外甥自己就经常感慨，他现在过得真开心，有吃有喝有玩，不用操心什么也不用担心什么，可以耍脾气可以不乖，作为一个成年人，我没有办法像他那样，再也没有办法像他那样。也许只有等到自己足够老了，老到得了老年痴呆的时候才会像他那样子开心，可以乐呵呵的笑，可以把撕纸当成一种乐趣并乐此不疲。 跨过24岁，人生又过了一个轮回，再过本命年穿上大红内裤的时候就36岁了，那个时候我孩子应该也上小学了吧。今年开学也研三了，开始找工作，终于要走出象牙塔走进社会了。有人说，大学里都是高智商云集的人，这里的勾心斗角要远比社会上来得更复杂，能从大学里出来就能好好的在社会上生存。但我还是觉得大学里的人还是单纯了一些的，虽然上面说的也有道理，但是真正工作了，还是有许多跟之前不一样的东西，这些大概是我26岁的时候应该好好考虑的东西了吧，今年只有两个重要的目标，找工作和毕业。 在北京也呆了二年多的时间，有快乐、有不快乐，接下来的一年还要好好的走，不要给自己太多的压力。我现在自己也这样安慰自己，成功与失败，并不是一件事两件事或者一个人两个人的评判就能说明的，我的人生大戏才刚刚拉开序幕不久，剩下的路还很长很长，重要的不是过去，而是自己的未来，只要对自己充满希望，一切都不晚，一切都有可能。 ==eof== Related Posts 最近

<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2010/04/recently/" rel="bookmark">最近</a><!-- (3)--></li>
	</ol>
]]></description>
			<content:encoded><![CDATA[<p>25周岁了，算虚岁的话已经26了。说得再恐怖一点，已经是奔三的人了。人的一生当中没有几个25年，这第一个25年应该是这所有人生当中比较快乐轻松的，虽然现在并不觉得自己有多快乐轻松。不过有些压力也是正常的，只是别给自己过多的压力就好。</p>
<p>看着我2岁的外甥自己就经常感慨，他现在过得真开心，有吃有喝有玩，不用操心什么也不用担心什么，可以耍脾气可以不乖，作为一个成年人，我没有办法像他那样，再也没有办法像他那样。也许只有等到自己足够老了，老到得了老年痴呆的时候才会像他那样子开心，可以乐呵呵的笑，可以把撕纸当成一种乐趣并乐此不疲。</p>
<p>跨过24岁，人生又过了一个轮回，再过本命年穿上大红内裤的时候就36岁了，那个时候我孩子应该也上小学了吧。今年开学也研三了，开始找工作，终于要走出象牙塔走进社会了。有人说，大学里都是高智商云集的人，这里的勾心斗角要远比社会上来得更复杂，能从大学里出来就能好好的在社会上生存。但我还是觉得大学里的人还是单纯了一些的，虽然上面说的也有道理，但是真正工作了，还是有许多跟之前不一样的东西，这些大概是我26岁的时候应该好好考虑的东西了吧，今年只有两个重要的目标，找工作和毕业。</p>
<p>在北京也呆了二年多的时间，有快乐、有不快乐，接下来的一年还要好好的走，不要给自己太多的压力。我现在自己也这样安慰自己，成功与失败，并不是一件事两件事或者一个人两个人的评判就能说明的，我的人生大戏才刚刚拉开序幕不久，剩下的路还很长很长，重要的不是过去，而是自己的未来，只要对自己充满希望，一切都不晚，一切都有可能。</p>
<p>==eof==</p>


<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2010/04/recently/" rel="bookmark">最近</a><!-- (3)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/08/25-years-old/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>健身</title>
		<link>http://www.agilephp.net/2010/07/body-building/</link>
		<comments>http://www.agilephp.net/2010/07/body-building/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 14:30:09 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[校园]]></category>
		<category><![CDATA[生活]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/07/%e5%81%a5%e8%ba%ab/</guid>
		<description><![CDATA[所里的健身房开业有一段时间了，三楼有健身器械、跑步机、乒乓球，四楼有羽毛球，五楼有桌球。来北京读研，也就研一的时候上过半年健身课，公寓里的健身房实在是太简陋，上完课也就没有再去过；而且那边的器械，一个人去练，没有人在一旁陪着，着实是不太安全的，因为能练的大部分只有围绕着杠铃为主的动作，所以最好还是有人能陪着会比较安全。所以的开了以后，很快就去试玩了一次，从大四开始，自己就有点发胖的迹象，再加上读研两年太忙，也没有太多的时间去运动，自己是觉得身体素质不如以前，起码没有以前结实，现在的肥肉还是多了一点。 现在基本上能坚持隔一天去一次，每次运动一个小时，一直这样坚持的话，希望能恢复以前的那种状态。我健身有两个主要的目的，塑形与健康的考虑。毕竟年纪也大了，不好好运动，慢慢的发福走形是不可避免的，可是连婚纱都还没有拍，现在就走形了，太遗憾了；而且整天坐实验室，这样一直不运动一定不会身体健康的。 说起我健身的经历，倒是挺有意思的。我小时候是个很瘦的男孩子，我堂弟比我小五天，上小学的时候，他一直都比我要重五斤。那个时候一直就觉得自己有肋骨每一根都能看得清清楚楚的。瘦，身上也没有什么肌肉。小的时候也不知道健身是怎么回事儿，反正就是一直很瘦。不过自己一直觉得自己的力量素质相对于自己的体重的时候，还算是可以的。像做引体向上，扔垒球，这种需要上肢力量的运动，我在班里同学都算是做得很出色的。现在想想，可能真是自己力量大，身体轻的原因吧。 让我有了练练肌肉的想法，或者说加强自己力量素质的想法，是初一暑假的时候，跟另一个同学一起参加一个夏令营的活动，在休息的时候，我们两个一起在双杠边上玩，看他做臂曲伸很轻松的样子，我也觉得这没有什么难的吧。可是自己上去做了一个，觉得胸部的骨头都有裂开了一样，那次特别受刺激。不过那同学是身体很壮的那种，一般的男生在那个年纪都不会比他的身体素质好。但是，我是从那个时候，开始有这种想法的。 可是怎么开始锻炼呢？我就知道一些最简单的可以在家里做的运动，比如仰卧起坐、俯卧撑、引体向上。说起引体向上，其实因为身子轻，在家里也很容易做，就直接把手放门框上，把自己拉上去。像在想不起来经过我初中两年这样断断续续的一些小锻炼到底起了怎么样的效果，但是读高一军训的时候，我们那一屋住的肌肉男里，没有人背部肌肉比我明显的，哈哈，那个时候应该就不像小时候那种瘦弱的体型了吧。 后来读高中，还是只做这些简单的运动，仰卧起坐、俯卧撑、引体向上。没有接受过什么正式的健身的训练。 后来读了大学了，大学里有健身房，也报过体育讲里的健身课，但是也是偶尔去去，没有去得很积极。但是还是有一些效果的。大三暑假去实习的时候，很多人对我的印象我想大概就是小伙子比较壮实。 那个时候是我第一次达到130斤，很多人看到我，都问我是不是特喜欢打篮球，因为胳膊看起来挺粗的。但是也就是平时偶尔练练。可能是我的肉比较容易长肌肉吧。 接着大四一年，到现在读研两年，比原来胖了。嗯，继续坚持下去。希望能达到自己的目标。 Related Posts 没有相关文章

<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></description>
			<content:encoded><![CDATA[<p>所里的健身房开业有一段时间了，三楼有健身器械、跑步机、乒乓球，四楼有羽毛球，五楼有桌球。来北京读研，也就研一的时候上过半年健身课，公寓里的健身房实在是太简陋，上完课也就没有再去过；而且那边的器械，一个人去练，没有人在一旁陪着，着实是不太安全的，因为能练的大部分只有围绕着杠铃为主的动作，所以最好还是有人能陪着会比较安全。所以的开了以后，很快就去试玩了一次，从大四开始，自己就有点发胖的迹象，再加上读研两年太忙，也没有太多的时间去运动，自己是觉得身体素质不如以前，起码没有以前结实，现在的肥肉还是多了一点。</p>
<p>现在基本上能坚持隔一天去一次，每次运动一个小时，一直这样坚持的话，希望能恢复以前的那种状态。我健身有两个主要的目的，塑形与健康的考虑。毕竟年纪也大了，不好好运动，慢慢的发福走形是不可避免的，可是连婚纱都还没有拍，现在就走形了，太遗憾了；而且整天坐实验室，这样一直不运动一定不会身体健康的。</p>
<p>说起我健身的经历，倒是挺有意思的。我小时候是个很瘦的男孩子，我堂弟比我小五天，上小学的时候，他一直都比我要重五斤。那个时候一直就觉得自己有肋骨每一根都能看得清清楚楚的。瘦，身上也没有什么肌肉。小的时候也不知道健身是怎么回事儿，反正就是一直很瘦。不过自己一直觉得自己的力量素质相对于自己的体重的时候，还算是可以的。像做引体向上，扔垒球，这种需要上肢力量的运动，我在班里同学都算是做得很出色的。现在想想，可能真是自己力量大，身体轻的原因吧。</p>
<p>让我有了练练肌肉的想法，或者说加强自己力量素质的想法，是初一暑假的时候，跟另一个同学一起参加一个夏令营的活动，在休息的时候，我们两个一起在双杠边上玩，看他做臂曲伸很轻松的样子，我也觉得这没有什么难的吧。可是自己上去做了一个，觉得胸部的骨头都有裂开了一样，那次特别受刺激。不过那同学是身体很壮的那种，一般的男生在那个年纪都不会比他的身体素质好。但是，我是从那个时候，开始有这种想法的。</p>
<p>可是怎么开始锻炼呢？我就知道一些最简单的可以在家里做的运动，比如仰卧起坐、俯卧撑、引体向上。说起引体向上，其实因为身子轻，在家里也很容易做，就直接把手放门框上，把自己拉上去。像在想不起来经过我初中两年这样断断续续的一些小锻炼到底起了怎么样的效果，但是读高一军训的时候，我们那一屋住的肌肉男里，没有人背部肌肉比我明显的，哈哈，那个时候应该就不像小时候那种瘦弱的体型了吧。</p>
<p>后来读高中，还是只做这些简单的运动，仰卧起坐、俯卧撑、引体向上。没有接受过什么正式的健身的训练。</p>
<p>后来读了大学了，大学里有健身房，也报过体育讲里的健身课，但是也是偶尔去去，没有去得很积极。但是还是有一些效果的。大三暑假去实习的时候，很多人对我的印象我想大概就是小伙子比较壮实。 那个时候是我第一次达到130斤，很多人看到我，都问我是不是特喜欢打篮球，因为胳膊看起来挺粗的。但是也就是平时偶尔练练。可能是我的肉比较容易长肌肉吧。</p>
<p>接着大四一年，到现在读研两年，比原来胖了。嗯，继续坚持下去。希望能达到自己的目标。</p>


<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/07/body-building/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在Godaddy的主机上配置CodeIgniter</title>
		<link>http://www.agilephp.net/2010/06/godaddy-and-codeigniter/</link>
		<comments>http://www.agilephp.net/2010/06/godaddy-and-codeigniter/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 13:56:16 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[Godaddy]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[QUERY_STRING]]></category>
		<category><![CDATA[REQUEST_URI]]></category>
		<category><![CDATA[rewrite]]></category>
		<category><![CDATA[vhs]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/06/%e5%9c%a8godaddy%e7%9a%84%e4%b8%bb%e6%9c%ba%e4%b8%8a%e9%85%8d%e7%bd%aecodeigniter/</guid>
		<description><![CDATA[之前在CodeIgniter上部署过一个小的CodeIgniter的应用，参考了这篇文章，当时顺利的完成了部署运行的任务。主要是因为在Godaddy的虚拟主机上使用rewrite模块产生的问题，原因不知道，只知道一种解决问题的办法。主要的步骤为： 在config.php里修改配置，使用QUERY_STRING的方式来解析URL $config['uri_protocol'] = &#34;QUERY_STRING&#34;; 然后，修改.htaccess文件，使其内容为如下所示： RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?$1 [L] 这样，某个请求，如http://www.example.com/blog/view/123 ，实际上会被解析成http://www.example.com/index.php?blog/view/123 ，但是，假如我使用的请求必须通过GET方法传参数呢？这种解决方案就不能解决问题了。如http://www.example.com/index.php?blog/view/123?from=1009&#38;author=bbiao ,这个时候就无法通过parse_str($_SERVER['QUERY_STRING'], $_GET);的方法来获得GET的数据了。但是我们可以观察到$_SERVER['REQUEST_URI']里保存了blog/view/123?from=1009&#38;author=bbiao的值，OK，解析一下这个数据就可以了。代码如下： $arr = explode(&#8216;?&#8217;, $_SERVER['REQUEST_URI']); parse_str($arr[1], $_GET); 另外说一句，由于CI里是把$_GET的数据清空的，所以才有了以上的这些说法，CI本身是不推荐使用GET来传递参数的，但有时候又不得不用，比如使用OAuth的时候，别人回调你的接口的时候都是这样传的，你能怎么办呢？事情总有解决办法的，现在我的程序在Godaddy上跑的一切正常。 Related Posts 没有相关文章

<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></description>
			<content:encoded><![CDATA[<p>之前在CodeIgniter上部署过一个小的CodeIgniter的应用，参考了<a href="http://codeigniter.com/wiki/Godaddy_Installaton_Tips/" target="_blank">这篇</a>文章，当时顺利的完成了部署运行的任务。主要是因为在Godaddy的虚拟主机上使用rewrite模块产生的问题，原因不知道，只知道一种解决问题的办法。主要的步骤为：</p>
<p>在config.php里修改配置，使用QUERY_STRING的方式来解析URL</p>
<p><code>$config['uri_protocol'] = &quot;QUERY_STRING&quot;; </code></p>
<p><code>然后，修改.htaccess文件，使其内容为如下所示：</code></p>
<p><code>RewriteEngine on     <br />RewriteCond %{REQUEST_FILENAME} !-f      <br />RewriteCond %{REQUEST_FILENAME} !-d      <br />RewriteRule ^(.*)$ /index.php<font color="#ff0000">?</font>$1 [L] </code></p>
<p><code>这样，某个请求，如<a href="http://www.example.com/blog/view/123">http://www.example.com/blog/view/123</a> ，实际上会被解析成<a href="http://www.example.com/index.php?blog/view/123">http://www.example.com/index.php?blog/view/123</a> ，但是，假如我使用的请求必须通过GET方法传参数呢？这种解决方案就不能解决问题了。如<a href="tp://www.example.com/index.php?blog/view/123?from=1009&amp;author=bbiao">http://www.example.com/index.php?blog/view/123?from=1009&amp;author=bbiao</a> ,这个时候就无法通过parse_str($_SERVER['QUERY_STRING'], $_GET);的方法来获得GET的数据了。但是我们可以观察到$_SERVER['REQUEST_URI']里保存了blog/view/123?from=1009&amp;author=bbiao的值，OK，解析一下这个数据就可以了。代码如下：</code></p>
<p>$arr = explode(&#8216;?&#8217;, $_SERVER['REQUEST_URI']);   <br />parse_str($arr[1], $_GET);</p>
<p>另外说一句，由于CI里是把$_GET的数据清空的，所以才有了以上的这些说法，CI本身是不推荐使用GET来传递参数的，但有时候又不得不用，比如使用OAuth的时候，别人回调你的接口的时候都是这样传的，你能怎么办呢？事情总有解决办法的，现在我的程序在Godaddy上跑的一切正常。</p>


<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/06/godaddy-and-codeigniter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xen Cloud Platform 0.1.1</title>
		<link>http://www.agilephp.net/2010/05/xen-cloud-platform-0-1-1/</link>
		<comments>http://www.agilephp.net/2010/05/xen-cloud-platform-0-1-1/#comments</comments>
		<pubDate>Sat, 22 May 2010 01:50:49 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[云计算]]></category>
		<category><![CDATA[虚拟化]]></category>
		<category><![CDATA[xcp]]></category>
		<category><![CDATA[xen]]></category>
		<category><![CDATA[xen cloud platform]]></category>
		<category><![CDATA[xencenter]]></category>
		<category><![CDATA[xenserver]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/05/xen-cloud-platform-0-1-1/</guid>
		<description><![CDATA[Xen Cloud Platform 是一个基本Xen虚拟化技术的云计算基础平台，这半年一直在使用另外一个商业版本XenServer，少对XCP有所关注，今天看了它的官方主页，XCP今年有一个新的版本发布，版本号是0.1.1，我去年使用XCP的时候，其版本还是0.1，这里对新版本做一个简单的介绍。 版本0.1.1发布于今年1月18号（汗，现在才知道），新增加的功能包括： Openvswitch XCP Console Documentation VNC Console Proxy and Web Front-End Standalone Front-End &#8211; *openxencenter* VM Lifecycle Queuing Deadlock Fixed Rare Post-Fork() Spinning XAPI Process Fixed Active Directory Authentication Fixes Memory Ballooning Fixes 其中描述的单独的前端就是XenCenter的一个开源Python实现，试用了一下，与XenCenter 5.5还是有一定差距的，但是总算是有一个前端可以选择了，之前用xe cli和Web管理太痛苦了，详细信息和下载，可以到XCP的主页查看。 Related Posts Xen Cloud Platform

<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/12/xen-cloud-platform/" rel="bookmark">Xen Cloud Platform</a><!-- (15.1896)--></li>
	</ol>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.xen.org/products/cloudxen.html" target="_blank">Xen Cloud Platform</a> 是一个基本Xen虚拟化技术的云计算基础平台，这半年一直在使用另外一个商业版本XenServer，少对XCP有所关注，今天看了它的官方主页，XCP今年有一个新的版本发布，版本号是0.1.1，我去年使用XCP的时候，其版本还是0.1，这里对新版本做一个简单的介绍。</p>
<p>版本0.1.1发布于今年1月18号（汗，现在才知道），新增加的功能包括：</p>
<ul>
<li>Openvswitch </li>
<li>XCP Console <a href="http://foss-boss.blogspot.com/2010/01/taming-xen-cloud-platform-consoles.html">Documentation</a></li>
<li><a href="http://www.xvpsource.org">VNC Console Proxy</a> and Web Front-End </li>
<li><a href="http://www.openxencenter.com">Standalone Front-End</a> &#8211; *openxencenter*</li>
<li>VM Lifecycle Queuing Deadlock Fixed </li>
<li>Rare Post-Fork() Spinning XAPI Process Fixed </li>
<li>Active Directory Authentication Fixes </li>
<li>Memory Ballooning Fixes</li>
</ul>
<p> 其中描述的单独的前端就是XenCenter的一个开源Python实现，试用了一下，与XenCenter 5.5还是有一定差距的，但是总算是有一个前端可以选择了，之前用xe cli和Web管理太痛苦了，详细信息和下载，可以到XCP的<a href="http://www.xen.org/products/cloudxen.html" target="_blank">主页</a>查看。</p>


<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/12/xen-cloud-platform/" rel="bookmark">Xen Cloud Platform</a><!-- (15.1896)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/05/xen-cloud-platform-0-1-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>最近</title>
		<link>http://www.agilephp.net/2010/04/recently/</link>
		<comments>http://www.agilephp.net/2010/04/recently/#comments</comments>
		<pubDate>Sun, 25 Apr 2010 16:05:59 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[学习]]></category>
		<category><![CDATA[感悟]]></category>
		<category><![CDATA[校园]]></category>
		<category><![CDATA[生活]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/04/%e6%9c%80%e8%bf%91/</guid>
		<description><![CDATA[这段时间发日志的频率明显低下来了，因为太忙，几乎是一周七天不间断的工作着，周六跟周末会休息一个上午，这一个上午的休息基本上就是在宿舍里睡觉，大概都是要在中午的时间醒来。有段时间我室友说好久没有见到我人了，他早上起得比我早（我想比大多数人都要早），我晚上回去的时候他早就睡了，所以两个人也碰不着面。忙有忙的好处，可以锻炼自己在高压情况下的承受能力。时间紧，任务在我看来算是比较重的，而且有些时间还无法加速。现在跑的实验，每个大概要耗时90分钟，你无法在这段时间里做其他的测试，只能等着，因为计算资源就那么多，受限。说来也算是个笑话，我测试的是基于云计算平台的实验，而由于我只有两台服务器，所以这个云计算平台并不能真正做到无限的计算和存储空间。我们要是不自己买服务器，而买Amazon的计算资源的话，可能成本会低很多，但是灵活性估计比现在这样子要差一些，而且在国内也不知道速度如何。这种情况下唯一的解决办法，就是熬夜加班，把自己工作时长加大，来在一天里可以做更多的实验。 现在这种单兵作战的方式是我最不喜欢的。遇到所有的问题都得自己一个人解决，在一个团队里，一个人加一个人的效率和解决问题的能力要绝对大于两个人单独工作的能力，因为有些时候我们考虑问题是不那么全面的，当有人和你合作一起解决问题的时候，互相之间的补充与提醒可以迅速将问题解决掉。不过既然现实的情况是这样的，那也只能自己独当一面，陌生而又庞大的系统，Ok，我去看跟代码；没有规范的文档，我还是去跟代码；遇到了问题理论上解释不通，再去跟代码；其他一些看代码解决不了的问题，或是没有代码可看的东西，查资料是第一种可以选择的办法，但是有些东西网上确实没有资料，怎么办，试。只能用不同的情况去试，期望通过试来解决问题。这种方法是很低效的，但是却能在大多数时候把问题解决了，这也能锻炼了我全面思考问题的能力，还有就是培养了自己的耐心，试一遍不成功，两遍不成功，三遍不成功，有耐心继续试下去是需要很大的勇气的，有时候真的试到想到电脑扔了的地步。 人生会遇到很多很多的困难，而且有些困难是只能自己去解决的，不要指望着会有人来帮助你，甚至你都不要期许会有别人来鼓励你，成者王败者寇，有时候现实很残酷。所以，也不要去说别人取得的成就不够重大，很多时候，别人能够取得成功也是经历了很多你所想象不到的困难的。 感慨了很多，我要去收实验数据了，又有一组跑出来了。再跑一组我就回宿舍了，自己还是要多担心自己身体一点的，这种工作强度搞个半年人肯定会垮掉的。加油加油！ Related Posts 回到北京了 25岁

<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/08/back-to-beijing/" rel="bookmark">回到北京了</a><!-- (3)--></li>
		<li><a href="http://www.agilephp.net/2010/08/25-years-old/" rel="bookmark">25岁</a><!-- (3)--></li>
	</ol>
]]></description>
			<content:encoded><![CDATA[<p>这段时间发日志的频率明显低下来了，因为太忙，几乎是一周七天不间断的工作着，周六跟周末会休息一个上午，这一个上午的休息基本上就是在宿舍里睡觉，大概都是要在中午的时间醒来。有段时间我室友说好久没有见到我人了，他早上起得比我早（我想比大多数人都要早），我晚上回去的时候他早就睡了，所以两个人也碰不着面。忙有忙的好处，可以锻炼自己在高压情况下的承受能力。时间紧，任务在我看来算是比较重的，而且有些时间还无法加速。现在跑的实验，每个大概要耗时90分钟，你无法在这段时间里做其他的测试，只能等着，因为计算资源就那么多，受限。说来也算是个笑话，我测试的是基于云计算平台的实验，而由于我只有两台服务器，所以这个云计算平台并不能真正做到无限的计算和存储空间。我们要是不自己买服务器，而买Amazon的计算资源的话，可能成本会低很多，但是灵活性估计比现在这样子要差一些，而且在国内也不知道速度如何。这种情况下唯一的解决办法，就是熬夜加班，把自己工作时长加大，来在一天里可以做更多的实验。</p>
<p>现在这种单兵作战的方式是我最不喜欢的。遇到所有的问题都得自己一个人解决，在一个团队里，一个人加一个人的效率和解决问题的能力要绝对大于两个人单独工作的能力，因为有些时候我们考虑问题是不那么全面的，当有人和你合作一起解决问题的时候，互相之间的补充与提醒可以迅速将问题解决掉。不过既然现实的情况是这样的，那也只能自己独当一面，陌生而又庞大的系统，Ok，我去看跟代码；没有规范的文档，我还是去跟代码；遇到了问题理论上解释不通，再去跟代码；其他一些看代码解决不了的问题，或是没有代码可看的东西，查资料是第一种可以选择的办法，但是有些东西网上确实没有资料，怎么办，<strong>试</strong>。只能用不同的情况去试，期望通过试来解决问题。这种方法是很低效的，但是却能在大多数时候把问题解决了，这也能锻炼了我全面思考问题的能力，还有就是培养了自己的耐心，试一遍不成功，两遍不成功，三遍不成功，有耐心继续试下去是需要很大的勇气的，有时候真的试到想到电脑扔了的地步。</p>
<p>人生会遇到很多很多的困难，而且有些困难是只能自己去解决的，不要指望着会有人来帮助你，甚至你都不要期许会有别人来鼓励你，成者王败者寇，有时候现实很残酷。所以，也不要去说别人取得的成就不够重大，很多时候，别人能够取得成功也是经历了很多你所想象不到的困难的。</p>
<p>感慨了很多，我要去收实验数据了，又有一组跑出来了。再跑一组我就回宿舍了，自己还是要多担心自己身体一点的，这种工作强度搞个半年人肯定会垮掉的。加油加油！</p>


<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/08/back-to-beijing/" rel="bookmark">回到北京了</a><!-- (3)--></li>
		<li><a href="http://www.agilephp.net/2010/08/25-years-old/" rel="bookmark">25岁</a><!-- (3)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/04/recently/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用JDK进行Performance Tuning</title>
		<link>http://www.agilephp.net/2010/04/performance-tuning-with-jdk-tools/</link>
		<comments>http://www.agilephp.net/2010/04/performance-tuning-with-jdk-tools/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 13:40:41 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[软件]]></category>
		<category><![CDATA[jconsole]]></category>
		<category><![CDATA[jdk]]></category>
		<category><![CDATA[jmap]]></category>
		<category><![CDATA[jps]]></category>
		<category><![CDATA[jvisualvm]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[tuning]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/04/%e4%bd%bf%e7%94%a8jdk%e8%bf%9b%e8%a1%8cperformance-tuning/</guid>
		<description><![CDATA[JDK里有三个很好用的工具，jmap，jconsole和jvisualvm，三个工具都各有所侧重，但是如果你的系统遇到性能瓶颈（内存不足或是CPU占用率过高），你可以通过这三个工具来发现应用里的hot spot。我今天只记一下大概的用法，给自己做个备忘，详细的使用说明，等忙完了这段时间，整理一下。 先介绍一个小工具，jps，这也是jdk自带的工具之一，可以列出系统里所有的java进程。 jmap可以查看程序中堆的使用情况，具体的用法是： jmap –histo:live &#60;pid&#62;； 以及可以将堆dump到一个文件，命令是： jmap –dump:format=b,file=heap.bin &#60;pid&#62;； 请在&#60;pid&#62;处填入相应的进程的id。 jconsole可以查看某个java进程的内存使用、CPU占用率等， 如果想要远程查看某一java程序，则需要在该程序启动参数里加下如下参数： -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false 上文使用的9001是监听的端口号，你可以指定其他的值。然后在你的终端键入jconsole，选择连接远程进程，并填入相应的主机名和端口即可。如果无法连接，请修改/etc/hosts里的内容，将localhost绑定到机器的外部ip地址。 相应的数据可以导出为一个csv文件，这个很方便。 jvisualvm功能与jconsole的基本类似，但是可以做性能分析。 即可以分析出CPU时间被哪些线程所占用了，等等，并且它支持jmx，这东西我只听说过没用过，先放一边不表。 配置jvisualvm不需要改动原程序的启动参数，只需要在远程主机上运行jstatd即可。 新建一个叫jstatd.all.policy的文件，内容是： grant codebase &#34;file:${java.home}/../lib/tools.jar&#34; { &#160;&#160;&#160; permission java.security.AllPermission; }; 然后使用如下命令启动jstatd， jstatd -J-Djava.security.policy=jstatd.all.policy 然后在jvisualvm里选择添加远程主机即可。如果无法连接，请修改/etc/hosts里的内容，将localhost绑定到机器的外部ip地址。 Related Posts Java中线程同步的简单用法 Python and RRD QQ五笔输入法

<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/10/java-wait-and-notify/" rel="bookmark">Java中线程同步的简单用法</a><!-- (5.56363)--></li>
		<li><a href="http://www.agilephp.net/2010/01/python-and-rrd/" rel="bookmark">Python and RRD</a><!-- (4.88355)--></li>
		<li><a href="http://www.agilephp.net/2009/12/qq-wubi-input-method/" rel="bookmark">QQ五笔输入法</a><!-- (4.86992)--></li>
	</ol>
]]></description>
			<content:encoded><![CDATA[<p>JDK里有三个很好用的工具，<a href="http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jmap.html">jmap</a>，<a href="http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html">jconsole</a>和<a href="http://java.sun.com/javase/6/docs/technotes/tools/share/jvisualvm.html">jvisualvm</a>，三个工具都各有所侧重，但是如果你的系统遇到性能瓶颈（内存不足或是CPU占用率过高），你可以通过这三个工具来发现应用里的hot spot。我今天只记一下大概的用法，给自己做个备忘，详细的使用说明，等忙完了这段时间，整理一下。</p>
<p>先介绍一个小工具，jps，这也是jdk自带的工具之一，可以列出系统里所有的java进程。</p>
<p><strong>jmap可以查看程序中堆的使用情况，具体的用法是：</strong></p>
<p>jmap –histo:live &lt;pid&gt;；</p>
<p>以及可以将堆dump到一个文件，命令是：</p>
<p>jmap –dump:format=b,file=heap.bin &lt;pid&gt;；</p>
<p>请在&lt;pid&gt;处填入相应的进程的id。</p>
<p><strong>jconsole可以查看某个java进程的内存使用、CPU占用率等，</strong></p>
<p>如果想要远程查看某一java程序，则需要在该程序启动参数里加下如下参数：</p>
<p>-Dcom.sun.management.jmxremote   <br />-Dcom.sun.management.jmxremote.port=<em>9001     <br /></em>-Dcom.sun.management.jmxremote.authenticate=false    <br />-Dcom.sun.management.jmxremote.ssl=false</p>
<p>上文使用的9001是监听的端口号，你可以指定其他的值。然后在你的终端键入jconsole，选择连接远程进程，并填入相应的主机名和端口即可。<em>如果无法连接，请修改/etc/hosts里的内容，将localhost绑定到机器的外部ip地址。</em></p>
<p>相应的数据可以导出为一个csv文件，这个很方便。</p>
<p><strong>jvisualvm功能与jconsole的基本类似，但是可以做性能分析。</strong></p>
<p>即可以分析出CPU时间被哪些线程所占用了，等等，并且它支持<a href="http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/">jmx</a>，这东西我只听说过没用过，先放一边不表。</p>
<p>配置jvisualvm不需要改动原程序的启动参数，只需要在远程主机上运行<a href="http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jstatd.html">jstatd</a>即可。</p>
<p>新建一个叫jstatd.all.policy的文件，内容是：</p>
<p>grant codebase &quot;file:${java.home}/../lib/tools.jar&quot; {   <br />&#160;&#160;&#160; permission java.security.AllPermission;    <br />};</p>
<p>然后使用如下命令启动jstatd，</p>
<p>jstatd -J-Djava.security.policy=jstatd.all.policy</p>
<p>然后在jvisualvm里选择添加远程主机即可。<em>如果无法连接，请修改/etc/hosts里的内容，将localhost绑定到机器的外部ip地址。</em></p>


<h3>Related Posts</h3>
<ol>
		<li><a href="http://www.agilephp.net/2009/10/java-wait-and-notify/" rel="bookmark">Java中线程同步的简单用法</a><!-- (5.56363)--></li>
		<li><a href="http://www.agilephp.net/2010/01/python-and-rrd/" rel="bookmark">Python and RRD</a><!-- (4.88355)--></li>
		<li><a href="http://www.agilephp.net/2009/12/qq-wubi-input-method/" rel="bookmark">QQ五笔输入法</a><!-- (4.86992)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/04/performance-tuning-with-jdk-tools/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>第一次参加QClub的活动</title>
		<link>http://www.agilephp.net/2010/04/my-first-qclub-event/</link>
		<comments>http://www.agilephp.net/2010/04/my-first-qclub-event/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 14:43:07 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[opensource]]></category>
		<category><![CDATA[云计算]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[数据库]]></category>
		<category><![CDATA[校园]]></category>
		<category><![CDATA[生活]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[BeansDB]]></category>
		<category><![CDATA[QClub]]></category>
		<category><![CDATA[Web2.0]]></category>
		<category><![CDATA[百度]]></category>
		<category><![CDATA[豆瓣]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/04/%e7%ac%ac%e4%b8%80%e6%ac%a1%e5%8f%82%e5%8a%a0qclub%e7%9a%84%e6%b4%bb%e5%8a%a8/</guid>
		<description><![CDATA[去年也报过一次名，但是最后有事情所以就没有去。这周一收到的邮件，QClub有一个技术沙龙的活动，定在周六，想来自己周六也没有别的什么事情，就报名参加了，看到题目也是我感兴趣的内容。其一是由百度的黄容芳讲的《Web数据交互的艺术》，其二是由豆瓣的刘洪清讲的《分布式数据库BeansDB在豆瓣的应用》。 黄的演讲，如果去掉艺术二字，个人认为还是一个很好的演讲，其讲了Web数据的几种不同实现，其对长连接的分析十分清晰明了，不过黄把“轮询”写成了“轮循”，虽然是个小错误，但我觉得“轮询”解释了此事件的本质，即间隔一段时间轮流（轮）询问（询），而轮循仅能表达轮流循环的意思；关于数据压缩，主要讲到了两种主要的实施手段，一是使用类似YUI Compressor的压缩器主动对需要传输的内容进行“精简”，我觉得称之为“精简”更明确一点。另外一种是使用GZIP来做压缩，对于大型网站为了提高用户体验，加快网页的加载时间，这是两个很好的方法。后面说到的跨浏览器通信，则是我完全没有接触过的内容，主要是想解决当客户在同一台机器上打开不同的浏览器，或是使用同一浏览器同时打开某一页面时，各页面之间内容同步的问题，主要的解决方案是Flash。后面说到了数据在客户端的存储，提到了ie的UserData，Firefox的localStorage以及Flash和HTM5，却没有提Google Gears，百度是不是跟Google有仇？ 说到Flash，黄说Flash的覆盖率还不是很高，只有97%，百度能在乎剩下的3%，着实是挺令我惊讶，想中国的大多数网银和几年前的淘宝支付宝都不支持Firefox。不过我倒是很赞赏Apple的作法，宁愿支持html5也不愿意支持FLASH，不论苹果是否只是由商业利益做出的考虑，但是阻止flash来扰乱本来就已经很混乱的web标准，我是很赞同这样的作法的。 另外一位豆瓣的工程师刘讲的内容也吸引了很多人，我自己也被他的话题所吸引。说到分布式key-value数据库，自己早有耳闻，但是我一直不明白也一直不是很清楚这种类型的数据库如何被有效的利用在web2.0的应用中。豆瓣的作法是没有完全将MySQL替换掉，而是将那些结构化的数据依然保留在MySQL中，而将另外一些依据应用场景数量多，对一致性要求不是十分高、许多场景下是一次写入多次读出的数据存储在他们的分布式key-value数据库中。工业界追求第一位的并不是程序的理论上的最优性，而是在应用需求前提之下的性能和成本。key-value分布式数据库不是万能的，但是在一些场景之下，却可以解决应用的许多问题。豆瓣网的现行用户有3000多万，其每天处理的数据我觉得还算是一个不是非常巨大的场景，与twitter和facebook相比，其还要差一到两个层级。随着豆瓣的成长，希望能从他们那里得到更多的经验。 最近很忙，少有更新博客，可以在twitter上联系我。@bbiao Related Posts 没有相关文章

<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></description>
			<content:encoded><![CDATA[<p>去年也报过一次名，但是最后有事情所以就没有去。这周一收到的邮件，QClub有一个技术沙龙的活动，定在周六，想来自己周六也没有别的什么事情，就报名参加了，看到题目也是我感兴趣的内容。其一是由百度的黄容芳讲的《Web数据交互的艺术》，其二是由豆瓣的刘洪清讲的《分布式数据库BeansDB在豆瓣的应用》。</p>
<p>黄的演讲，如果去掉艺术二字，个人认为还是一个很好的演讲，其讲了Web数据的几种不同实现，其对长连接的分析十分清晰明了，不过黄把“轮询”写成了“轮循”，虽然是个小错误，但我觉得“轮询”解释了此事件的本质，即间隔一段时间轮流（轮）询问（询），而轮循仅能表达轮流循环的意思；关于数据压缩，主要讲到了两种主要的实施手段，一是使用类似<a href="http://developer.yahoo.com/yui/compressor/">YUI Compressor</a>的压缩器主动对需要传输的内容进行“精简”，我觉得称之为“精简”更明确一点。另外一种是使用GZIP来做压缩，对于大型网站为了提高用户体验，加快网页的加载时间，这是两个很好的方法。后面说到的跨浏览器通信，则是我完全没有接触过的内容，主要是想解决当客户在同一台机器上打开不同的浏览器，或是使用同一浏览器同时打开某一页面时，各页面之间内容同步的问题，主要的解决方案是Flash。后面说到了数据在客户端的存储，提到了<a href="http://msdn.microsoft.com/en-us/library/ms531424%28VS.85%29.aspx">ie的UserData</a>，Firefox的<a href="http://hacks.mozilla.org/2009/06/localstorage/">localStorage</a>以及Flash和HTM5，却没有提<a href="http://gears.google.com/">Google Gears</a>，百度是不是跟Google有仇？</p>
<p>说到Flash，黄说Flash的覆盖率还不是很高，只有97%，百度能在乎剩下的3%，着实是挺令我惊讶，想中国的大多数网银和几年前的淘宝支付宝都不支持Firefox。不过我倒是很赞赏Apple的作法，宁愿支持html5也不愿意支持FLASH，不论苹果是否只是由商业利益做出的考虑，但是阻止flash来扰乱本来就已经很混乱的web标准，我是很赞同这样的作法的。</p>
<p>另外一位豆瓣的工程师刘讲的内容也吸引了很多人，我自己也被他的话题所吸引。说到分布式key-value数据库，自己早有耳闻，但是我一直不明白也一直不是很清楚这种类型的数据库如何被有效的利用在web2.0的应用中。豆瓣的作法是没有完全将MySQL替换掉，而是将那些结构化的数据依然保留在MySQL中，而将另外一些依据应用场景数量多，对一致性要求不是十分高、许多场景下是一次写入多次读出的数据存储在他们的分布式key-value数据库中。工业界追求第一位的并不是程序的理论上的最优性，而是在应用需求前提之下的性能和成本。key-value分布式数据库不是万能的，但是在一些场景之下，却可以解决应用的许多问题。豆瓣网的现行用户有3000多万，其每天处理的数据我觉得还算是一个不是非常巨大的场景，与twitter和facebook相比，其还要差一到两个层级。随着豆瓣的成长，希望能从他们那里得到更多的经验。</p>
<p>最近很忙，少有更新博客，可以在twitter上联系我。<a href="http://twitter.com/bbiao">@bbiao</a></p>


<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/04/my-first-qclub-event/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>周六小记</title>
		<link>http://www.agilephp.net/2010/03/%e5%91%a8%e5%85%ad%e5%b0%8f%e8%ae%b0/</link>
		<comments>http://www.agilephp.net/2010/03/%e5%91%a8%e5%85%ad%e5%b0%8f%e8%ae%b0/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 13:54:15 +0000</pubDate>
		<dc:creator>bbiao</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[g2]]></category>
		<category><![CDATA[htc]]></category>
		<category><![CDATA[magic]]></category>
		<category><![CDATA[中关村]]></category>
		<category><![CDATA[安卓]]></category>
		<category><![CDATA[机锋]]></category>
		<category><![CDATA[水货]]></category>

		<guid isPermaLink="false">http://www.agilephp.net/2010/03/%e5%91%a8%e5%85%ad%e5%b0%8f%e8%ae%b0/</guid>
		<description><![CDATA[CHB想换手机，看中了HTC Magic(G2)，我跟他说中关村水太深，你先去论坛上泡一段时间，摸一下底细再买，给他推荐了两个论坛机锋网和安卓网，其实我也没买过水货手机，不过想想这两家国内关注Android的论坛应该算是最大的两这了，看一看应该有收获。 昨天他说，看得差不多了，也查了一下报价，今天准备入手。早上打我电话，到实验室另一个在西安买过G2的小学弟把今天一些村里商家的报价打出来，最低1530，我差点喷了，不过同一店家的报价也有2000多的，于是觉得这一定是水价，肯定只是想吸引我们过去。 果然不出我所料，上午逛了几家在网上报价低的商家，全部是出了2100以上的价格，最贵的有报2300的，比我心理价位2000贵了许多。而且这种形势，在大部分商家都报高价的情况下，那些报低价的货的质量就十分令我们担忧。最后挑来挑去未果，中午先去吃饭，在大食代解决了午饭，下午继续，基本上定在了一这机锋认证的卖家那，贵是贵一点，也就一百块钱左右，但是能买个放心。出价2230，加一张sandisk4G的行货卡，贴膜，一共2310，10钱都不给便宜。之后便是装系统，刷机什么的。搞定的时候也三点多了，期间有个小朋友以十分快捷的速度买了Moto Milestone。 然后在回来的路上等车的时候，青年工社的人给我打电话，小黑修好了。我去取，换了主板，而且是蓝快的备板，全新的。交了500块钱有偿保修的费用，心里也算比较开心吧。终于修好了，周二送过去的，速度还可以。 Related Posts 没有相关文章

<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://willchan.info/" target="_blank">CHB</a>想换手机，看中了<a href="http://www.htc.com/www/product/magic/overview.html" target="_blank">HTC Magic(G2)</a>，我跟他说中关村水太深，你先去论坛上泡一段时间，摸一下底细再买，给他推荐了两个论坛<a href="http://www.androidin.net/bbs/" target="_blank">机锋网</a>和<a href="http://www.hiapk.com/bbs/" target="_blank">安卓网</a>，其实我也没买过水货手机，不过想想这两家国内关注Android的论坛应该算是最大的两这了，看一看应该有收获。</p>
<p>昨天他说，看得差不多了，也查了一下报价，今天准备入手。早上打我电话，到实验室另一个在西安买过G2的小学弟把今天一些村里商家的报价打出来，最低1530，我差点喷了，不过同一店家的报价也有2000多的，于是觉得这一定是水价，肯定只是想吸引我们过去。</p>
<p>果然不出我所料，上午逛了几家在网上报价低的商家，全部是出了2100以上的价格，最贵的有报2300的，比我心理价位2000贵了许多。而且这种形势，在大部分商家都报高价的情况下，那些报低价的货的质量就十分令我们担忧。最后挑来挑去未果，中午先去吃饭，在大食代解决了午饭，下午继续，基本上定在了一这机锋认证的卖家那，贵是贵一点，也就一百块钱左右，但是能买个放心。出价2230，加一张sandisk4G的行货卡，贴膜，一共2310，10钱都不给便宜。之后便是装系统，刷机什么的。搞定的时候也三点多了，期间有个小朋友以十分快捷的速度买了Moto Milestone。</p>
<p>然后在回来的路上等车的时候，青年工社的人给我打电话，小黑修好了。我去取，换了主板，而且是蓝快的备板，全新的。交了500块钱有偿保修的费用，心里也算比较开心吧。终于修好了，周二送过去的，速度还可以。</p>


<h3>Related Posts</h3>
<ol>
	<li><a href="http://www.agilephp.net" rel="bookmark">没有相关文章</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.agilephp.net/2010/03/%e5%91%a8%e5%85%ad%e5%b0%8f%e8%ae%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
