<?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>桄欣結</title>
	<atom:link href="http://guangxin.name/index.php/feed" rel="self" type="application/rss+xml" />
	<link>http://guangxin.name</link>
	<description>綁在人生邊上</description>
	<lastBuildDate>Tue, 15 Jun 2010 17:24:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ob_gzhandler是可以获得content-length的</title>
		<link>http://guangxin.name/index.php/tech/php/201006/306</link>
		<comments>http://guangxin.name/index.php/tech/php/201006/306#comments</comments>
		<pubDate>Tue, 15 Jun 2010 17:24:52 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[content-length]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[output buffer]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=306</guid>
		<description><![CDATA[之前以为PHP的ob函数无法在gzip的时候获得内容长度，简单地改了Twip的代码，使之不报告Content-Length。今天偶然搜索Gravity的相关内容，看到@empyreaner君提供的获取Content-Length方法：
Ob_Start();
Ob_Start(‘ob_gzhandler’);
echo $content;
Ob_End_Flush();
header(“Content-Length: “.ob_get_length());
Ob_End_Flush();

此法甚为巧妙，PHP手册也有一句：Output buffers are stackable, that is, you may call ob_start() while another ob_start() is active.只恨自己阅读太不仔细，遂写此文以志之。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">之前以为PHP的ob函数无法在gzip的时候获得内容长度，简单地改了Twip的代码，使之不报告Content-Length。今天偶然搜索Gravity的相关内容，看到<a rel="external nofollow" href="http://twitter.com/empyreaner">@empyreaner</a>君提供的获取Content-Length方法：</div>
<div style="font-family: mono; background-color: gray; padding: 0em 3em 0em 3em;">Ob_Start();<br />
Ob_Start(‘ob_gzhandler’);<br />
echo $content;<br />
Ob_End_Flush();<br />
header(“Content-Length: “.ob_get_length());<br />
Ob_End_Flush();</p>
</div>
<div style="text-indent: 2em;">此法甚为巧妙，PHP手册也有一句：Output buffers are stackable, that is, you may call <strong>ob_start()</strong> while another <strong>ob_start()</strong> is active.只恨自己阅读太不仔细，遂写此文以志之。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/tech/php/201006/306/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ZT面试腾讯客服</title>
		<link>http://guangxin.name/index.php/unsorted/zt/201006/303</link>
		<comments>http://guangxin.name/index.php/unsorted/zt/201006/303#comments</comments>
		<pubDate>Sat, 12 Jun 2010 03:44:44 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[转发]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=303</guid>
		<description><![CDATA[【段子】面试腾讯客服
考官：什么学历？
考生：小学没毕业。
考官：有QQ么？
考生：6位的。
考官：有玩农场吗？
考生：天天种萝卜。
考官：耐性如何？
考生：还可以，为偷一个萝卜守了10小时。
考官：对外挂怎么看？
考生：市场需求嘛，捉鬼放鬼、再时不时制造几个冤假错案公司才有利润。
考官：？？？？？？
考生：都公平了，谁来网站发帖？网站靠的就是点击率，点击率上不去网站吃什么喝什么？我岂不是就没事干了？
考官：！！！！！！！
考官：遇到懂编程又被误降得农场玩家电话骚扰怎么办？
考生：那更简单，只讲八个字』数据隐私，恕难奉告』。
考官：牧场迟迟没有开通你怎么看？
考生：要的就是吊胃口，不拖久了谁来充黄钻啊！
考官：有人发帖接我们的老底子怎么办？
考生：锁帖，封号！顺带换个马甲问候他的家人！
考官：好的，你考试通过了，我们腾讯客服需要的就是你这样的人才！
考官：再问一句有人被误降且是黄钻，这样的人去315或者媒体投诉我们怎么办？
考生：就说是我弄得，我是临时工啥也不懂，公司概不负责。我绝不拖累组织
考官：靠~，你天生就是干腾讯客服的料，马上就上班！！！
]]></description>
			<content:encoded><![CDATA[<p>【段子】面试腾讯客服</p>
<p>考官：什么学历？</p>
<p>考生：小学没毕业。</p>
<p>考官：有QQ么？</p>
<p>考生：6位的。</p>
<p>考官：有玩农场吗？</p>
<p>考生：天天种萝卜。</p>
<p>考官：耐性如何？</p>
<p>考生：还可以，为偷一个萝卜守了10小时。</p>
<p>考官：对外挂怎么看？</p>
<p>考生：市场需求嘛，捉鬼放鬼、再时不时制造几个冤假错案公司才有利润。</p>
<p>考官：？？？？？？</p>
<p>考生：都公平了，谁来网站发帖？网站靠的就是点击率，点击率上不去网站吃什么喝什么？我岂不是就没事干了？</p>
<p>考官：！！！！！！！</p>
<p>考官：遇到懂编程又被误降得农场玩家电话骚扰怎么办？</p>
<p>考生：那更简单，只讲八个字』数据隐私，恕难奉告』。</p>
<p>考官：牧场迟迟没有开通你怎么看？</p>
<p>考生：要的就是吊胃口，不拖久了谁来充黄钻啊！</p>
<p>考官：有人发帖接我们的老底子怎么办？</p>
<p>考生：锁帖，封号！顺带换个马甲问候他的家人！</p>
<p>考官：好的，你考试通过了，我们腾讯客服需要的就是你这样的人才！</p>
<p>考官：再问一句有人被误降且是黄钻，这样的人去315或者媒体投诉我们怎么办？</p>
<p>考生：就说是我弄得，我是临时工啥也不懂，公司概不负责。我绝不拖累组织</p>
<p>考官：靠~，你天生就是干腾讯客服的料，马上就上班！！！</p>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/zt/201006/303/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>网络维护日</title>
		<link>http://guangxin.name/index.php/tech/upgrade/201006/301</link>
		<comments>http://guangxin.name/index.php/tech/upgrade/201006/301#comments</comments>
		<pubDate>Thu, 03 Jun 2010 08:36:08 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[升级]]></category>
		<category><![CDATA[全国网络维护日]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=301</guid>
		<description><![CDATA[明天是一年一度的网络维护日，主机将进行维护，暂停除rek.tw外的全部服务。维护时间一天，后天将恢复服务。届时一批软件将升级到新版本，为了应对OAuth时代的来临。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">明天是一年一度的网络维护日，主机将进行维护，暂停除rek.tw外的全部服务。维护时间一天，后天将恢复服务。届时一批软件将升级到新版本，为了应对OAuth时代的来临。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/tech/upgrade/201006/301/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>初夏</title>
		<link>http://guangxin.name/index.php/arti/fancy/201005/290</link>
		<comments>http://guangxin.name/index.php/arti/fancy/201005/290#comments</comments>
		<pubDate>Wed, 05 May 2010 16:29:00 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[随笔]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=290</guid>
		<description><![CDATA[黄昏的时候在校园里漫步。饱的悠闲替代了饿的匆忙。可以安心地欣赏周遭的景色，已经完全是夏天的光景了。树叶郁郁葱葱，一束红光穿过枝叶，在墙上留下鲜明的色彩反差。晌午的灼热的空气已经冷却下来，但曝晒后的味道还在弥散。亭子里没有人，似乎大家还没有从冬天的感觉中缓过劲来。
今年的夏天来得太突然了，一夜之间气温就从十度以下升到了三十度以上。这一觉睡的，梦中不管穿什么都嫌热，醒来一睁眼就是艳阳高照的时节。
我确实更喜欢夏天，尤其是阳光灿烂的日子。这样的天气可以比较活跃地行动，不会为寒冷弄得无法思考。汗是会流一点，喝点水也就是了。
考虑哪天去紫竹院看看，也挑黄昏的时候吧。
通過行動電話發佈
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">黄昏的时候在校园里漫步。饱的悠闲替代了饿的匆忙。可以安心地欣赏周遭的景色，已经完全是夏天的光景了。树叶郁郁葱葱，一束红光穿过枝叶，在墙上留下鲜明的色彩反差。晌午的灼热的空气已经冷却下来，但曝晒后的味道还在弥散。亭子里没有人，似乎大家还没有从冬天的感觉中缓过劲来。</div>
<div style="text-indent: 2em;">今年的夏天来得太突然了，一夜之间气温就从十度以下升到了三十度以上。这一觉睡的，梦中不管穿什么都嫌热，醒来一睁眼就是艳阳高照的时节。</div>
<div style="text-indent: 2em;">我确实更喜欢夏天，尤其是阳光灿烂的日子。这样的天气可以比较活跃地行动，不会为寒冷弄得无法思考。汗是会流一点，喝点水也就是了。</div>
<div style="text-indent: 2em;">考虑哪天去紫竹院看看，也挑黄昏的时候吧。</div>
<div style="padding: 2em; color: #a8ef9d;">通過行動電話發佈</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/arti/fancy/201005/290/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>受保護的文章：也好</title>
		<link>http://guangxin.name/index.php/unsorted/201004/285</link>
		<comments>http://guangxin.name/index.php/unsorted/201004/285#comments</comments>
		<pubDate>Mon, 26 Apr 2010 16:30:03 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[其它]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=285</guid>
		<description><![CDATA[受保護的文章不會產生摘要。]]></description>
			<content:encoded><![CDATA[<form action="http://guangxin.name/wp-pass.php" method="post">
<p>本文受密碼保護，須填寫您的密碼才能閱讀。</p>
<p><label for="pwbox-285">登入密碼：<br />
<input name="post_password" id="pwbox-285" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="送出" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/201004/285/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>喷</title>
		<link>http://guangxin.name/index.php/arti/fancy/201004/281</link>
		<comments>http://guangxin.name/index.php/arti/fancy/201004/281#comments</comments>
		<pubDate>Sun, 25 Apr 2010 18:47:31 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[读书]]></category>
		<category><![CDATA[随笔]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=281</guid>
		<description><![CDATA[大刘新买了一个7吋的掌机，能上网能听音乐能看书能玩游戏当然看高清也不是问题，我觉得如果加上触控就是一台Tablet PC。他的购买动机也挺简单，原来那台屏太小，看着不爽，尤其是看pdf的时候。pdf这种有版式的文档，在小屏幕上显示总不太好看，这也是我想处理掉手机那台5吋的汉王，再换过一台7吋的sony reader的原因。不同之处在于我是比较容易分心的，如果看上的家伙功能齐备，我就不会安心看书了。
c6h6很惊讶我到现在也没有看完《一九八四》，其实这一点也不奇怪，S60手机功能如此丰富，我大概只有在网络全断的时候才会想着打开Anyview看一会儿书。这个月也就读了四成的样子，还有大半文字没有过眼，书评当然是写不出来的。不过并没有觉得这书中所述人生像小刘说的那样和现实社会“一样一样”，倒反觉得很是不同。现实生活中没有电幕，没有思想警察，没有业余纠察队。尽管我们有安全局会关注某些人，有国宝会关照某些人，还有小黑屋会关禁某些人，但总的来说，比之《一九八四》中的情形还是宽松许多，至少《一九八四》还没有被禁掉。官员也并非都如湖北省长在记者会上那样粗犷，伍皓先生面对满天纷飞的五毛纸币也能心平气和地畅所欲言。
真正禁锢的是自己。不知道从什么时候开始，自觉地把一些词汇用“敏感词”代替了，起先比如“六四”或者“法轮功”，后来又如“艾未未”以及“谭作人”，再后来至于连“胡萝卜”和“温习”都要煞有介事地冠以“敏感词”的称谓。于是论坛里、QQ上、校内的签名、cB的评论，话读起来总不怎么朗朗上口。这一句两句，是嘲讽，泛滥之后，却似乎是刻意把自己放在了别人曾经设置的界限里，不愿意出来。久而久之，就成了强迫幻想。听到反对的声音就会紧张，看到批评的严辞就会恐惧，有时哪怕没人反对、批评、禁止、迫害，也会自己树起一个假想敌，然后一个劲儿控制自己。一次次在blog评论中自觉委屈地哀诉“博主不让人说话”，一次次强调对方“把一群人一棍子打死”。真可笑！不是也没删帖么，何必急得说不出来一二三，就高呼“不让说话”？
那压抑的心情，思前想后的踌躇，畏首畏尾的决策，延伸到每一根神经。以至连玩一盘合作对抗游戏都不敢随性而动，怕死，怕队友批评，怕不知所以的自我蛮怨……不想说，不想做，不想改变一切，希望能逃到一个静如止水的世界，希望能拥有冻结时间的力量，希望像小说作者一样超越“我”的界限观察每一个朋友。
何不像火山一样喷？让思想自由漫溢，争一回强势，主动输出观点，据理力争，反驳每一个反对者。在餐厅尽情地笑，开口跟哥们骂脏话，分享低俗段子，去想去的地方旅游，对央视主持人吹毛求疵，写敏感词的本来样子。那又怎样？不可能天下大乱。防微杜渐本属扯蛋，那不过是表面的平稳和真实的积怨。
别让自己背离朋友，别让自己背离正常的心境，别让自己背离从来的生活，就是积极和优秀。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">大刘新买了一个7吋的掌机，能上网能听音乐能看书能玩游戏当然看高清也不是问题，我觉得如果加上触控就是一台Tablet PC。他的购买动机也挺简单，原来那台屏太小，看着不爽，尤其是看pdf的时候。pdf这种有版式的文档，在小屏幕上显示总不太好看，这也是我想处理掉手机那台5吋的汉王，再换过一台7吋的sony reader的原因。不同之处在于我是比较容易分心的，如果看上的家伙功能齐备，我就不会安心看书了。</div>
<div style="text-indent: 2em;">c6h6很惊讶我到现在也没有看完《一九八四》，其实这一点也不奇怪，S60手机功能如此丰富，我大概只有在网络全断的时候才会想着打开Anyview看一会儿书。这个月也就读了四成的样子，还有大半文字没有过眼，书评当然是写不出来的。不过并没有觉得这书中所述人生像小刘说的那样和现实社会“一样一样”，倒反觉得很是不同。现实生活中没有电幕，没有思想警察，没有业余纠察队。尽管我们有安全局会关注某些人，有国宝会关照某些人，还有小黑屋会关禁某些人，但总的来说，比之《一九八四》中的情形还是宽松许多，至少《一九八四》还没有被禁掉。官员也并非都如湖北省长在记者会上那样粗犷，伍皓先生面对满天纷飞的五毛纸币也能心平气和地畅所欲言。</div>
<div style="text-indent: 2em;">真正禁锢的是自己。不知道从什么时候开始，自觉地把一些词汇用“敏感词”代替了，起先比如“六四”或者“法轮功”，后来又如“艾未未”以及“谭作人”，再后来至于连“胡萝卜”和“温习”都要煞有介事地冠以“敏感词”的称谓。于是论坛里、QQ上、校内的签名、cB的评论，话读起来总不怎么朗朗上口。这一句两句，是嘲讽，泛滥之后，却似乎是刻意把自己放在了别人曾经设置的界限里，不愿意出来。久而久之，就成了强迫幻想。听到反对的声音就会紧张，看到批评的严辞就会恐惧，有时哪怕没人反对、批评、禁止、迫害，也会自己树起一个假想敌，然后一个劲儿控制自己。一次次在blog评论中自觉委屈地哀诉“博主不让人说话”，一次次强调对方“把一群人一棍子打死”。真可笑！不是也没删帖么，何必急得说不出来一二三，就高呼“不让说话”？</div>
<div style="text-indent: 2em;">那压抑的心情，思前想后的踌躇，畏首畏尾的决策，延伸到每一根神经。以至连玩一盘合作对抗游戏都不敢随性而动，怕死，怕队友批评，怕不知所以的自我蛮怨……不想说，不想做，不想改变一切，希望能逃到一个静如止水的世界，希望能拥有冻结时间的力量，希望像小说作者一样超越“我”的界限观察每一个朋友。</div>
<div style="text-indent: 2em;">何不像火山一样喷？让思想自由漫溢，争一回强势，主动输出观点，据理力争，反驳每一个反对者。在餐厅尽情地笑，开口跟哥们骂脏话，分享低俗段子，去想去的地方旅游，对央视主持人吹毛求疵，写敏感词的本来样子。那又怎样？不可能天下大乱。防微杜渐本属扯蛋，那不过是表面的平稳和真实的积怨。</div>
<div style="text-indent: 2em;">别让自己背离朋友，别让自己背离正常的心境，别让自己背离从来的生活，就是积极和优秀。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/arti/fancy/201004/281/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>举国哀悼</title>
		<link>http://guangxin.name/index.php/arti/fancy/201004/278</link>
		<comments>http://guangxin.name/index.php/arti/fancy/201004/278#comments</comments>
		<pubDate>Tue, 20 Apr 2010 19:41:09 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[随笔]]></category>
		<category><![CDATA[哀悼]]></category>
		<category><![CDATA[玉树]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=278</guid>
		<description><![CDATA[明天是女儿的生日，恰巧又是青海玉树地震的全国哀悼日，不能庆祝，所以考虑调整到阴历，庆祝三月廿四。身为中国人很庆幸，生日有两个可以过；身为中国人也很不幸，一纸政令能干涉所有老百姓的自由。
玉树地震远远没有像汶川地震那样给我造成强烈的震惊和伤痛。这或许是因为青海地广人稀，死难人数大大少于汶川地震；或许是因为中宣部管控得力，新闻媒体不能充分报道；亦或许是因为汶川地震和之后的种种让我神经变得麻木，以至于得悉此般灾难降临，心底竟只能挤出一句“是么？”。没有给玉树人民捐款，我已基本停止了捐款这样的行动。社会中太多的毒瘤，让人变得冷漠，我几乎不敢用道德的犀利目光审视自己。
但当我看到给四川的捐款逾八成流入政府帐户，使用细则却迟迟不见公开；看到军警以“昆明市专供水库”为名禁止干渴的村民取用；看到矿难发生后，只谈救人奇迹，不谈安全责任……这一个又一个的惨痛事实摆在我的面前的时候，我对这个社会失去了信心，也失去了敞开荷包的念头。我想：只帮助那些我认识的人，并且摒弃所有中间环节，让财与力直接发挥作用。
终究还是要哀悼的，虽然不能像艾未未那样把每一个孩子记住，年复一年地追思，但总可以在哀思之余能想想清楚，希望在哪里。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">明天是女儿的生日，恰巧又是青海玉树地震的全国哀悼日，不能庆祝，所以考虑调整到阴历，庆祝三月廿四。身为中国人很庆幸，生日有两个可以过；身为中国人也很不幸，一纸政令能干涉所有老百姓的自由。</div>
<div style="text-indent: 2em;">玉树地震远远没有像汶川地震那样给我造成强烈的震惊和伤痛。这或许是因为青海地广人稀，死难人数大大少于汶川地震；或许是因为中宣部管控得力，新闻媒体不能充分报道；亦或许是因为汶川地震和之后的种种让我神经变得麻木，以至于得悉此般灾难降临，心底竟只能挤出一句“是么？”。没有给玉树人民捐款，我已基本停止了捐款这样的行动。社会中太多的毒瘤，让人变得冷漠，我几乎不敢用道德的犀利目光审视自己。</div>
<div style="text-indent: 2em;">但当我看到给四川的捐款逾八成流入政府帐户，使用细则却迟迟不见公开；看到军警以“昆明市专供水库”为名禁止干渴的村民取用；看到矿难发生后，只谈救人奇迹，不谈安全责任……这一个又一个的惨痛事实摆在我的面前的时候，我对这个社会失去了信心，也失去了敞开荷包的念头。我想：只帮助那些我认识的人，并且摒弃所有中间环节，让财与力直接发挥作用。</div>
<div style="text-indent: 2em;">终究还是要哀悼的，虽然不能像艾未未那样把每一个孩子记住，年复一年地追思，但总可以在哀思之余能想想清楚，希望在哪里。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/arti/fancy/201004/278/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>考虑更改图标</title>
		<link>http://guangxin.name/index.php/unsorted/201004/273</link>
		<comments>http://guangxin.name/index.php/unsorted/201004/273#comments</comments>
		<pubDate>Thu, 15 Apr 2010 18:23:23 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[其它]]></category>
		<category><![CDATA[GuangXiN]]></category>
		<category><![CDATA[icon]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=273</guid>
		<description><![CDATA[考虑更改图标，新版围绕桄欣结设计，并且将喜欢的字母u、v、w、x、y、z融入其中。用更柔和的色调和曲线设计，放弃以前图标的黄色调设计和尖锐棱角。
上传到twitter之后被自动截断成48&#215;48正方图标，倒有点像DNA图标了。不过没有关系，也挺好看的。
PS:想把它输出成svg，但是一下子没有找到把fla/swf转换成svg的有效办法。网上提供的在线转换都不能用，悲剧。
PS2:这个图标的文字版是“&#62;o&#60;”或者“906”，文字版没有版权，反正好玩就好。
]]></description>
			<content:encoded><![CDATA[<div class="wp-caption aligncenter" style="width: 650px"><a href="http://rek.me/newicon.png"><img title="桄欣結" src="http://rek.me/newicon.png" alt="桄欣結" width="640" height="360" /></a><p class="wp-caption-text">桄欣結</p></div>
<div style="text-indent: 2em;">考虑更改图标，新版围绕桄欣结设计，并且将喜欢的字母u、v、w、x、y、z融入其中。用更柔和的色调和曲线设计，放弃以前图标的黄色调设计和尖锐棱角。</div>
<div class="wp-caption aligncenter" style="width: 58px"><a href="http://a1.twimg.com/profile_images/825641552/newicon96_normal.png"><img title="Twitter版图标" src="http://a1.twimg.com/profile_images/825641552/newicon96_normal.png" alt="Twitter版图标" width="48" height="48" /></a><p class="wp-caption-text">Twitter</p></div>
<div style="text-indent: 2em;">上传到twitter之后被自动截断成48&#215;48正方图标，倒有点像DNA图标了。不过没有关系，也挺好看的。</div>
<div style="text-indent: 2em;">PS:想把它输出成svg，但是一下子没有找到把fla/swf转换成svg的有效办法。网上提供的在线转换都不能用，悲剧。</div>
<div style="text-indent: 2em;">PS2:这个图标的文字版是“<span style="font-family: Georgia, serif;">&gt;o&lt;</span>”或者“<span style="font-family: Georgia, serif;">906</span>”，文字版没有版权，反正好玩就好。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/201004/273/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>谈谈网络服务器设计（甲）- 基于同步阻塞式IO接口设计</title>
		<link>http://guangxin.name/index.php/tech/201004/239</link>
		<comments>http://guangxin.name/index.php/tech/201004/239#comments</comments>
		<pubDate>Wed, 14 Apr 2010 18:39:27 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[技术]]></category>
		<category><![CDATA[fork]]></category>
		<category><![CDATA[worker]]></category>
		<category><![CDATA[服务器设计]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=239</guid>
		<description><![CDATA[最近开始尝试研究网络服务器软件的编写，参考了书上的几个网络服务器例子，然后又了解了Apache和lighttpd的设计架构，整理总结了几种常见的服务器设计思路把它们记录下来。网络服务器设计的关键在于解决并发问题，因为服务器都是对大量不同客户端执行相同的业务逻辑。优秀的并发设计能够提高服务器的请求承载量，保障数据安全，提供崩溃恢复能力，让服务器宕机损失最小化。
单客户端的服务器流程
首先考虑只有一个客户端请求服务的情况，服务器需要先开启一个Socket端口监听连接请求，然后接受一个客户连接，接着读取网络数据处理并发回结果，最后还要关闭网络连接。用传统的Socket函数描述，整个网络服务过程经历了bind、listen、accept、receive、send、close几个步骤，其中receive和send经历多次循环。由于receive、send等函数都是阻塞式的，没有完成接收（发送）就会等待而不往下执行，所以无法实现同时向多个客户端提供服务。
fork方式实现并行
既然单个客户端会在收发数据的时候阻塞整个程序的执行，一个简单的实现并行处理的方法很容易想到——创建多个进程（或者线程），分别服务不同的客户端。这就是fork方式的基本思路：主进程被创建之后，开启和监听端口，每每有请求的连接建立，都fork一个子进程来负责处理，主进程可以继续等待下一个客户端请求。对于每个被创建出来的子进程，都可以独立地接收和发送数据，执行服务器逻辑，完成操作关闭连接之后，子进程被销毁，资源被操作系统回收。
用一个比喻阐述fork方式的服务器就是：你（主进程）只负责接受生产订单，然后雇人（fork子进程）执行生产任务（服务器逻辑），交付产品之后将其解雇（销毁子进程）。
fork方式是最简单的网络服务器实现方式，它有着显著的缺点：fork模式大量地创建和销毁系统进程会造成巨大的系统开销。操作系统在创建进程的时候需要分配资源，复制父进程内存数据，而处理完毕后销毁进程时又需要回收内存释放资源资源，再加上大量进程存在时，系统的进程调度也会造成不小的额外开销。当然它也有显著的优点：所有客户端服务进程相互隔离互不干扰，一个进程的意外崩溃不会影响到其他进程的正常工作，对于像Web服务这样要求高度稳定、互不干扰的情况十分适合。
著名的Apache服务器至今仍在使用这种方式实现服务，就是在Apache中被称作prefork的工作方式。当然，实际用于生产环境的服务器稍微复杂一些，Apache的prefork还实现了初始进程数量控制，延缓销毁进程等技术以提升并发访问承载力。
worker方式
fork方式中进程提供的服务是一次性的，和客户端连接断开后就会销毁，这样整个服务器会同时有大量的进程需要创建和销毁。是否可以回收完成服务的进程，并让他们对新的客户连接提供服务呢？这就是worker方式。统计数据证明worker方式是相当值得使用的：一般工作的网络服务器，并发请求中大约有60%到80%是处于连接发起和等待响应状态，只有很少的部分是已经建立连接，正在服务的；而且并发访问量在短时间内是相对稳定的，很难想象服务器会遇到这一秒连接数量50，下一秒连接数量5000的情况，据此可以认为，只要有少量长期提供服务的进程或者线程就足以应对大量的并发访问。
worker方式首先创建一个独立的worker管理进程来负责创建和管理worker进程，称作worker管理器。然后主进程监听和接受请求，并把任务交给worker管理器负责。worker管理器接到任务之后，会在它维护的多个worker进程中找到一个空闲的来处理这个任务。worker进程负责具体的数据收发，服务器逻辑的执行。完成任务关闭连接之后，worker进程不是被销毁，而是通知worker管理器已经完成工作，处于空闲状态。worker管理器会考虑将下一个任务交给它。
用比喻阐述worker方式的服务器就是：你（主进程）只负责接受产品订单，请一个管家（worker管理器）负责打理生产事务，管家会长期雇佣若干工人（worker进程），你将生产任务交给管家，管家就找一个没事干的工人生产（执行服务器逻辑），工人完成任务后不会被解雇（销毁进程），管家会被下一个生产任务交给他。
worker方式实现服务器较之fork方式有不小的改进，虽然设计起来更加复杂，但和带来的收效相比是值得的。难点主要在于worker管理器的设计，为了有效的应对访问压力的变化，worker管理器需要能动态地创建和销毁worker进程，以便在访问高峰时提供更多的服务进程，访问低谷时占用更少的系统资源，并且还要能够发现并销毁出现错误僵死的worker。
worker方式的优点显而易见，缺点倒是也有不少。worker的软肋在于worker管理器进程，假如这个进程出现错误崩溃，那么整个服务器就宕机了。Apache从2.0版开始提供worker模式供选择，作为生产服务器，Apache同时使用多线程和多进程结合的方式。以worker模式启动之后，Apache会启动多个worker管理器进程，每个worker管理器会创建多个worker线程来负责具体请求。这样的设计一方面能利用更轻量级的线程机制降低worker的系统开销，方便worker管理器设计，另一方面通过增加worker管理器的冗余，提升抗风险能力——即使一个worker管理器崩溃，服务依然不会中断。
event方式
如果多个客户端交互信息量很大的话，服务器逻辑不得不大量使用同步锁定和进程间通信机制，大大增加了额外的系统开销，也造成许多死锁的风险。lighttpd服务器另辟蹊径，化整为零，利用Linux系统事件通知和异步网络IO操作的方式实现一个单线程的Web服务器。其具体实现和利弊将在下一篇文章中具体介绍和讨论。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">最近开始尝试研究网络服务器软件的编写，参考了书上的几个网络服务器例子，然后又了解了Apache和lighttpd的设计架构，整理总结了几种常见的服务器设计思路把它们记录下来。网络服务器设计的关键在于解决并发问题，因为服务器都是对大量不同客户端执行相同的业务逻辑。优秀的并发设计能够提高服务器的请求承载量，保障数据安全，提供崩溃恢复能力，让服务器宕机损失最小化。</div>
<h2>单客户端的服务器流程</h2>
<div style="text-indent: 2em;">首先考虑只有一个客户端请求服务的情况，服务器需要先开启一个Socket端口监听连接请求，然后接受一个客户连接，接着读取网络数据处理并发回结果，最后还要关闭网络连接。用传统的Socket函数描述，整个网络服务过程经历了bind、listen、accept、receive、send、close几个步骤，其中receive和send经历多次循环。由于receive、send等函数都是阻塞式的，没有完成接收（发送）就会等待而不往下执行，所以无法实现同时向多个客户端提供服务。</div>
<div id="attachment_246" class="wp-caption aligncenter" style="width: 249px"><a href="http://guangxin.name/wp-content/uploads/2010/04/single_client_loop.png"><img class="size-full wp-image-246 " title="single_client_loop" src="http://guangxin.name/wp-content/uploads/2010/04/single_client_loop.png" alt="单一客户端循环" width="239" height="580" /></a><p class="wp-caption-text">单一客户端循环</p></div>
<h2>fork方式实现并行</h2>
<div style="text-indent: 2em;">既然单个客户端会在收发数据的时候阻塞整个程序的执行，一个简单的实现并行处理的方法很容易想到——创建多个进程（或者线程），分别服务不同的客户端。这就是fork方式的基本思路：主进程被创建之后，开启和监听端口，每每有请求的连接建立，都fork一个子进程来负责处理，主进程可以继续等待下一个客户端请求。对于每个被创建出来的子进程，都可以独立地接收和发送数据，执行服务器逻辑，完成操作关闭连接之后，子进程被销毁，资源被操作系统回收。</div>
<div id="attachment_247" class="wp-caption aligncenter" style="width: 390px"><a href="http://guangxin.name/wp-content/uploads/2010/04/multi_client_fork.png"><img class="size-full wp-image-247 " title="multi_client_fork" src="http://guangxin.name/wp-content/uploads/2010/04/multi_client_fork.png" alt="通过fork实现多客户端" width="380" height="590" /></a><p class="wp-caption-text">通过fork实现多客户端</p></div>
<div style="text-indent: 2em;">用一个比喻阐述fork方式的服务器就是：<strong>你</strong>（主进程）只负责接受生产订单，然后<strong>雇人</strong>（fork子进程）执行<strong>生产任务</strong>（服务器逻辑），交付产品之后将其<strong>解雇</strong>（销毁子进程）。</div>
<div style="text-indent: 2em;">fork方式是最简单的网络服务器实现方式，它有着显著的缺点：fork模式大量地创建和销毁系统进程会造成巨大的系统开销。操作系统在创建进程的时候需要分配资源，复制父进程内存数据，而处理完毕后销毁进程时又需要回收内存释放资源资源，再加上大量进程存在时，系统的进程调度也会造成不小的额外开销。当然它也有显著的优点：所有客户端服务进程相互隔离互不干扰，一个进程的意外崩溃不会影响到其他进程的正常工作，对于像Web服务这样要求高度稳定、互不干扰的情况十分适合。</div>
<div style="text-indent: 2em;">著名的Apache服务器至今仍在使用这种方式实现服务，就是在Apache中被称作prefork的工作方式。当然，实际用于生产环境的服务器稍微复杂一些，Apache的prefork还实现了初始进程数量控制，延缓销毁进程等技术以提升并发访问承载力。</div>
<h2>worker方式</h2>
<div style="text-indent: 2em;">fork方式中进程提供的服务是一次性的，和客户端连接断开后就会销毁，这样整个服务器会同时有大量的进程需要创建和销毁。是否可以回收完成服务的进程，并让他们对新的客户连接提供服务呢？这就是worker方式。统计数据证明worker方式是相当值得使用的：一般工作的网络服务器，并发请求中大约有60%到80%是处于连接发起和等待响应状态，只有很少的部分是已经建立连接，正在服务的；而且并发访问量在短时间内是相对稳定的，很难想象服务器会遇到这一秒连接数量50，下一秒连接数量5000的情况，据此可以认为，只要有少量长期提供服务的进程或者线程就足以应对大量的并发访问。</div>
<div style="text-indent: 2em;">worker方式首先创建一个独立的worker管理进程来负责创建和管理worker进程，称作worker管理器。然后主进程监听和接受请求，并把任务交给worker管理器负责。worker管理器接到任务之后，会在它维护的多个worker进程中找到一个空闲的来处理这个任务。worker进程负责具体的数据收发，服务器逻辑的执行。完成任务关闭连接之后，worker进程不是被销毁，而是通知worker管理器已经完成工作，处于空闲状态。worker管理器会考虑将下一个任务交给它。</div>
<div id="attachment_250" class="wp-caption aligncenter" style="width: 534px"><a href="http://guangxin.name/wp-content/uploads/2010/04/multi_client_worker.png"><img class="size-full wp-image-250" title="multi_client_worker" src="http://guangxin.name/wp-content/uploads/2010/04/multi_client_worker.png" alt="多客户端worker方式" width="524" height="596" /></a><p class="wp-caption-text">多客户端worker方式</p></div>
<div style="text-indent: 2em;">用比喻阐述worker方式的服务器就是：<strong>你</strong>（主进程）只负责接受产品订单，请一个<strong>管家</strong>（worker管理器）负责打理生产事务，管家会长期雇佣若干<strong>工人</strong>（worker进程），你将生产任务交给管家，管家就找一个没事干的工人<strong>生产</strong>（执行服务器逻辑），工人完成任务后不会被<strong>解雇</strong>（销毁进程），管家会被下一个生产任务交给他。</div>
<div style="text-indent: 2em;">worker方式实现服务器较之fork方式有不小的改进，虽然设计起来更加复杂，但和带来的收效相比是值得的。难点主要在于worker管理器的设计，为了有效的应对访问压力的变化，worker管理器需要能动态地创建和销毁worker进程，以便在访问高峰时提供更多的服务进程，访问低谷时占用更少的系统资源，并且还要能够发现并销毁出现错误僵死的worker。</div>
<div style="text-indent: 2em;">worker方式的优点显而易见，缺点倒是也有不少。worker的软肋在于worker管理器进程，假如这个进程出现错误崩溃，那么整个服务器就宕机了。Apache从2.0版开始提供worker模式供选择，作为生产服务器，Apache同时使用多线程和多进程结合的方式。以worker模式启动之后，Apache会启动多个worker管理器进程，每个worker管理器会创建多个worker<strong>线程</strong>来负责具体请求。这样的设计一方面能利用更轻量级的线程机制降低worker的系统开销，方便worker管理器设计，另一方面通过增加worker管理器的冗余，提升抗风险能力——即使一个worker管理器崩溃，服务依然不会中断。</div>
<h2>event方式</h2>
<div style="text-indent: 2em;">如果多个客户端交互信息量很大的话，服务器逻辑不得不大量使用同步锁定和进程间通信机制，大大增加了额外的系统开销，也造成许多死锁的风险。lighttpd服务器另辟蹊径，化整为零，利用Linux系统事件通知和异步网络IO操作的方式实现一个单线程的Web服务器。其具体实现和利弊将在下一篇文章中具体介绍和讨论。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/tech/201004/239/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>测试</title>
		<link>http://guangxin.name/index.php/unsorted/201004/243</link>
		<comments>http://guangxin.name/index.php/unsorted/201004/243#comments</comments>
		<pubDate>Tue, 13 Apr 2010 22:50:00 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[其它]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=243</guid>
		<description><![CDATA[测试！移动版
]]></description>
			<content:encoded><![CDATA[<p>测试！移动版</p>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/201004/243/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu 10.04来了</title>
		<link>http://guangxin.name/index.php/tech/upgrade/201004/232</link>
		<comments>http://guangxin.name/index.php/tech/upgrade/201004/232#comments</comments>
		<pubDate>Tue, 06 Apr 2010 13:50:49 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[升级]]></category>
		<category><![CDATA[发布]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=232</guid>
		<description><![CDATA[
Ubuntu9.10带来了“云计算”，还把SCIM和Pidgin都改成了非默认组件，使用还没怎么习惯，现在Ubuntu10.04又来了。10.04是一个LTS版本，支持从8.04或者9.10直接升级。
和9.10相比，新的10.04版拥有许多新特性，首先一个就是升级了Gnome，使用最新版Gnome的Ubuntu桌面体验有不少改进。当然相信这对显示计算能力的要求也会大大增加。Firefox的默认搜索引擎由Google改成了Yahoo，看来Firefox和Chrome的浏览器竞争开始全面展开了。曾经有人说Google助力Mozilla是为了让Web标准化，然后自己发展Chrome是为了应用网络化，并推广Google的WebApp，现在看来是很有道理的。UbuntuOne新增MusicStore，看来云计算赚钱的日子也快来了。还有一堆BugFix和驱动升级也是每次新版本必然带有的。
和一切.04版本一样，10.04将会在今年4月底发布正式版，拭目以待。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;"><img class="alignnone" title="Ubuntu" src="http://www.ubuntu.com/sites/all/themes/ubuntu09/logo.png" alt="" width="202" height="55" /></div>
<div style="text-indent: 2em;">Ubuntu9.10带来了“云计算”，还把SCIM和Pidgin都改成了非默认组件，使用还没怎么习惯，现在Ubuntu10.04又来了。10.04是一个LTS版本，支持从8.04或者9.10直接升级。</div>
<div style="text-indent: 2em;">和9.10相比，新的10.04版拥有许多新特性，首先一个就是升级了Gnome，使用最新版Gnome的Ubuntu桌面体验有不少改进。当然相信这对显示计算能力的要求也会大大增加。Firefox的默认搜索引擎由Google改成了Yahoo，看来Firefox和Chrome的浏览器竞争开始全面展开了。曾经有人说Google助力Mozilla是为了让Web标准化，然后自己发展Chrome是为了应用网络化，并推广Google的WebApp，现在看来是很有道理的。UbuntuOne新增MusicStore，看来云计算赚钱的日子也快来了。还有一堆BugFix和驱动升级也是每次新版本必然带有的。</div>
<div style="text-indent: 2em;">和一切.04版本一样，10.04将会在今年4月底发布正式版，拭目以待。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/tech/upgrade/201004/232/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用Windows访问才发现Blog的字体实在不好看</title>
		<link>http://guangxin.name/index.php/unsorted/201003/228</link>
		<comments>http://guangxin.name/index.php/unsorted/201003/228#comments</comments>
		<pubDate>Thu, 18 Mar 2010 09:46:25 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[其它]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=228</guid>
		<description><![CDATA[为了联机玩星际回到了Windows，偶然上了一下自己的Blog才发现在Windows底下这字体是如此难看。但是又没有Firebug，懒得慢慢查源码CSS定义。以后再修改字体设置吧。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">为了联机玩星际回到了Windows，偶然上了一下自己的Blog才发现在Windows底下这字体是如此难看。但是又没有Firebug，懒得慢慢查源码CSS定义。以后再修改字体设置吧。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/201003/228/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>让YoonoDesktop使用代理访问</title>
		<link>http://guangxin.name/index.php/tech/201003/222</link>
		<comments>http://guangxin.name/index.php/tech/201003/222#comments</comments>
		<pubDate>Fri, 12 Mar 2010 15:47:46 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=222</guid>
		<description><![CDATA[今天下载了YoonoDesktop1.6来用，感觉还不错，就可惜Twitter、Facebook在墙外，Yoono.com的主机访问也很慢，让人难以忍受。然后启用VPN翻墙，体验了一把，各项功能都和Firefox插件版的相差无几，看来我可以放心的使用Chrome了。不过平时我多半用SSH+AutoProxy翻墙，因为VPN相对比较慢，尤其是访问国内的网站的时候，需要到台湾绕一圈才回来，太麻烦了。虽然可以用自定义路由表的方法让国内的IP直接连接，但国外的地址也并非全都需要翻墙，终究还是不如AutoProxy方便。
于是研究YoonoDesktop能否设置代理连接，结果根本没有找到相关的选项。看了Yoono的程序文件结构，确信是XUL Runner搭出来的无疑，于是Google找了好一会儿，都没能找到不通过界面，直接设置代理的方法。后来想到Firefox的配置文件应该可以拷过来用，grep搜了一下，果然找到~/.mozilla/firefox里有个prefs.js的文件，里面定义了代理设置。当下把有用的三行复制出来：
user_pref(『network.proxy.socks』, 『127.0.0.1&#8243;);
user_pref(『network.proxy.socks_port』, 7070);
user_pref(『network.proxy.type』, 1);
打开~/.yoono/yoono/zv1mj8ax.default/prefs.js文件，把上面三行粘贴进来。保存重启YoonoDesktop，代理生效，可以直接访问Twitter了。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">今天下载了YoonoDesktop1.6来用，感觉还不错，就可惜Twitter、Facebook在墙外，Yoono.com的主机访问也很慢，让人难以忍受。然后启用VPN翻墙，体验了一把，各项功能都和Firefox插件版的相差无几，看来我可以放心的使用Chrome了。不过平时我多半用SSH+AutoProxy翻墙，因为VPN相对比较慢，尤其是访问国内的网站的时候，需要到台湾绕一圈才回来，太麻烦了。虽然可以用自定义路由表的方法让国内的IP直接连接，但国外的地址也并非全都需要翻墙，终究还是不如AutoProxy方便。</div>
<div style="text-indent: 2em;">于是研究YoonoDesktop能否设置代理连接，结果根本没有找到相关的选项。看了Yoono的程序文件结构，确信是XUL Runner搭出来的无疑，于是Google找了好一会儿，都没能找到不通过界面，直接设置代理的方法。后来想到Firefox的配置文件应该可以拷过来用，grep搜了一下，果然找到~/.mozilla/firefox里有个prefs.js的文件，里面定义了代理设置。当下把有用的三行复制出来：</div>
<blockquote><p>user_pref(『network.proxy.socks』, 『127.0.0.1&#8243;);<br />
user_pref(『network.proxy.socks_port』, 7070);<br />
user_pref(『network.proxy.type』, 1);</p></blockquote>
<div style="text-indent: 2em;">打开~/.yoono/yoono/zv1mj8ax.default/prefs.js文件，把上面三行粘贴进来。保存重启YoonoDesktop，代理生效，可以直接访问Twitter了。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/tech/201003/222/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZT 为什么不能吞灯泡</title>
		<link>http://guangxin.name/index.php/unsorted/zt/201003/220</link>
		<comments>http://guangxin.name/index.php/unsorted/zt/201003/220#comments</comments>
		<pubDate>Sun, 07 Mar 2010 13:46:00 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[转发]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=220</guid>
		<description><![CDATA[原文链接
我不清楚中国的灯泡是不是跟英国一样。
在英国，灯泡的包装纸上都有警告&#8211;do not put that object into your mouth.意思是不要把灯泡放进口中。他奶奶的&#8230;那有人会放这东西进口中？英国人都有些白痴&#8230;告诉你，世事无绝对！
有天我和一个印度朋友在家中看电视，我和他谈到这件事，他告诉我他们小学的教科书也有说到，因灯泡放进口后便会卡住，无论如果都拿不出来，他十分肯定书是那么说的&#8230;但我十分怀疑，我认为灯泡的表面是十分滑的，如果可以放得进口，证明口部足够大让其出入，理论上也可以拿出来。但这印度白痴只说书是那么说的&#8230;便一定是正确&#8230;我被他这种不求什解的态度弄火了，我说他笨，他说我不会英文不看书&#8230;我们便吵了起来&#8230;
我一肚火的回了家，拿起一个普通大小的灯泡在床上左想右想，始终认为我没有错，想到这印度朋友的无知，也本着科学家的精神&#8212;&#8211;大胆假设，小心求证。我决定要证实他看。当然，我也做了安全措施&#8230;买了一枝菜油回家。若卡住了便放油，我就不信滑不出来！
一切就绪，二话不说便把灯泡放进口中&#8230;不消1秒便滑入了口，倒也容易&#8230;照这样看要拿出来绝无问题。心想这印度白痴，看看我中国人的智慧和胆色吧！不像你这书呆子&#8230;心想中国战胜印度&#8230;打从心里笑了出来&#8230;哈哈！
于是我轻松的拉了灯泡一下&#8230;&#8230;&#8230;好！我放多点力 &#8230;&#8230;&#8230;o.k～我把口张大一些 &#8230;&#8230;&#8230;不怕，我把口张得最大，放多一点力（要很小心拉破灯）&#8230;&#8230;&#8230;妈的！&#8230;真的在内里卡住了&#8230;&#8230;好在还有枝菜油&#8230;&#8230;&#8230;
（30 分钟后）
我倒了3/4枝油，其中一半倒了进肚，那灯泡还是动也不动&#8230;这时候，我只好打电话求救 &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..正当我按到一半，我记起我口中塞了个灯泡&#8230;如何说话？
现在我只好向邻居求助，我写了一张便条后便去找邻家那老妇。她一见我便大呼救命&#8230;我立即给她看我的便条 &#8212;please call me a taxi and tell the driver to take me hospital.（请招我一辆的士，还请告诉师机蛓我到医院。）她看了大约1.75分钟后大声狂笑&#8230;（如果我说得出话我便f**k 她了。）
15分钟后，的士来了。司机一见我，笑了一回（其实他一直没有停过）。在的士上不停的问我何以这么做&#8230;（&#8230;TMD&#8230;我如何答他？）还不停说我的口太小，如果是他的口便没有问题&#8230;我看看他的口真是很大&#8230;但我好想告诉他，无论如何不要试&#8230;可惜我开不了口！我看看他的倒后镜，我好像含住一条金鱼&#8230;
在医院，我被护士骂了十多分钟，说我浪费她们时间。还要我排一条很长的龙&#8230;我在人群中待了2.5小时&#8230;2.5小时&#8230;那些痛楚万分的伤者，看见我都好像不痛了&#8230;人人都偷偷笑出来&#8230;我觉得自己还有些作用&#8230;
医生把绵花放进我口的两旁，然后把灯泡打碎&#8230;一片片的拿出来&#8230;我的口肿得很大&#8230;最后他告诉我下回不要试，和告诉别人我的经验&#8230;我告诉他我一定不会了。
当我离开医院时，我在想这地球一定没有像我这么白痴的生物了&#8230;当我开门离开时，迎面来了一个人，是刚才那的士司机&#8230;他口中含住一个灯泡。
原理：
人在使劲张嘴的时候，舌头会向上顶，口腔会向里面收缩。而放进去的灯泡会撑大口腔，压迫舌头，使得张嘴得动作无法做到最大。所以，灯泡完整得放进口中去虽然没问题，但是要完整的取出来是不可能的你 一定见过翘翘板，　当你在翘翘板的一端下边放个东西，然后就压不下去了，　另一端就抬不起来了。人的上颚其实也是一个翘翘板，当灯炮没放进去的时候，嘴可 以张大，　就象正常的翘翘板，　可以抬得很高，　当灯泡放进去以后，嘴里的空间被占上了，　就相当于翘翘板的另一端下面被放了东西，没有下压的空间了， 　那么另一端，也就是嘴，就没法张到原来那么大了 。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;"><a title="为什么不能吞灯泡" href="http://www.douban.com/group/topic/10146670/" target="_blank">原文链接</a></div>
<div style="text-indent: 2em;">我不清楚中国的灯泡是不是跟英国一样。</div>
<div style="text-indent: 2em;">在英国，灯泡的包装纸上都有警告&#8211;do not put that object into your mouth.意思是不要把灯泡放进口中。他奶奶的&#8230;那有人会放这东西进口中？英国人都有些白痴&#8230;告诉你，世事无绝对！</div>
<div style="text-indent: 2em;">有天我和一个印度朋友在家中看电视，我和他谈到这件事，他告诉我他们小学的教科书也有说到，因灯泡放进口后便会卡住，无论如果都拿不出来，他十分肯定书是那么说的&#8230;但我十分怀疑，我认为灯泡的表面是十分滑的，如果可以放得进口，证明口部足够大让其出入，理论上也可以拿出来。但这印度白痴只说书是那么说的&#8230;便一定是正确&#8230;我被他这种不求什解的态度弄火了，我说他笨，他说我不会英文不看书&#8230;我们便吵了起来&#8230;</div>
<div style="text-indent: 2em;">我一肚火的回了家，拿起一个普通大小的灯泡在床上左想右想，始终认为我没有错，想到这印度朋友的无知，也本着科学家的精神&#8212;&#8211;大胆假设，小心求证。我决定要证实他看。当然，我也做了安全措施&#8230;买了一枝菜油回家。若卡住了便放油，我就不信滑不出来！</div>
<div style="text-indent: 2em;">一切就绪，二话不说便把灯泡放进口中&#8230;不消1秒便滑入了口，倒也容易&#8230;照这样看要拿出来绝无问题。心想这印度白痴，看看我中国人的智慧和胆色吧！不像你这书呆子&#8230;心想中国战胜印度&#8230;打从心里笑了出来&#8230;哈哈！</div>
<div style="text-indent: 2em;">于是我轻松的拉了灯泡一下&#8230;&#8230;&#8230;好！我放多点力 &#8230;&#8230;&#8230;o.k～我把口张大一些 &#8230;&#8230;&#8230;不怕，我把口张得最大，放多一点力（要很小心拉破灯）&#8230;&#8230;&#8230;妈的！&#8230;真的在内里卡住了&#8230;&#8230;好在还有枝菜油&#8230;&#8230;&#8230;</div>
<div style="text-indent: 2em;">（30 分钟后）</div>
<div style="text-indent: 2em;">我倒了3/4枝油，其中一半倒了进肚，那灯泡还是动也不动&#8230;这时候，我只好打电话求救 &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..正当我按到一半，我记起我口中塞了个灯泡&#8230;如何说话？</div>
<div style="text-indent: 2em;">现在我只好向邻居求助，我写了一张便条后便去找邻家那老妇。她一见我便大呼救命&#8230;我立即给她看我的便条 &#8212;please call me a taxi and tell the driver to take me hospital.（请招我一辆的士，还请告诉师机蛓我到医院。）她看了大约1.75分钟后大声狂笑&#8230;（如果我说得出话我便f**k 她了。）</div>
<div style="text-indent: 2em;">15分钟后，的士来了。司机一见我，笑了一回（其实他一直没有停过）。在的士上不停的问我何以这么做&#8230;（&#8230;TMD&#8230;我如何答他？）还不停说我的口太小，如果是他的口便没有问题&#8230;我看看他的口真是很大&#8230;但我好想告诉他，无论如何不要试&#8230;可惜我开不了口！我看看他的倒后镜，我好像含住一条金鱼&#8230;</div>
<div style="text-indent: 2em;">在医院，我被护士骂了十多分钟，说我浪费她们时间。还要我排一条很长的龙&#8230;我在人群中待了2.5小时&#8230;2.5小时&#8230;那些痛楚万分的伤者，看见我都好像不痛了&#8230;人人都偷偷笑出来&#8230;我觉得自己还有些作用&#8230;</div>
<div style="text-indent: 2em;">医生把绵花放进我口的两旁，然后把灯泡打碎&#8230;一片片的拿出来&#8230;我的口肿得很大&#8230;最后他告诉我下回不要试，和告诉别人我的经验&#8230;我告诉他我一定不会了。</div>
<div style="text-indent: 2em;">当我离开医院时，我在想这地球一定没有像我这么白痴的生物了&#8230;当我开门离开时，迎面来了一个人，是刚才那的士司机&#8230;他口中含住一个灯泡。</div>
<div style="text-indent: 2em; padding-left: 30px;">原理：</div>
<div style="text-indent: 2em; padding-left: 30px;">人在使劲张嘴的时候，舌头会向上顶，口腔会向里面收缩。而放进去的灯泡会撑大口腔，压迫舌头，使得张嘴得动作无法做到最大。所以，灯泡完整得放进口中去虽然没问题，但是要完整的取出来是不可能的你 一定见过翘翘板，　当你在翘翘板的一端下边放个东西，然后就压不下去了，　另一端就抬不起来了。人的上颚其实也是一个翘翘板，当灯炮没放进去的时候，嘴可 以张大，　就象正常的翘翘板，　可以抬得很高，　当灯泡放进去以后，嘴里的空间被占上了，　就相当于翘翘板的另一端下面被放了东西，没有下压的空间了， 　那么另一端，也就是嘴，就没法张到原来那么大了 。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/zt/201003/220/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>工信部确认个人可以办网站，要拍照认证</title>
		<link>http://guangxin.name/index.php/unsorted/201002/218</link>
		<comments>http://guangxin.name/index.php/unsorted/201002/218#comments</comments>
		<pubDate>Tue, 23 Feb 2010 12:01:18 +0000</pubDate>
		<dc:creator>桄欣</dc:creator>
				<category><![CDATA[其它]]></category>

		<guid isPermaLink="false">http://guangxin.name/?p=218</guid>
		<description><![CDATA[自实名认证、上网备案之后，工信部又一次修改网站管理办法，加入了拍照认证的要求。这意味着在中国办网站，已经由想开就开自由自在变得手续烦琐，过程复杂，审批周期漫长。《通知》要求各省通信管理局在今年9月底前完成备案网站主办者审查工作，补拍800&#215;600正面彩色照片，存档有效证件复印件……而这一切的起因居然是为了打击手机色情。现在办网站比摆地摊要难得多，摆地摊的只要躲过了城管和工商，总还能摆下去，多少能赚点钱。办网站本来是件烧钱的事，还在层层监控之下，完全没有躲的机会——所有的接入商都要求备案，他们都担着干系，如果一家没备案，就可能殃及全部客户。
想来像我这样的个人博客网站，要么安家于门户自觉接受审查，要么完全备案自己审查，要么安身于海外，躲过审查。可能是因为备案太麻烦，太影响生意了，我的ISP也开始像客户推荐海外主机，“优势”一栏中赫然写着“无需备案，立即开通”。跟客服人员咨询，说这种产品颇受欢迎，别看它贵，因为不用等一个月的备案时间，反而倍受青睐。一堆同行网友的blog都开在海外，看来网络移民已经是技术人员的大势所趋，互联网本该是简便自由的嘛。
]]></description>
			<content:encoded><![CDATA[<div style="text-indent: 2em;">自实名认证、上网备案之后，工信部又一次修改网站管理办法，加入了拍照认证的要求。这意味着在中国办网站，已经由想开就开自由自在变得手续烦琐，过程复杂，审批周期漫长。《通知》要求各省通信管理局在今年9月底前完成备案网站主办者审查工作，补拍800&#215;600正面彩色照片，存档有效证件复印件……而这一切的起因居然是为了打击手机色情。现在办网站比摆地摊要难得多，摆地摊的只要躲过了城管和工商，总还能摆下去，多少能赚点钱。办网站本来是件烧钱的事，还在层层监控之下，完全没有躲的机会——所有的接入商都要求备案，他们都担着干系，如果一家没备案，就可能殃及全部客户。</div>
<div style="text-indent: 2em;">想来像我这样的个人博客网站，要么安家于门户自觉接受审查，要么完全备案自己审查，要么安身于海外，躲过审查。可能是因为备案太麻烦，太影响生意了，我的ISP也开始像客户推荐海外主机，“优势”一栏中赫然写着“无需备案，立即开通”。跟客服人员咨询，说这种产品颇受欢迎，别看它贵，因为不用等一个月的备案时间，反而倍受青睐。一堆同行网友的blog都开在海外，看来网络移民已经是技术人员的大势所趋，互联网本该是简便自由的嘛。</div>
]]></content:encoded>
			<wfw:commentRss>http://guangxin.name/index.php/unsorted/201002/218/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
