<?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://blog.thematice.com/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.thematice.com</link>
	<description>发现自己的脑袋不好使了，用blog来记录真的很好用。</description>
	<lastBuildDate>Thu, 10 May 2012 02:55:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>BarracudaCentral.org梭子鱼反垃圾组织介绍与申诉步骤（一般可申诉）</title>
		<link>http://blog.thematice.com/html/y2012/1174_barracudacentral-org%e6%a2%ad%e5%ad%90%e9%b1%bc%e5%8f%8d%e5%9e%83%e5%9c%be%e7%bb%84%e7%bb%87%e4%bb%8b%e7%bb%8d%e4%b8%8e%e7%94%b3%e8%af%89%e6%ad%a5%e9%aa%a4%ef%bc%88%e4%b8%80%e8%88%ac%e5%8f%af%e7%94%b3.html</link>
		<comments>http://blog.thematice.com/html/y2012/1174_barracudacentral-org%e6%a2%ad%e5%ad%90%e9%b1%bc%e5%8f%8d%e5%9e%83%e5%9c%be%e7%bb%84%e7%bb%87%e4%bb%8b%e7%bb%8d%e4%b8%8e%e7%94%b3%e8%af%89%e6%ad%a5%e9%aa%a4%ef%bc%88%e4%b8%80%e8%88%ac%e5%8f%af%e7%94%b3.html#comments</comments>
		<pubDate>Thu, 10 May 2012 02:55:41 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[未分类]]></category>
		<category><![CDATA[BarracudaCentral]]></category>
		<category><![CDATA[Spamhuas]]></category>
		<category><![CDATA[垃圾邮件]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1174</guid>
		<description><![CDATA[一、介绍 Barracuda Reputation（梭子鱼） 　　组织主页：http://www.barracudacentral.org/     梭子鱼网络有限公司（Barracuda Networks INC）成立于2002年,总部位于美国硅谷，是一家提供包括邮件安全和归档、WEB应用安全、负载均衡等产品的网络应用厂商。公司拥有硅谷最强大的邮件安全技术和WEB安全防护技术等研发力量，多项专有技术获得美国专利，产品在全球45个国家销售和服务。截至到2008年年末，梭子鱼网络应用产品和解决方案全球销售数量已超过80,000单，是目前国际上最受关注的智能应用交付和安全解决方案提供商，并被Garnter评为“内容安全解决方案领域的领导厂商”。 　　2002年，梭子鱼网络有限公司推出了其第一款产品——梭子鱼垃圾邮件防火墙，并在随后两年在该领域获得了巨大的成功，被美国媒体誉为“增长最快的反垃圾邮件专业公司”。 　　2005年4月，梭子鱼网络公司进一步拓展其应用安全产品线，在原有产品的基础上增加了梭子鱼web应用防火墙系列、梭子鱼安全负载均衡机系列以及梭子鱼IM防火墙系列。这些新品和梭子鱼垃圾邮件防火墙系列一同为各种规模的企业提供完整的应用网络安全整体解决方案。 　　梭子鱼网络有限公司屡获殊荣,包括《Network Computing》、《SC Magazine》授予的编辑选择奖，并在过去4年连续蝉联全球知名媒体和专业机构颁发的最佳企业表现奖、年度卓越产品、用户最信赖品牌等荣誉。 　　目前，全球80%的财富500强企业选择了梭子鱼品牌。据统计，截至2008年10月，梭子鱼网络有限公司已为全球超过80，000名用户提供网络应用安全和交付方面的服务,包括如哈佛大学、乔治亚洲技术学院、美国宇航局美国财政部、IBM、HP、西门子、Adaptec, Knight Ridder, Caltrans, CBS、Pizza Hut, Union Pacific`Railroad等量国际知名公司和机构。 二、申诉步骤 1、Barracuda（梭子鱼）查询页面：http://www.barracudacentral.org/lookups/ip-reputation    并输入IP地址后点击“Lookup IP Reputation”按钮进行查询（如下图）  2、在IP地址输入框上方提示此IP地址在黑名单中（有“is listed”字符表示在黑名单中），然后点击“click here”进行申诉（如下图）   3、第一行：需要申诉的IP地址   第二行：用于接收该组织的反馈信的邮箱（最好使用你邮件系统的邮箱，不建议使用其它邮箱）   第三行：电话号码   第四行：验证码   第六行：申诉原因   上面信息填入完后，点击“Submit Request”进行申诉（如下图）   4、如果出现下面这个界面即代表申诉成功，生效时间为1-48小时。 pba化妆品旗舰店]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1174_barracudacentral-org%e6%a2%ad%e5%ad%90%e9%b1%bc%e5%8f%8d%e5%9e%83%e5%9c%be%e7%bb%84%e7%bb%87%e4%bb%8b%e7%bb%8d%e4%b8%8e%e7%94%b3%e8%af%89%e6%ad%a5%e9%aa%a4%ef%bc%88%e4%b8%80%e8%88%ac%e5%8f%af%e7%94%b3.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在线网页截图实现技术</title>
		<link>http://blog.thematice.com/html/y2012/1170_%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e6%88%aa%e5%9b%be%e5%ae%9e%e7%8e%b0%e6%8a%80%e6%9c%af.html</link>
		<comments>http://blog.thematice.com/html/y2012/1170_%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e6%88%aa%e5%9b%be%e5%ae%9e%e7%8e%b0%e6%8a%80%e6%9c%af.html#comments</comments>
		<pubDate>Fri, 17 Feb 2012 13:52:35 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[采集]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[图片]]></category>
		<category><![CDATA[抓取]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1170</guid>
		<description><![CDATA[一直以来，就想做一个类似于websnapr和Super Screenshot这种提供网页截图服务的网站，今天对网页截图的关键技术进行了一些总结。 这里有篇文章：如何以Java实现网页截图技术，介绍了实现网页截图的三种方式，使用Robot类、Jni调用第三方C/C++组件和自行解析。这三种方式对于我而言都不太合适，我又找到了另外一种实现方式，调用命令行程序，主要是找一些命令行网页截图工具，下面是我找到的一些工具，各有优缺： IECapt IECapt可以将捕获网页，生成BMP、JPEG 或 PNG格式的图片，包含C++和C#两种版本，不足是依赖于Internet Explorer，这就决定了它只能在Windows下使用。 Usage: IECapt --url=http://www.hijava.org/ --out=localfile.png 参考链接： http://cutycapt.sourceforge.net/ CutyCapt CutyCapt作为IECapt的兄弟，可以跨平台运行，生成的文件格式也多，SVG、PDF、 PS、 PNG、 JPEG,、TIFF,、GIF和BMP，CutyCap依赖于Qt。 Linux Shell下调用方式： % xvfb-run --server-args="-screen 0, 1024x768x24" ./CutyCapt --url=... --out=... 参考链接： http://cutycapt.sourceforge.net/ http://blog.saymoon.com/2009/11/take-snapshot-in-linux-command-line/ khtml2png khtml2png是一种常用的命令行网页截图程序，不过需要安装庞大的KDE。 Usage: khtml2png --width 1024 --height 768 --scaled-width 320 --scaled-height 240 http://www.hijava.org/ hijava.png 参考链接： http://khtml2png.sourceforge.net/ QtWebKit Usage: ./websnap www.hijava.org hijava.png 参考链接： http://labs.trolltech.com/blogs/2009/01/15/capturing-web-pages/ [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1170_%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e6%88%aa%e5%9b%be%e5%ae%9e%e7%8e%b0%e6%8a%80%e6%9c%af.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>利用Glype搭建在线网页代理</title>
		<link>http://blog.thematice.com/html/y2012/1166_%e5%88%a9%e7%94%a8glype%e6%90%ad%e5%bb%ba%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e4%bb%a3%e7%90%86.html</link>
		<comments>http://blog.thematice.com/html/y2012/1166_%e5%88%a9%e7%94%a8glype%e6%90%ad%e5%bb%ba%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e4%bb%a3%e7%90%86.html#comments</comments>
		<pubDate>Fri, 17 Feb 2012 13:49:27 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[代理]]></category>
		<category><![CDATA[GFW]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[加密]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1166</guid>
		<description><![CDATA[利用Glype搭建在线网页代理 Glype proxy script 是一个强大的开源网页代理程序，使用它可以非常方便的搭建一个在线代理网站。 目前最新版本为glype-1.1，要求服务器支持PHP5(及以上)，并且能够开启cURL。 &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 安装完后访问GFW黑名单里的站点，仍然会被重置，经过base64编码过的URL也能被检测出来，GFW越来越强大了。 这时就需要修改一下settings.php文件中 $CONFIG['unique_urls']=false，将false改成true，就不会出现网页被重置的问题了。 韩都衣舍旗舰店]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1166_%e5%88%a9%e7%94%a8glype%e6%90%ad%e5%bb%ba%e5%9c%a8%e7%ba%bf%e7%bd%91%e9%a1%b5%e4%bb%a3%e7%90%86.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>常用redmine插件推荐</title>
		<link>http://blog.thematice.com/html/y2012/1163_%e5%b8%b8%e7%94%a8redmine%e6%8f%92%e4%bb%b6%e6%8e%a8%e8%8d%90.html</link>
		<comments>http://blog.thematice.com/html/y2012/1163_%e5%b8%b8%e7%94%a8redmine%e6%8f%92%e4%bb%b6%e6%8e%a8%e8%8d%90.html#comments</comments>
		<pubDate>Mon, 13 Feb 2012 15:17:29 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[任务管理]]></category>
		<category><![CDATA[系统管理]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[redmine]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1163</guid>
		<description><![CDATA[&#160; 最近一段时间一直在使用redmine管理项目，在这里把到目前为止对自己有帮助的插件做一个总结。 &#160; 1. Code Review 可对开发人员提交的代码进行在线review, 对指摘项目进行管理, 是目前对我帮助最大的插件。 &#160; 2. Advanced Roadmap 对roadmap view进行了功能强化，可显示每个具体version或者milestone的详细工数和任务。 &#160; 3. ezFAQ 为redmine增加FAQ管理技能。 &#160; 4. Charts 为redmine增加了图表功能。 &#160; 5. Graph 为redmine增加了图表功能, 和Charts可以一起使用。 &#160; 6. Kanban 为redmine增加了一个白板view, 方便管理者对issue进行管理。 &#160; 7. WorkTime 强大的工数管理插件。 &#160; 8. Wiki Extensions Plugin 为撰写wiki提供了许多扩展技能。 &#160; 9. Time Tracker 提供一对time start/stop按钮，方便对工数进行精确统计。 &#160; 10. Close Issue Button 为issue [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1163_%e5%b8%b8%e7%94%a8redmine%e6%8f%92%e4%bb%b6%e6%8e%a8%e8%8d%90.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scribe日志收集系统介绍</title>
		<link>http://blog.thematice.com/html/y2012/1161_scribe%e6%97%a5%e5%bf%97%e6%94%b6%e9%9b%86%e7%b3%bb%e7%bb%9f%e4%bb%8b%e7%bb%8d.html</link>
		<comments>http://blog.thematice.com/html/y2012/1161_scribe%e6%97%a5%e5%bf%97%e6%94%b6%e9%9b%86%e7%b3%bb%e7%bb%9f%e4%bb%8b%e7%bb%8d.html#comments</comments>
		<pubDate>Mon, 13 Feb 2012 14:16:47 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[log日志]]></category>
		<category><![CDATA[文件系统]]></category>
		<category><![CDATA[Scribe]]></category>
		<category><![CDATA[分布]]></category>
		<category><![CDATA[日志]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1161</guid>
		<description><![CDATA[&#160; 1、  概述 Scribe是facebook开源的日志收集系统，在facebook内部已经得到大量的应用。它能够从各种日志源上收集日志，存储到一个中央存储系统（可以是NFS，分布式文件系统等）上，以便于进行集中统计分析处理。它为日志的“分布式收集，统一处理”提供了一个可扩展的，高容错的方案。当中央存储系统的网络或者机器出现故障时，scribe会将日志转存到本地或者另一个位置，当中央存储系统恢复后，scribe会将转存的日志重新传输给中央存储系统。 scribe的相关资料比较少，主要限于它的主页（见参考资料1）。此外，它的安装比较复杂，可参见我的另一篇博文：scribe日志收集系统安装方法介绍。 2、 架构 如上图所示，Scribe从各种数据源上收集数据，放到一个共享队列上，然后push到后端的中央存储系统上。当中央存储系统出现故障时，scribe可以暂时把日志写到本地文件中，待中央存储系统恢复性能后，scribe把本地日志续传到中央存储系统上。 需要注意的是，各个数据源须通过thrift（由于采用了thrift，客户端可以采用各种语言编写，关于thrift框架，参见我的这篇博文：Thrift框架介绍）向scribe传输数据（每条数据记录包含一个category和一个message）。可以在scribe配置用于监听端口的thrift线程数（默认为3）。在后端，scribe可以将不同category的数据存放到不同目录中，以便于进行分别处理。后端的日志存储方式可以是各种各样的store，包括file（文件），buffer（双层存储，一个主储存，一个副存储），network（另一个scribe服务器），bucket（包含多个store，通过hash的将数据存到不同store中），null(忽略数据)，thriftfile（写到一个Thrift TFileTransport文件中）和multi（把数据同时存放到不同store中）。 3、  scribe中各种store介绍 （1）file 将日志写到文件或者NFS中。目前支持两种文件格式，即std和hdfs，分别表示普通文本文件和HDFS。可配置的选项有： max_size：文件大小上限，即当文件大小达到max_size时，创建新的文件继续存储数据。 rotate_period：文件创建周期，可以是hourly，daily，never和number[sufix]。sufix可以是s（second），m（minute），h（hour），d（day），w（week）。 sub_directory：子目录名字 base_filename：文件前缀，如news，则会依次将数据存储到文件news_20110403_00000，news_20110403_00001，…… （2） buffer 这是最常用的一种store。该store中包含两个子store，其中一个是primary store，另一个是secondary store。日志会优先写到primary store中，如果primary store出现故障，则scribe会将日志暂存到secondary store中，待primary store恢复性能后，再将secondary store中的数据拷贝到primary store中。其中，secondary store仅支持两种store，一个是file，另一个是hdfs。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1161_scribe%e6%97%a5%e5%bf%97%e6%94%b6%e9%9b%86%e7%b3%bb%e7%bb%9f%e4%bb%8b%e7%bb%8d.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[转]Facebook背后的软件</title>
		<link>http://blog.thematice.com/html/y2012/1158_%e8%bd%acfacebook%e8%83%8c%e5%90%8e%e7%9a%84%e8%bd%af%e4%bb%b6.html</link>
		<comments>http://blog.thematice.com/html/y2012/1158_%e8%bd%acfacebook%e8%83%8c%e5%90%8e%e7%9a%84%e8%bd%af%e4%bb%b6.html#comments</comments>
		<pubDate>Mon, 13 Feb 2012 13:24:59 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[架构展示]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[开源]]></category>
		<category><![CDATA[架构]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1158</guid>
		<description><![CDATA[Facebook的数据规模使得很多传统的解决方案根本不适用，或者无法分解来处理。保持一个拥有5亿用户的系统一直稳定可靠的运行，并不是一件很容易的事情。这篇文章介绍了一下Facebook使用的软件。 Facebook的扩展性挑战 在我们讨论细节之前，这里有一些Facebook已经做的软件规模： Facebook有570000000000每月页面浏览量（据Google Ad Planner）。 Facebook的照片量比其他所有图片网站加起来还多（包括Flickr等网站）。 每个月超过30亿张照片被上传。 Facebook的系统服务每秒处理120万张照片。 这不包括CDN服务中处理的照片。 每月超过25亿条的内容（状态更新，评论等）被共享。 Facebook有超过30,000服务器 （这个数字是去年一年！） Facebook扩展所依赖的软件 Facebook是在某些程度上说仍然是LAMP的站点，但它比普通的LAMP大得多，以纳入其他元素和很多服务，并修改现行的做法。 例如： Facebook的仍使用PHP，但它已经为它建立一个编译器，以便它可以分为本地代码打开了Web服务器，从而提高性能。 Facebook的使用Linux，但他特别为网络吞吐量做了优化。 Facebook的使用MySQL，但主要是作为一个Key-value的持久性存储，Jions和服务器逻辑操作在Web服务器上操作。因为在那里更容易执行。 还有是自编写的系统，如Haystack，一个高度可扩展的对象存储，用来存储Facebook的照片。还有Scribe，一个日志系统，可以运行在Facebook的巨大规模上的日志系统。 OK。现在 我们介绍一下全球最大的社会网络网站的所使用的软件吧。 Memcached &#160; memcached的是 现在互联网最有名的软件之一了。 这是一个分布式内存缓存系统，用来作为Web服务器和MySQL服务器之间的缓存层（因为数据库访问比较慢）。 多年以 来，Facebook已经提出了一些优化Memcached和一些周边软件的办法。如压缩network stack。 Facebook的每时每刻都有数10TB的数据缓存在Memcached的数千台服务器上。 它可能是世界上最大的Memcached的集群了。 HipHop for PHP PHP作为一种脚本语言，和本地程序相比是运行缓慢的。 HipHop可以将PHP转换成C + +代码，然后再进行编译，可以获得更好的性能。 因为Facebook严重依赖PHP，这使得其可以让Web服务器运行的更有效率。 一个工程师小团队在Facebook（一开始只有三人）花了18个月时间开发HipHop，现在已经是可用状态。 Haystack Haystack是Facebook的高性能照片存储/检索系统（严格来说，是一个对象存储，因此它并不一定要存储照片）。 它有许多工作要做;有超过200亿张上传的照片，并且每一个被保存在四个不同的分辨率，因此有超过800亿张照片。 它不仅是对能够处理的上亿的照片，运行表现也是至关重要的。 正如我们前面提到的，Facebook的服务约120万张照片每秒 ，这个数字不包括CDN上的。 这是一个惊人的数字。 BigPipe BigPipe是Facebook开发的一个动态的网页服务系统。 Facebook使用它来按section(称为“pagelets”)处理每个网页，以获取最佳性能。 例如，在聊天窗口是分开的，新闻Feed也是分开的，等等。 这些pagelets可以在一个页面表现的时候同时使用，这是该页面表现的时候获取进来的。即使某些工程的一部分关闭或中端，用户也可以获得一部分网页。 Cassandra Cassandra是一个不会单点失败的分布式存储系统。 [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1158_%e8%bd%acfacebook%e8%83%8c%e5%90%8e%e7%9a%84%e8%bd%af%e4%bb%b6.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IT菜鸟到系统架构师</title>
		<link>http://blog.thematice.com/html/y2012/1136_it%e8%8f%9c%e9%b8%9f%e5%88%b0%e7%b3%bb%e7%bb%9f%e6%9e%b6%e6%9e%84%e5%b8%88.html</link>
		<comments>http://blog.thematice.com/html/y2012/1136_it%e8%8f%9c%e9%b8%9f%e5%88%b0%e7%b3%bb%e7%bb%9f%e6%9e%b6%e6%9e%84%e5%b8%88.html#comments</comments>
		<pubDate>Thu, 09 Feb 2012 13:32:08 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[职业规划]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1136</guid>
		<description><![CDATA[]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1136_it%e8%8f%9c%e9%b8%9f%e5%88%b0%e7%b3%bb%e7%bb%9f%e6%9e%b6%e6%9e%84%e5%b8%88.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10大最常用的iptables规则</title>
		<link>http://blog.thematice.com/html/y2012/607_10%e5%a4%a7%e6%9c%80%e5%b8%b8%e7%94%a8%e7%9a%84iptables%e8%a7%84%e5%88%99.html</link>
		<comments>http://blog.thematice.com/html/y2012/607_10%e5%a4%a7%e6%9c%80%e5%b8%b8%e7%94%a8%e7%9a%84iptables%e8%a7%84%e5%88%99.html#comments</comments>
		<pubDate>Thu, 09 Feb 2012 10:13:24 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[iptables]]></category>
		<category><![CDATA[linux shell]]></category>
		<category><![CDATA[shell]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=607</guid>
		<description><![CDATA[1: iptables -A INPUT -p tcp -syn -j DROP This is a desktop-centric rule that will do two things: First it will allow you to actually work normally on your desktop. All network traffic going out of your machine will be allowed out, but all TCP/IP traffic coming into your machine will simply be dropped. [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/607_10%e5%a4%a7%e6%9c%80%e5%b8%b8%e7%94%a8%e7%9a%84iptables%e8%a7%84%e5%88%99.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>【转】mfs权威指南(moosefs)分布式文件系统一站式解决方案(部署，性能测试)不断更新</title>
		<link>http://blog.thematice.com/html/y2012/1054_%e3%80%90%e8%bd%ac%e3%80%91mfs%e6%9d%83%e5%a8%81%e6%8c%87%e5%8d%97moosefs%e5%88%86%e5%b8%83%e5%bc%8f%e6%96%87%e4%bb%b6%e7%b3%bb%e7%bb%9f%e4%b8%80%e7%ab%99%e5%bc%8f%e8%a7%a3%e5%86%b3%e6%96%b9.html</link>
		<comments>http://blog.thematice.com/html/y2012/1054_%e3%80%90%e8%bd%ac%e3%80%91mfs%e6%9d%83%e5%a8%81%e6%8c%87%e5%8d%97moosefs%e5%88%86%e5%b8%83%e5%bc%8f%e6%96%87%e4%bb%b6%e7%b3%bb%e7%bb%9f%e4%b8%80%e7%ab%99%e5%bc%8f%e8%a7%a3%e5%86%b3%e6%96%b9.html#comments</comments>
		<pubDate>Thu, 09 Feb 2012 10:11:04 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mfs]]></category>
		<category><![CDATA[moosefs]]></category>
		<category><![CDATA[分布式文件系统]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1054</guid>
		<description><![CDATA[#!/bin/tony 0. 欢迎加入qq群102082446 ，分布式文件系统 专业群（不求人多，只求专业） 通关密码：i love cuer! 1. 我在性能测试中间遇到些问题，因为我时间有限，所以希望大家一起来测试解决，群策群力。有什么问题请大家及时指出来，因为我也处在一个不断摸索的阶段。 2. mfs不多做介绍，具体细节请参考本版mfs实践文章http://bbs.chinaunix.net/thread-1643863-1-1.html ，或者baidu,google 关键字  田逸。 3. 希望大家能提供更好的存储/文件系统的测试模型，来一起完善本文档。（热烈欢迎大家奉献测试脚本，测试用例等）。 4. 希望大家提供生产环境的实际案例，配置环境，脚本，监控机制等等。 5. 希望熟悉代码的朋友去看看mfs内部实现的机制。 6. 特别感谢田逸的文档 http://sery.blog.51cto.com/10037/263515 。 7. 特别感谢网友:tt，灵犀，流云风，hzqbbc在qq群内对广大爱好者分享宝贵经验。 8. 特别感谢存储专家-《大话存储》的作者：冬瓜头 ，在我进行性能测试的时候，对我进行的指导。 mfs优势： -1. Free(GPL) 0. 通用文件系统，不需要修改上层应用就可以使用（那些需要专门api的dfs好麻烦哦！）。 1. 可以在线扩容，体系架构可伸缩性极强。（官方的case可以扩到70台了！） 2. 部署简单。（sa们特别高兴，领导们特别happy！） 3. 体系架构高可用，所有组件无单点故障。 （您还等什么？） 4. 文件对象高可用，可设置任意的文件冗余程度（提供比raid1+0更高的冗余级别），而绝对不会影响读或者写的性能，只会加速哦！） 5. 提供Windows回收站的功能.（不怕误操作了，提供类似oralce 的闪回等高级dbms的即时回滚特性，oralce这些特性可是收费的哦！） 6. 提供类似Java语言的 GC（垃圾回收）. 7. 提供netapp，emc，ibm等商业存储的snapshot特性。 8. google filesystem的一个c实现。（google在前面开路哦！） 9. [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1054_%e3%80%90%e8%bd%ac%e3%80%91mfs%e6%9d%83%e5%a8%81%e6%8c%87%e5%8d%97moosefs%e5%88%86%e5%b8%83%e5%bc%8f%e6%96%87%e4%bb%b6%e7%b3%bb%e7%bb%9f%e4%b8%80%e7%ab%99%e5%bc%8f%e8%a7%a3%e5%86%b3%e6%96%b9.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[转载]IT行业-运维工程师的职责和前景</title>
		<link>http://blog.thematice.com/html/y2012/1137_%e8%bd%ac%e8%bd%bdit%e8%a1%8c%e4%b8%9a-%e8%bf%90%e7%bb%b4%e5%b7%a5%e7%a8%8b%e5%b8%88%e7%9a%84%e8%81%8c%e8%b4%a3%e5%92%8c%e5%89%8d%e6%99%af.html</link>
		<comments>http://blog.thematice.com/html/y2012/1137_%e8%bd%ac%e8%bd%bdit%e8%a1%8c%e4%b8%9a-%e8%bf%90%e7%bb%b4%e5%b7%a5%e7%a8%8b%e5%b8%88%e7%9a%84%e8%81%8c%e8%b4%a3%e5%92%8c%e5%89%8d%e6%99%af.html#comments</comments>
		<pubDate>Thu, 09 Feb 2012 08:39:58 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[碎碎念]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[运维]]></category>
		<category><![CDATA[运维工程师]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1137</guid>
		<description><![CDATA[运维工程师的职责和前景 运维中关键技术点解剖：  1、         大量高并发网站的设计与方案制定 。 2、         高可靠、高可伸缩性系统（网络）架构设计。 3、         网站安全问题，如何避免被黑。 4、         南北互联互通问题，动态CDN解决方案。 5、        海量数据存储架构 。 一、什么是大型网站运维？ 首先明确一下，全文所讲的”运维“是指：大型网站运维，与其它运维的区别还是蛮大的；然后我们再对大型网站与小型网站进行范围定义，此定义主要从运维复杂性角度考虑，如网站规范、知名度、服务器 量级、pv量等考虑，其它因素不是重点；因此，我们先定义服务器规模大于1000台，pv每天至少上亿（至少国内排名前10），如sina、baidu、 QQ，51.com等等；其它小型网站可能没有真正意义上的运维工程师，这与网站规范不够和成本因素有关，更多的是集合网络、系统 、开发工作于一身的“复合性人才”，就如有些公司把一些合同采购都纳入了运维职责范围，还有如IDC网络规划也纳入运维职责。所以，非常重要一定需要明白：运维对其它关联工种必须非常了解熟悉：网络、系统、系统开发、存储，安全,DB等；我在这里所讲的运维工程师就是指专职运维工程师。 我们再来说说一般产品的“出生”流程： 1、首先公司管理层给出指导思想，PM定位市场需求（或copy成熟应用）进行调研、分析、最终给出详细设计。 2、架构师根据产品设计的需求，如pv大小预估、服务器规模、应用架构等因素完成网络规划,架构设计等（基本上对网络变动不大，除非大项目） 3、开发工程师将设计code实现出来、测试工程师对应用进行测试。 4、好，到运维工程师出马了，首先明确一点不是说前三步就与运维工作无关了，恰恰相反，前三步与运维关系很大：应用的前期架构设计、软/硬件资源评估申请采购、应用设计性能隐患及评估、IDC、服务性能安全调优、服务器系统级优化（与特定应用有关）等都需运维全程参与，并主导整个应用上线项目；运维工程师负责产品服务器上架准备工作，服务器系统安装、网络、IP、通用工具集安装。运维工程师还需要对上线的应用系统架构是否合理、是否具备可扩展性、及安全隐患等因素负责，并负责最后将产品（程序）、网络、系统三者进行拼接并最优化的组合在一起，最终完成产品上线提供用户使用，并周而复使：需求-&#62;开发（升级）-&#62;测试-&#62;上线（性能、安全问题等之前预估外的问题随之慢慢就全出来了）在这里提一点：网站开发模式与传统软件开发完全不一样，网站一天开发上线1~5个升级版本是家常便饭，用户体验为王嘛，如果某个线上问题像M$ 需要1年解决，用户早跑光了；应用上线后，运维工作才刚开始，具体工作可能包括：升级版本上线工作、服务监控、应用状态统计、日常服务状态巡检、突发故障处理、服务日常变更调整、集群管理、服务性能评估优化、数据库管理优化、随着应用PV增减进行应用架构的伸缩、安全、运维开发工作： a 、尽量将日常机械性手工工作通过工具实现（如服务监控、应用状态统计、服务上线等等），提高效率。 b、解决现实中服务存在的问题，如高可靠性、可扩展性问题等。 c、大规模集群管理工具的开发，如1万台机器如何在1分钟内完成密码修改、或运行指定任务？2000台服务器如何快速安装操作系统？各分布式IDC、存储集群中数PT级的数据如何快速的存储、共享、分析？等一系列挑战都需运维工程师的努力。 在此说明一下其它配合工种情况，在整个项目中，前端应用对于网络/系统工程师来说是黑匣子，同时开发工程师职责只是负责完成应用的功能性开发，并对应用本身性能、安全性等应用本身负责，它不负责或关心网络/系统架构方面事宜，当然软/硬件采购人员等事业部其它同事也不会关心这些问题，各司其职，但项目的核心是运维工程师~！所有其它部门的桥梁。 上面说了很多，我想大家应该对运维有一些概念了，在此打个比方吧，如果我们是一辆高速行驶在高速公路上的汽车，那运维工程师就是司机兼维修工，这个司机不简单，有时需要在高速行驶过程中换轮胎、并根据道路情况换档位、当汽车速度越来越快，汽车本身不能满足高速度时对汽车性能调优或零件升级、高速行进中解决汽车故障及性能问题、时刻关注前方安全问题，并先知先觉的采取规避手段。这就是运维工作~！ 最后说一下运维工程师的职责：”确保线上稳定“，看似简单，但实属不容易，运维工程师必须在诸多不利因素中进行权衡：新产品模式对现有架构及技术的冲击、产品高频度的升级带来的线上BUG隐患、运维自动化管理承度不高导致的人为失误、IT行业追求的高效率导致流程执行上的缺失、用户增涨带来的性能及架构上的压力、IT行业宽松的技术管理文化、创新风险、互联网安全性问题等因素，都会是网站稳定的大敌，运维工程师必须把控好这最后一关，需具体高度的责任感、原则性及协调能力，如果能做到各因素的最佳平衡，那就是一名优秀的运维工程师了。 另外在此聊点题外话，我在这里看到有很多人要sina、QQ、baidu,51.com等聊自已的运维方面的经验，其实这对于它们有点免为其难： a、各公司自已网络架构、规模、或多或少还算是公司的核心秘密，要保密，另外，对于大家所熟知的通用软件、架构，由于很多公司会根据自已实际业务需要，同时因为原版性能、安全性、已知bug、功能等原因，进行过二次开发（如apache,php,mysql ），操作系统内核也会根据不同业务类型进行定制的，如某些应用属于运算型、某些是高IO型、或大存储大内存型。根据这些特点进行内核优化定制，如sina就在 memcache上进行过二次开发，搞出了一个MemcacheDB，具体做得如何我们不谈，但开源了，是值得称赞的，国内公司对于开源基本上是索取，没有贡献；另外，服务器也不是大家所熟知的型号，根据业务特点，大部份都是找DELL/HP/ibm进行过定制；另外，在分布式储存方面都有自已解决方案，要不就是使用现成开源hadoop等解决方案，或自已开发。但90%都是借鉴google GFS的思想:分布式存储、计算、大表。 b、各公司业务方向不一样，会导致运维模式或方法都不一样，如51.com和baidu运维肯定区别很大，因为他们业务模式决定了其架构、服务器量级、 IDC分布、网络结构、通用技术都会不一样，主打新闻门户的sina与主打sns的51.com运维模式差异就非常大,甚至职责都不大一样；但有一点，通用技术及大致架构上都大同小异，大家不要太神化，更多的公司只是玩垒积木的游戏罢了，没什么技术含量。 c、如上面所讲，目前大型网站运维还处于幼年时期理念和经验都比较零散，没有成熟的知识体系，可能具体什么是运维，大家都要先思索一番，或压根没想过，真正讨论也只是运维工作的冰山一角，局限于具体技术细节，或某某著名网站大的框架，真正运维体系化东西没有，这也许是目前网上运维相关资料 比较少的原故吧。或者也是国内运维人员比较难招，比较牛的运维工程师比较少见的原因之一吧。 二、运维工作师需要什么样的技能及素质 做为一名运维工程师需要什么样的技能及素质呢，首先说说技能吧，如大家上面所看到，运维是一个集多IT工种技能与一身的岗位，对系统-&#62;网络 -&#62;存储-&#62;协议-&#62;需求-&#62;开发-&#62;测试-&#62;安全等各环节都需要了解一些，但对于某些环节需熟悉甚至精通，如系统 (基本操作系统的熟悉使用,*nix,windows ..)、协议、系统开发(日常很重要的工作是自动运维化相关开发、大规模集群工具开发、管理）、通用应用（如lvs、ha、web server 、db、中间件、存储等）、网络,IDC拓朴架构； 技能方面总结以下几点： 1、开发能力，这点非常重要，因为运维工具都需要自已开发，开发语言：c/c++（必备其中之一）、perl、python、php（其中之一）、shell（awk,sed,expect….等），需要有过实际开发经验，否则工作会非常痛苦。 2、通用应用方面需要了解：操作系统（目前国内主要是linux、bsd）、webserver相关 (nginx,apahe,php,lighttpd,java。。。)、数据库(mysql,oralce)、其它杂七八拉的东东。。。系统优化，高可靠性。。。这些只是加分项，不需必备，可以边工作边慢慢学，这些东西都不难。当然在运维中，有些是有分工偏重点不一样。 [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1137_%e8%bd%ac%e8%bd%bdit%e8%a1%8c%e4%b8%9a-%e8%bf%90%e7%bb%b4%e5%b7%a5%e7%a8%8b%e5%b8%88%e7%9a%84%e8%81%8c%e8%b4%a3%e5%92%8c%e5%89%8d%e6%99%af.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>【软件内置后门致系统管理员密码泄露】</title>
		<link>http://blog.thematice.com/html/y2012/1132_%e3%80%90%e8%bd%af%e4%bb%b6%e5%86%85%e7%bd%ae%e5%90%8e%e9%97%a8%e8%87%b4%e7%b3%bb%e7%bb%9f%e7%ae%a1%e7%90%86%e5%91%98%e5%af%86%e7%a0%81%e6%b3%84%e9%9c%b2%e3%80%91.html</link>
		<comments>http://blog.thematice.com/html/y2012/1132_%e3%80%90%e8%bd%af%e4%bb%b6%e5%86%85%e7%bd%ae%e5%90%8e%e9%97%a8%e8%87%b4%e7%b3%bb%e7%bb%9f%e7%ae%a1%e7%90%86%e5%91%98%e5%af%86%e7%a0%81%e6%b3%84%e9%9c%b2%e3%80%91.html#comments</comments>
		<pubDate>Wed, 01 Feb 2012 05:33:00 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[web-hack]]></category>
		<category><![CDATA[安全]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1132</guid>
		<description><![CDATA[多家安全厂商验证，部分汉化版putty、WinSCP、SSH Secure等的确存在后门，可致服务器系统管理员密码泄露，被完全控制linux服务器。建议管理员立刻卸载这些汉化版软件，并尽快修改密码。若较多企业服务器管理权限被盗，其后果不亚于CSDN事件！. http://www.oschina.net/news/25229/wordpress-vulnerability]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2012/1132_%e3%80%90%e8%bd%af%e4%bb%b6%e5%86%85%e7%bd%ae%e5%90%8e%e9%97%a8%e8%87%b4%e7%b3%bb%e7%bb%9f%e7%ae%a1%e7%90%86%e5%91%98%e5%af%86%e7%a0%81%e6%b3%84%e9%9c%b2%e3%80%91.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>php-fpm下使用eaccelerator产生的内存问题</title>
		<link>http://blog.thematice.com/html/y2010/1073_php-fpm%e4%b8%8b%e4%bd%bf%e7%94%a8eaccelerator%e4%ba%a7%e7%94%9f%e7%9a%84%e5%86%85%e5%ad%98%e9%97%ae%e9%a2%98.html</link>
		<comments>http://blog.thematice.com/html/y2010/1073_php-fpm%e4%b8%8b%e4%bd%bf%e7%94%a8eaccelerator%e4%ba%a7%e7%94%9f%e7%9a%84%e5%86%85%e5%ad%98%e9%97%ae%e9%a2%98.html#comments</comments>
		<pubDate>Mon, 20 Dec 2010 09:40:14 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[HTTP]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[eaccelerator]]></category>
		<category><![CDATA[mem]]></category>
		<category><![CDATA[php-cgi]]></category>
		<category><![CDATA[php-fpm]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1073</guid>
		<description><![CDATA[使用EA或者类似的OP CODE加速器已经是搭建PHP环境的默认选项了 但是在使用nginx的环境内 会需要使用fastcgi方式来运行php 这种情况下.EA的内存占用可能会和你在APACHE下使用EA不同 由于APACHE调用PHP的方式是模块方式的 所有PHP是位于同一个进程下面的 所以所有PHP模块调用的EA是同一个的. 内存只会占用shm_size大小. APACHE进程间共享这同一个EA 也就是如果你在ea的配置下面写了64M.则只会占用整个系统的64M 而如果用fastcgi模式 特别是php-fpm 每个php都是独立进程 导致每个PHP进程下面都会独立分配EA的内存 则总的内存占用量 = shm_size * php进程数 如果你还用64M的话.开启20个PHP进程就意味着你用掉了1280M内存. 虽然目前只是分配到虚拟内存 但是对于大型网站的话, 不久之后就会占用到了这么大量的内存. 目前具体如何解决还没有找到 但是大家需要注意这个情况. 不同进程间ea缓冲相同文件是否会导致两份数据目前还没有测试.]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1073_php-fpm%e4%b8%8b%e4%bd%bf%e7%94%a8eaccelerator%e4%ba%a7%e7%94%9f%e7%9a%84%e5%86%85%e5%ad%98%e9%97%ae%e9%a2%98.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle安装-Linux内核参数-共享内存信号量设置</title>
		<link>http://blog.thematice.com/html/y2010/1074_oracle%e5%ae%89%e8%a3%85-linux%e5%86%85%e6%a0%b8%e5%8f%82%e6%95%b0-%e5%85%b1%e4%ba%ab%e5%86%85%e5%ad%98%e4%bf%a1%e5%8f%b7%e9%87%8f%e8%ae%be%e7%bd%ae.html</link>
		<comments>http://blog.thematice.com/html/y2010/1074_oracle%e5%ae%89%e8%a3%85-linux%e5%86%85%e6%a0%b8%e5%8f%82%e6%95%b0-%e5%85%b1%e4%ba%ab%e5%86%85%e5%ad%98%e4%bf%a1%e5%8f%b7%e9%87%8f%e8%ae%be%e7%bd%ae.html#comments</comments>
		<pubDate>Mon, 20 Dec 2010 09:39:57 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[databases]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1074</guid>
		<description><![CDATA[Oracle数据库在linux系统上的安装过程中，涉及到设置linux内核参数； 这些内核参数究竟代表什么含义，如何调整这些参数？ 共享内存： 可以通过ipcs -lm命令查看目前系统共享内存的参数限制： # ipcs -lm —— Shared Memory Limits ——– max number of segments = 4096 max seg size (kbytes) = 1048576 max total shared memory (pages) = 2097152 min seg size (bytes) = 1 这里涉及到3个于共享内存相关的参数：SHMMAX，SHMMNI，SHMALL SHMMAX 含义：单个共享内存段最大字节数 设置：比SGA略大 查看：cat /proc/sys/kernel/shmmax $ cat /proc/sys/kernel/shmmax 1073741824 修改： sysctl -w kernel.shmmax=1073741824 echo “kernel.shmmax=1073741824″ &#62;&#62; [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1074_oracle%e5%ae%89%e8%a3%85-linux%e5%86%85%e6%a0%b8%e5%8f%82%e6%95%b0-%e5%85%b1%e4%ba%ab%e5%86%85%e5%ad%98%e4%bf%a1%e5%8f%b7%e9%87%8f%e8%ae%be%e7%bd%ae.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ARP缓存表</title>
		<link>http://blog.thematice.com/html/y2010/1075_arp%e7%bc%93%e5%ad%98%e8%a1%a8.html</link>
		<comments>http://blog.thematice.com/html/y2010/1075_arp%e7%bc%93%e5%ad%98%e8%a1%a8.html#comments</comments>
		<pubDate>Mon, 20 Dec 2010 09:36:43 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[系统管理]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1075</guid>
		<description><![CDATA[arp_tbl是一个类型为struct neigh_table的全局变量，它是一个ARP的缓存表，也称为邻居表。协议栈通过ARP协议获取到的网络上邻居主机的IP地址与MAC地址的对应关系都会保存在这个表中，以备下次与邻居通讯时使用，同时，ARP模块自身也会提供一套相应的机制来更新和维护这个邻居表。下面逐个分析arp_tbl中的重要成员数据与函数。 entry_size，key_len，kmem_cachep。 entry_size是一个入口的大小，也就是arp_tbl中一个邻居的大小，邻居用struct neighbour结构体表示，该结构体的最后一个成员是u8 primary_key[0]，用于存放IP地址，作为这个邻居的哈希主键。所以entry_size的大小就是sizeof(struct neighbour) + 4，因为是用IP地址作主键，所以key_len就是4。kmem_cachep是一个后备高速缓存，创建一个邻居需要的内存从这个后备高速缓存中去取。 hash_buckets，hash_mask，entries，hash。 hash_buckets是一个哈希数组，里面存放了arp_tbl当前维护的所有的邻居，hash_mask是哈希数组大小的掩码，其初始值为1，所以hash_buckets的初始大小为2(0到hash_mask的空间范围)。entries是整个arp_tbl中邻居的数量，当entries大于hash_mask+1的时候，hash_buckets增长为原来的两部。成员hash是一个哈希函数指针，用于计算哈希值。 phash_buckets，PNEIGH_HASHMASK。 这是用于代理ARP的邻居哈希表，PNEIGH_HASHMASK固定为0xF,所以phash_buckets固定有16项，其它与hash_buckets相同。 id。 id作为这个邻居表的一个名称，是一个字符串信息，内核协议栈的arp_tbl的id是arp_cache。 gc_interval，gc_thresh1，gc_thresh2，gc_thresh3。 gc_thresh3是arp_tbl中允许拥有的邻居数量的上限，一旦超过这个上限，并且表中没有可以清理掉的垃圾邻居，那么就无法创建新的邻居，这个值缺省被置为1024。gc_thresh2是第二个阀值，如果表中的邻居数量超过这个阀值，并且在需要创建新的邻居时，发现已经超过5秒时间表没有被刷新过，则必须立即刷新arp_tbl表，进行强制垃圾回收，这个值缺省被置为512。gc_thresh1的用途暂时还没有发现，它缺省被置为128。gc_interval应该是常规的垃圾回收间隔时间，被缺省置为30秒，但目前在源代码中似乎没有看到它的应用。强制垃圾收集的工作即是把引用计数为1，且状态中没有NUD_PERMANENT的邻居全部从arp_tbl表中删除。 gc_timer。 这是一个常规垃圾回收的定时器，其定时处理函数是neigh_periodic_timer。该定时器超时后，处理函数处理hash_buckets表中的一项，下次超时后，再处理下一项，这里的垃圾回收比强制垃圾回收条件要宽松得多，如果邻居的状态为NUD_PERMANENT或NUD_IN_TIMER(该邻居正在解析中)，则不能回收。当邻居的引用计数为1时，并且邻居状态为NUD_FAILED(解析失败)或者该邻居距最近一次被使用时间已超过参数表中gc_staletime的值(缺省为60秒),则可以作为垃圾回收。回收完毕后，要设置下一次进行回收的时间(gc_timer的超时时间)，下次回收时间为参数表中base_reachable_time的值(缺省设为30秒)的一半，再除以hash_buckets哈希表中的项数。也就是，基本上15秒左右会把整个arp_tbl缓存表进行一次垃圾回收。 proxy_timer，proxy_queue，proxy_redo。 proxy_timer是一个关于代理ARP的定时器，proxy_queue是一个待处理的代理ARP数据包的队列，每次定时器超时，处理函数neigh_proxy_process依次检查队列中每一个代理ARP数据包(struct sk_buff)，对于超时，且满足相关条件的，调用proxy_redo进行处理。有关代理ARP，将专门分析讲述，这里暂时略过。 constructor。 这是一个邻居的初始化函数指针，每次创建出一个邻居后，需要马上调用这个函数对新创建的邻居进行一些初始化操作。邻居创建完，已经被赋于一个IP地址(邻居结构体的primary_key成员)，该函数首先根据这个IP地址来确定其地址类型，然后为邻居选择相应的操作函数集(初始化邻居结构体的一些成员，在讲到邻居结构体内容时再进行分析)。 pconstructor，pdestructor。 这是代理ARP的邻居的构建和析构函数指针，在IPv4模块中，未提供这两个函数，所以它们的指针值为空。 parms。 这是一个结构体struct neigh_parms的链表，系统中每个网络设备接口对应链表中一个节点，表示该设备接口上的邻居的一些传输参数。同时，链表中还有一个缺省的项。 last_rand，hash_rand 这两个成员其实没有联系，hash_rand是用于邻居哈希表hash_buckets的一个随机数，last_rand用于记录一个时间，即上次为parms链表中每个节点生成reachable_time的时间，reachable_time是需要被定时刷新的。 stats。 记录arp_tbl被操作次数的一些统计数据。]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1075_arp%e7%bc%93%e5%ad%98%e8%a1%a8.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用自动wget或ftp提高工作效率</title>
		<link>http://blog.thematice.com/html/y2010/1102_1102.html</link>
		<comments>http://blog.thematice.com/html/y2010/1102_1102.html#comments</comments>
		<pubDate>Sun, 18 Jul 2010 15:57:51 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[HTTP]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/html/y2010/07/18/1102/1102.html</guid>
		<description><![CDATA[wget ftp://username:password@ip_address/dir/file_name 比自动FTP的SHELL脚本的方法方便多了. 例如获取FTP服务器上文件名是昨天日期的文件,如filename_20040608_001,filename_20040608_002,&#8230;&#8230; #!/bin/sh rq=`date &#8211;date &#8217;1 days ago&#8217; “+%Y%m%d”` wget -q ftp://username:password@ip_address/filename_$rq* 有的时候,FTP站点用wget可以进行目录浏览,也可以下载固定文件名的文件, 却不能把文件名是昨天日期的文件取下来时. 我想了一个方法: #!/bin/sh rq=`date &#8211;date &#8217;1 days ago&#8217; “+%Y%m%d”` wget -nr ftp://username:password@ip_address/filename_$rq* grep filename_$rq .listing &#62; 1.txt cat 1.txt&#124;while read LINE do file_name=`echo $LINE&#124;awk &#8216;{print $9}&#8217;` wget -q ftp://username:password@ip_address/$file_name done 原理是在目录浏览.listing文件里查找到昨天生成的文件名到临时文件1.txt里 -rw-r&#8211;r&#8211;    1 fengyu   fengyu     106880 Jun  9 11:44 file_name_20040608001 [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1102_1102.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MySQL Proxy快速实现读写分离以及负载均衡</title>
		<link>http://blog.thematice.com/html/y2010/1098_mysql-%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%8a%e4%bc%98%e5%8c%96.html</link>
		<comments>http://blog.thematice.com/html/y2010/1098_mysql-%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%8a%e4%bc%98%e5%8c%96.html#comments</comments>
		<pubDate>Sun, 18 Jul 2010 15:55:29 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[databases]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/html/y2010/07/18/1098/mysql-%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%8a%e4%bc%98%e5%8c%96.html</guid>
		<description><![CDATA[周三, 2008/04/23 &#8211; 14:37 — yejr 作/译者：叶金荣（Email: ），来源：http://imysql.cn，转载请注明作/译者和出处，并且不能用于商业用途，违者必究。 1. 安装 下载已经编译好的安装包，或者预编译安装包均可，在这里，使用预编译版本。 [@s1.yejr.com ~]# tar zxf mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz [@s1.yejr.com ~]# cd mysql-proxy-0.6.0-linux-rhas4-x86 #可以看到有2个目录 [@s1.yejr.com mysql-proxy-0.6.0-linux-rhas4-x86]# ls sbin share [@s1.yejr.com mysql-proxy-0.6.0-linux-rhas4-x86]# mv sbin/mysql-proxy /usr/local/sbin/ [@s1.yejr.com mysql-proxy-0.6.0-linux-rhas4-x86]# ls share mysql-proxy tutorial-constants.lua tutorial-packets.lua tutorial-rewrite.lua tutorial-warnings.lua tutorial-basic.lua tutorial-inject.lua tutorial-query-time.lua tutorial-states.lua #将lua脚本放到/usr/local/share下，以备他用 [@s1.yejr.com mysql-proxy-0.6.0-linux-rhas4-x86]# mv share/mysql-proxy /usr/local/share/ #删除符号连接等垃圾代码 [@s1.yejr.com mysql-proxy-0.6.0-linux-rhas4-x86]# strip /usr/local/sbin/mysql-proxy [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1098_mysql-%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%8a%e4%bc%98%e5%8c%96.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mysql编译安装参数优化</title>
		<link>http://blog.thematice.com/html/y2010/1076_mysql%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%82%e6%95%b0%e4%bc%98%e5%8c%96.html</link>
		<comments>http://blog.thematice.com/html/y2010/1076_mysql%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%82%e6%95%b0%e4%bc%98%e5%8c%96.html#comments</comments>
		<pubDate>Fri, 18 Jun 2010 15:45:16 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[configure]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1076</guid>
		<description><![CDATA[关键字: mysql compile 1. -static 13% &#8211;with-client-ldflags=-all-static &#8211;with-mysqld-ldflags=-all-static 静态链接提高13%性能 2. -pgcc 1% CFLAGS=”-O3 -mpentiumpro -mstack-align-double” CXX=gcc \ CXXFLAGS=”-O3 -mpentiumpro -mstack-align-double \ -felide-constructors -fno-exceptions -fno-rtti” 如果是Inter处理器，使用pgcc提高1%性能 3. Unix Socket 7.5% &#8211;with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock 使用unix套接字链接提高7.5%性能，所以在windows下mysql性能肯定不如unix下面 4. &#8211;enable-assembler 允许使用汇编模式(优化性能) 下面是总体的编译文件 编译代码 CFLAGS=”-O3&#8243; CXX=gcc CXXFLAGS=”-O3 -felide-constructors \ -fno-exceptions -fno-rtti -fomit-frame-pointer -ffixed-ebp” ./configure \ &#8211;prefix=/usr/local/mysql &#8211;enable-assembler \ &#8211;with-mysqld-ldflags=-all-static &#8211;with-client-ldflags=-all-static &#8211;with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock &#8211;with-charset=utf8 &#8211;with-collation=utf8_general_ci [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1076_mysql%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85%e5%8f%82%e6%95%b0%e4%bc%98%e5%8c%96.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>开启开启eaccelerator后的磁盘性能问题后的磁盘性能问题</title>
		<link>http://blog.thematice.com/html/y2010/1089_%e5%bc%80%e5%90%af%e5%bc%80%e5%90%afeaccelerator%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98.html</link>
		<comments>http://blog.thematice.com/html/y2010/1089_%e5%bc%80%e5%90%af%e5%bc%80%e5%90%afeaccelerator%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98.html#comments</comments>
		<pubDate>Tue, 08 Jun 2010 08:19:23 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[未分类]]></category>
		<category><![CDATA[开启eaccelerator后的磁盘性能问题]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/html/y2010/06/08/1089/%e5%bc%80%e5%90%af%e5%bc%80%e5%90%afeaccelerator%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98.html</guid>
		<description><![CDATA[本篇只是个人猜测.仅供参考,注意辩读. 我的linode主机,前两天一度出现硬盘IO狂飙的事情.被警告和死机几次,很头疼.仔细检查很多地方,最终将目标锁定在eaccelerator,只有开启它之后,程序才会频繁的进行数据交换.将所有键值指向shm,即内存作为缓存容器,IO读写立刻下降. 参数如下: zend_extension = “/usr/local/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so” eaccelerator.shm_size = 128 eaccelerator.enable = 1 eaccelerator.optimizer = 1 eaccelerator.debug = 0 eaccelerator.name_space = “” eaccelerator.check_mtime = 1 eaccelerator.filter = “” eaccelerator.shm_max = 0 eaccelerator.shm_ttl = 3600 eaccelerator.shm_prune_period = 3600 eaccelerator.shm_only = 1 eaccelerator.compress = 0 eaccelerator.compress_level = 6 eaccelerator.keys = shm eaccelerator.sessions = shm eaccelerator.content = shm eaccelerator.compress [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1089_%e5%bc%80%e5%90%af%e5%bc%80%e5%90%afeaccelerator%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98%e5%90%8e%e7%9a%84%e7%a3%81%e7%9b%98%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>linux下用源代码编译mysql（完整步骤）</title>
		<link>http://blog.thematice.com/html/y2010/1092_linux%e4%b8%8b%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e7%bc%96%e8%af%91mysql%ef%bc%88%e5%ae%8c%e6%95%b4%e6%ad%a5%e9%aa%a4%ef%bc%89.html</link>
		<comments>http://blog.thematice.com/html/y2010/1092_linux%e4%b8%8b%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e7%bc%96%e8%af%91mysql%ef%bc%88%e5%ae%8c%e6%95%b4%e6%ad%a5%e9%aa%a4%ef%bc%89.html#comments</comments>
		<pubDate>Tue, 18 May 2010 15:47:03 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[configure]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1092</guid>
		<description><![CDATA[linux下用源代码编译apache+mysql+php应用环境linux下用源代码编译mysql（基本步骤） linux下用源代码编译apache linux下用源代码编译php mysql部分。mysql源代码的版本是：mysql-5.1.29-rc.tar.gz 建立mysql运行的用户和组：为了安全起见，myslq需要以特定的用户身份去运行。 首先，我们需要查看系统中现有的用户及用户组： 注意：本文中所有的命令均以root身份运行（既shell提示符为#），如果对linux系统不熟悉，在回车前一定要仔细核对。本文不对命令进行过多的讨论，除非有必要，仅给出需要的命令及参数解释。 grep -in mysql /etc/passwd /etc/group 执行上述命令，-i参数不区分大小写，如果你没有看到包含mysql的信息，则说明你的系统当前 可能 没有配置mysql，下面我们需要为mysql运行创建用户及组。如果你看到结果返回 mysql 的字样，说明mysql运行的帐户信息己建立好了，那么可以跳过下面这一步。 &#60;!&#8211;more&#8211;&#62; groupadd -r -p mysql5 mysql useradd -c “mysql daemon” -r -s /bin/false -d /var/lib/mysql -g mysql -p mysql5 mysql 上述参数解释如下（两个命令参数意义类似）： -c “mysql daemon” mysql用户的描述，如果描述包含多个字符，可以使用引号 -r 将 用户/组 设置为 系统用户/组 -s /bin/false 指定登录外壳，/bin/false为禁止用户从 终端/图形界面 登录 -d /var/lib/mysql，设置用户的主目录，/var/lib/mysql是默认设置，你也可以指定其他位置。 -g [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1092_linux%e4%b8%8b%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e7%bc%96%e8%af%91mysql%ef%bc%88%e5%ae%8c%e6%95%b4%e6%ad%a5%e9%aa%a4%ef%bc%89.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL也有潜规则 &#8211; Select 语句不加 Order By 如何排序？</title>
		<link>http://blog.thematice.com/html/y2010/1085_mysql%e4%b9%9f%e6%9c%89%e6%bd%9c%e8%a7%84%e5%88%99-select-%e8%af%ad%e5%8f%a5%e4%b8%8d%e5%8a%a0-order-by-%e5%a6%82%e4%bd%95%e6%8e%92%e5%ba%8f%ef%bc%9f.html</link>
		<comments>http://blog.thematice.com/html/y2010/1085_mysql%e4%b9%9f%e6%9c%89%e6%bd%9c%e8%a7%84%e5%88%99-select-%e8%af%ad%e5%8f%a5%e4%b8%8d%e5%8a%a0-order-by-%e5%a6%82%e4%bd%95%e6%8e%92%e5%ba%8f%ef%bc%9f.html#comments</comments>
		<pubDate>Mon, 26 Apr 2010 07:00:41 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.thematice.com/?p=1085</guid>
		<description><![CDATA[今天遇到一个问题，有一个 Select 语句没有加 “Order By”，返回的数据是不确定的。 这种问题碰到不止几次了。追根寻底， Select 语句如果不加 “Order By”， MySQL会怎么排序呢？ 在网上搜了一下，在MySQL论坛发现了这篇文章。 http://forums.mysql.com/read.php?21,239471,239688#msg-239688 简单翻译一下 * 不能依赖 MySQL 的默认排序 * 如果你想排序，总是加上 Order By * GROUP BY 强加了 Order By （这与标准语法冲突，如果要避免，请使用 ORDER BY NULL）这里我有疑问， 到底强加了何种 Order by 对于 MyISAM 表 MySQL Select 默认排序是按照物理存储顺序显示的。（不进行额外排序）. 也就是说 SELECT * FROM tbl &#8211; 会产生“表扫描”。如果表没有删除、替换、更新操作，记录会显示为插入的顺序。 InnoDB 表 同样的情况，会按主键的顺序排列。再次强调，这只是潜规则（artifact of the underlying implementation：怎么翻译？）， [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2010/1085_mysql%e4%b9%9f%e6%9c%89%e6%bd%9c%e8%a7%84%e5%88%99-select-%e8%af%ad%e5%8f%a5%e4%b8%8d%e5%8a%a0-order-by-%e5%a6%82%e4%bd%95%e6%8e%92%e5%ba%8f%ef%bc%9f.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

