<?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>Defy</title>
	<atom:link href="http://www.defy.com.cn/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.defy.com.cn</link>
	<description>习惯随时记录,沉淀多年知识.</description>
	<lastBuildDate>Tue, 09 Mar 2010 08:17:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>SVN目录访问权限的设置[转]</title>
		<link>http://www.defy.com.cn/2010/03/09/svn%e7%9b%ae%e5%bd%95%e8%ae%bf%e9%97%ae%e6%9d%83%e9%99%90%e7%9a%84%e8%ae%be%e7%bd%ae%e8%bd%ac/</link>
		<comments>http://www.defy.com.cn/2010/03/09/svn%e7%9b%ae%e5%bd%95%e8%ae%bf%e9%97%ae%e6%9d%83%e9%99%90%e7%9a%84%e8%ae%be%e7%bd%ae%e8%bd%ac/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 08:17:36 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[基础应用]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=324</guid>
		<description><![CDATA[Subversion之路－－实现精细的目录访问权限控制（v1.0 更新于2006.12.05）]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/03/09/svn%e7%9b%ae%e5%bd%95%e8%ae%bf%e9%97%ae%e6%9d%83%e9%99%90%e7%9a%84%e8%ae%be%e7%bd%ae%e8%bd%ac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AS3.0和php数据交互POST方式</title>
		<link>http://www.defy.com.cn/2010/02/08/as3-0%e5%92%8cphp%e6%95%b0%e6%8d%ae%e4%ba%a4%e4%ba%92post%e6%96%b9%e5%bc%8f/</link>
		<comments>http://www.defy.com.cn/2010/02/08/as3-0%e5%92%8cphp%e6%95%b0%e6%8d%ae%e4%ba%a4%e4%ba%92post%e6%96%b9%e5%bc%8f/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 09:23:48 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[网站框架]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=309</guid>
		<description><![CDATA[首先打开flash建立一个as3.0的文件
拖 textarea和button组建到舞台上
分别给两个组件命名：txtcontent和addcontent

然后点第一帧添加动作：
var url:String = &#8220;http://localhost/tt.php&#8221;;   //执行操作数据库的php文件
var requestData:URLRequest = new URLRequest(url);   //新建URLRequest对象，用来获取flash中textArea的数据
var loader:URLLoader = new URLLoader();   //建立URLLoader对象，用来发送flash中textArea的数据
addcontent.addEventListener(MouseEvent.CLICK,addData); //为button附事件对象，点击按钮执行addData函数
function addData(e:Event){
       requestData.data = String;   //   .data 为URLRequest一个属性分三种大家可以查手册查到
       requestData.method = URLRequestMethod.POST;   //.method 也为 URLLoader的一个属性值
       var urlvariables:URLVariables = new URLVariables(); //建立URLVariables对象，
       urlvariables.cc = txtcontent.text; //通过cc参数传递 txtcontent里的数据
       requestData.data = urlvariables;//讲urlvariables的数据赋值给.data
       loader.load(requestData); //开始发送数据
}
php文件很简单
&#60;?
$content = $_POST["cc"]; //获取flash传递过来的参数
$conn [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/02/08/as3-0%e5%92%8cphp%e6%95%b0%e6%8d%ae%e4%ba%a4%e4%ba%92post%e6%96%b9%e5%bc%8f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP中采用POST方式发送数据</title>
		<link>http://www.defy.com.cn/2010/02/08/php%e4%b8%ad%e9%87%87%e7%94%a8post%e6%96%b9%e5%bc%8f%e5%8f%91%e9%80%81%e6%95%b0%e6%8d%ae/</link>
		<comments>http://www.defy.com.cn/2010/02/08/php%e4%b8%ad%e9%87%87%e7%94%a8post%e6%96%b9%e5%bc%8f%e5%8f%91%e9%80%81%e6%95%b0%e6%8d%ae/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 09:14:14 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[网站框架]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=306</guid>
		<description><![CDATA[最近两天项目需要，由于服务器正在开发，客户端进度稍快一些，没有服务器进行联调。因此我重操旧业，用PHP快速的写了一些web页面，算是当测试桩程序了，七八个web接口，基本上5到6个小时搞定了。由于当前的服务器需要与其他服务器进行对接，因此写的这个web服务还需要充当client角色，向其他服务器发送请求。
在网上搜了一下，基本上两种方法：（转自网友文章）
1.通过curl函数
$post_data = array () ;
$post_data [ ' clientname ' ] = &#8221; test08 &#8221; ;
$post_data [ ' clientpasswd ' ] = &#8221; test08 &#8221; ;
$post_data [ ' submit ' ] = &#8221; submit &#8221; ;
$url = &#8216; http://xxx.xxx.xxx.xx/xx/xxx/top.php &#8216; ;
$o = &#8220;&#8221; ;
foreach ( $post_data as $k =&#62; $v )
{
     $o .= &#8221; $k = [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/02/08/php%e4%b8%ad%e9%87%87%e7%94%a8post%e6%96%b9%e5%bc%8f%e5%8f%91%e9%80%81%e6%95%b0%e6%8d%ae/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>介绍几种PHP获取POST数据技巧</title>
		<link>http://www.defy.com.cn/2010/02/08/%e4%bb%8b%e7%bb%8d%e5%87%a0%e7%a7%8dphp%e8%8e%b7%e5%8f%96post%e6%95%b0%e6%8d%ae%e6%8a%80%e5%b7%a7/</link>
		<comments>http://www.defy.com.cn/2010/02/08/%e4%bb%8b%e7%bb%8d%e5%87%a0%e7%a7%8dphp%e8%8e%b7%e5%8f%96post%e6%95%b0%e6%8d%ae%e6%8a%80%e5%b7%a7/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 09:10:22 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[网站框架]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=303</guid>
		<description><![CDATA[（一）表单POST方式提交情况下PHP获取POST数据
$_POST 与 php://input可以取到值，$HTTP_RAW_POST_DATA 为空
$_POST 以关联数组方式组织提交的数据，并对此进行编码处理，如urldecode，甚至编码转换。
php://input 可通过输入流以文件读取方式取得未经处理的POST原始数据
（二）fsockopen提交POST数据下PHP获取POST数据
$sock = fsockopen(&#8220;localhost&#8221;, 80,
$errno, $errstr, 30);
if (!$sock) die(&#8220;$errstr ($errno)\n&#8221;);
$data = &#8220;txt=&#8221; . urlencode(&#8220;中&#8221;) .
&#8220;&#38;bar=&#8221; . urlencode(&#8220;Value for Bar&#8221;);
fwrite($sock, &#8220;POST /posttest/response
.php HTTP/1.0\r\n&#8221;);
fwrite($sock, &#8220;Host: localhost\r\n&#8221;);
fwrite($sock, &#8220;Content-type: applicat
ion/x-www-form-urlencoded\r\n&#8221;);
fwrite($sock, &#8220;Content-length: &#8221; .
strlen($data) . &#8220;\r\n&#8221;);
fwrite($sock, &#8220;Accept: */*\r\n&#8221;);
fwrite($sock, &#8220;\r\n&#8221;);
fwrite($sock, &#8220;$data\r\n&#8221;);
fwrite($sock, &#8220;\r\n&#8221;);
$headers = &#8220;&#8221;;
while ($str = trim(fgets($sock,
4096)))
$headers .= &#8220;$str\n&#8221;;
echo &#8220;\n&#8221;;
$body = &#8220;&#8221;;
while (!feof($sock))
$body .= fgets($sock, 4096);
fclose($sock);
echo $body;
 
PHP获取POST数据结论：
1. [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/02/08/%e4%bb%8b%e7%bb%8d%e5%87%a0%e7%a7%8dphp%e8%8e%b7%e5%8f%96post%e6%95%b0%e6%8d%ae%e6%8a%80%e5%b7%a7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>网络数据包拦截分析工具Iris</title>
		<link>http://www.defy.com.cn/2010/02/05/%e7%bd%91%e7%bb%9c%e6%95%b0%e6%8d%ae%e5%8c%85%e6%8b%a6%e6%88%aa%e5%88%86%e6%9e%90%e5%b7%a5%e5%85%b7iris/</link>
		<comments>http://www.defy.com.cn/2010/02/05/%e7%bd%91%e7%bb%9c%e6%95%b0%e6%8d%ae%e5%8c%85%e6%8b%a6%e6%88%aa%e5%88%86%e6%9e%90%e5%b7%a5%e5%85%b7iris/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 04:20:15 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[基础应用]]></category>
		<category><![CDATA[Iris]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=298</guid>
		<description><![CDATA[Iris是一款最常用的，功能强大的数据包拦截分析工具，可用于拦截通过网络传输的各类TCP/IP/UDP/ICMP数据包，同时可对拦截的数据包进行分析，了解网络协议的结构和组成，方便监控通过网络传输的数据、检测木马程序等。
一、安装配置
由于Iris可能被别有用心的人非法使用，所以绝大多数的软件下载站点并不提供该软件的下载，软件只能在一些网络安全网站上找到，建议直接到软件开发公司eEye Digital Security的主页处下载，下载地址是http://www.eeye.com/html/Products/Iris/Download.html。目前的最新版本是4.0.6，未注册只能使用15天。
程序安装比较简单，一路Next就可以了。第一次运行需要配置一些参数。
（1）Capture(捕获) 设置数据包捕获的运行及显示方式，此项可不设置。
（2）Decode(解码) 设置数据包解码参数，此项可不设置。
（3）Adapters(网卡) 设置要捕获数据包的网卡，此项是必须要做的。如果你的机器只有一块网卡，直接单击网卡名，再单击“应用”按钮即可。如果你的机器有两块以上的网卡，就要根据具体的情况选择了。下面举个简单的例子：
假设单位内所有的机器都通过一台服务器接入Internet，服务器有两块网卡，一块和Internet连接，一块作为内网连接，所有的内网机器的数据包都将通过该网卡，为了监视内部网络数据包，就必须选择内部网卡作为Iris的工作网卡。要了解你的网卡类型和名称可通过右击“网上邻居”，选择“属性”进行查看。
（4）Guard(警告) 设置报警声及过滤特征，此项可不设置。
（5）Miscellaneous(混合) 设置数据包缓冲区的大小及其他，此项可不设置。
二、 形势分析
Iris启动运行界面比较复杂，到处是按钮和图标，从哪里下手是初学者最先遇到的问题。要想充分发挥Iris的功能，第一步就是首先要了解目前网络的使用情况，可通过下面步骤进行：
1.运行Iris。
2.打开菜单“Capture/Start（捕获/开始）”，或单击菜单下的绿色三角形工具按钮。
3.单击右边的“Capture（捕获）”工具按钮，可以看到Iris正在辛勤工作，不断地捕获数据包。
4.工作一段时间后（建议捕获2000个数据包），打开菜单“Capture/Stop（捕获/停止）”或单击菜单下的红色正方形工具按钮停止捕获数据。此时，你可以看到大量的数据包在列表，看不懂没关系，先放在那里。
5.使用Iris的Decode（解码）功能分析一下数据。单击右边的“Decode”工具按钮，可以发现Iris已经把所有正在上网的机器都在“Hosta activity（活动的计算机）”中列出来了。
图一 查看活动的计算机
查看网络上有哪些电脑正在运行，也可以通过菜单下的“Address Book（地址簿）”来实现，不过需要花费很长时间，不建议使用。
三、 分析“敌”情
掌握了目前有哪些电脑在上网是第一步，下面来看看用户在做什么？单击“Hosta activity”右上角“+”，可以展开“Hosta activity”下的所有资料。此时你就可以发现Iris自动帮你分析出用户正在使用网络服务的类型，有HTTP，MSN Messenger，SMTP ， FTP 等一一列出！在单击其中一项，看看右下角的窗口里有什么，里面还有具体的内容哦！哈哈！在看新闻，有意思！我也看看，单击窗口上的“GO”按钮即可，不过有时单击“GO”按钮只是下载页面的其中一个文件，要想了解整个页面的情况，可以在窗口中查找“Referer: ”后面跟的就是网址。来告诉他一下，单击窗口上的小人按钮，马上发个信息给他，请礼貌用语哦！还有许多数据包Iris无法分析，没关系一个个地往下移，看看。哈！他在玩联众游戏！当然发现这些，就要靠平时的经验积累了，例如：玩不同的网络游戏都有什么不同的文字提示、哪些服务要使用哪些端口号、不同服务使用的是什么协议之类都要熟悉。只有这样才能更好的使用Iris。
图二 分析结果
四、重点突破
掌握了网络总体情况，下面就可以针对具体的用户进行数据分析了，下面以分析MSN Messenger的数据传递过程为例，介绍一下具体的操作过程。
1.了解使用Msn Messager的机器的IP地址。通过前面的分析很容易发现哪些机器使用MSN Messenger将其IP地址记录下来。
2.设置Filters(过滤)，设置Filters的目的在于，拦截和所要达到的目标不相干的数据包，只允许想要的数据包通过，方便对数据分析。
3.单击右边的“Filters”工具按钮，即可设置过滤的条件。
可以选择过滤的方式有：Hardware filter(硬件过滤)、Layer2,3(数据链路层网络层过滤)、Words(单词过滤)、Mac address(Mac 地址)、IP address(IP 地址)、Ports(端口)、Advance(高级)七种形式。如果你了解相关知识，可以很容易设置。如果不了解，就不用设置过滤，Iris提供的数据非常直观，慢慢看也没有关系。
4.要分析MSN Messenger的数据传递过程，只要设置IP address(IP 地址)、Ports(端口)即可，在“Edit filters settings（编辑过滤设置）”窗口中，单击“IP address（IP地址）”按钮，“Mode(模式)”选择为“Include(包含)”，“Address 1”中输入要分析的机器的IP地址，“Dir(方向)”选择双向箭头，“Address 2”不必设置。最后单击“应用”按钮。
5.在“Edit filters settings”窗口中，单击“Ports”按钮，模式选择为“Include”，在Known ports（已知端口）中，找到“MSN Messenger”后双击，单击“确定”退出设置界面。
6.下面就可以打开菜单“Capture/Start”，开始捕获数据包。
只要目标机器打开MSN开始聊天，你就可以发现Iris不断地捕获到数据，停止捕获后就可以分析数据包了。
使用同样的办法，还可以对特定的机器的SMTP协议，POP3协议等等各种协议的数据进行捕获和分析以便了解用户网络的使用并进行管理和维护。
五、保卫战
利用Iris的数据包捕获功能，还可以把它作为简易的木马检测工具来使用（不过确实大材小用了），具体的操作步骤和分析MSN Messenger的数据传递过程有些类似，不同的是，不需要设置Ports，这样就能够发现所有进出你计算机的数据包，可以通过检查数据包的合法性，来判断是否已经中了木马!
同时还可以单击右边的“Guard”(警告)工具按钮，随时提醒是否有其它电脑连接你的计算机。一旦发现其它电脑连接你的计算机，Iris自动发出警报声，并记录下对方的地址，提供给使用者分析。
最后要说的是Iris能够分析每个网络数据包的组成及含义，它本身就是一个非常生动的TCP/IP协议教程，对Internet编程爱好者来说，死啃TCP/IP协议教程是非常辛苦的事，但如果你使用了Iris，可以将抽象的协议标准和实际应用紧密联系在一起，可达到事半功倍的效果。
(编者注：由于Iris功能强大，请不要将本软件用于非法目的，如非法获取他人密码，监控他人电脑等。由于软件特殊，恕不提供。)
Iris网络嗅探器使用与技巧
(以下内容部分翻译自iris自带的帮助文件
   1.【Iris简介】
   一款性能不错的嗅探器。嗅探器的英文是Sniff，它就是一个装在电脑上的窃听器，监视通过电脑的数据。
   
   2.【Iris的安装位置】
   作为一个嗅探器，它只能捕捉通过所在机器的数据包，因此如果要使它能捕捉尽可能多的信息，安装前应该对所处网络的结构有所了解。例如，在环形拓扑结构的网络中，安装在其中任一台机都可以捕捉到其它机器的信息包（当然不是全部），而对于使用交换机连接的交换网络，很有可能就无法捕捉到其它两台机器间通讯的数据，而只能捕捉到与本机有关的信息；又例如，如果想检测一个防火墙的过滤效果，可以在防火墙的内外安装Iris，捕捉信息，进行比较。   
   3.【配置Iris】
   Capture（捕获）
   Run continuously ：当存储数据缓冲区不够时，Iris将覆盖原来的数据包。
   Stop capture after filling [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/02/05/%e7%bd%91%e7%bb%9c%e6%95%b0%e6%8d%ae%e5%8c%85%e6%8b%a6%e6%88%aa%e5%88%86%e6%9e%90%e5%b7%a5%e5%85%b7iris/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easy DragToGo 在Firefox3.6中复活</title>
		<link>http://www.defy.com.cn/2010/01/31/easy-dragtogo-%e5%9c%a8firefox3-6%e4%b8%ad%e5%a4%8d%e6%b4%bb/</link>
		<comments>http://www.defy.com.cn/2010/01/31/easy-dragtogo-%e5%9c%a8firefox3-6%e4%b8%ad%e5%a4%8d%e6%b4%bb/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 04:46:01 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[基础应用]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=296</guid>
		<description><![CDATA[首先到下面的链接中下载Easy DragToGo:
http://addons.sociz.com/firefox/700/
一定要下载到本地硬盘中，
然后再打开记事本，将压缩包内的install.rdf托到记事本里，将代 码&#60;em:maxVersion&#62;3.6rc1&#60;/em:maxVersion&#62; 中的3.6rc1改为3.7，然后另存到桌面上，文件名还是install.rdf，保存。
然后再将install.rdf托动到压缩包内，覆盖原来的文件。关闭压缩包。
然后再将easy_dragtogo-1.1.2.4-fx.xpi托 动到firefox 3.6窗口里安装。
     点击收藏]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/01/31/easy-dragtogo-%e5%9c%a8firefox3-6%e4%b8%ad%e5%a4%8d%e6%b4%bb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>国外头部网站的运维模式</title>
		<link>http://www.defy.com.cn/2010/01/29/%e5%9b%bd%e5%a4%96%e5%a4%b4%e9%83%a8%e7%bd%91%e7%ab%99%e7%9a%84%e8%bf%90%e7%bb%b4%e6%a8%a1%e5%bc%8f/</link>
		<comments>http://www.defy.com.cn/2010/01/29/%e5%9b%bd%e5%a4%96%e5%a4%b4%e9%83%a8%e7%bd%91%e7%ab%99%e7%9a%84%e8%bf%90%e7%bb%b4%e6%a8%a1%e5%bc%8f/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 09:50:47 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[运营策划]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=294</guid>
		<description><![CDATA[发现国外有两个网站的运营模式挺新的，能突破传统运维方案，打造外包式服务项目。
先来看看EyeView
官方网站表示，各大知名网站的FLA及VIDEO都有合作关系，先从他的表达上显示体现在流量与速度上的优势。但可惜在国内访问速度很慢。这可能和市场有关。官方如果没有考虑在中国设立市场 ，那也没有国内服务器可维持。这在中国就体现不了优势。
重点在于能把大流量化的客户维护到位，大型公司的确需要服务器或者机房来维护整体的网站,像EBAY这样大型的商务网站特别需要多服务器，而且会在不同地区设立多个服务器或者机房。可是硬件上的成本高，而且管理成本上会大大增加。如果从网站的内容上考虑外包式，就是把网站的整体上流量大占用率大的图片及加载的视频以链接形式交给eyeview的服务器来做，那么可以解决图片视频的加载问题及管理维护问题了。
cooliris和eyeview有点像。但他重点在于效果。就是技术上的实现了。不仅仅考虑外包的运维服务。而且把技术实现及各浏览器的环境也考虑进来。完全能称得上专业视频。
国内目录没有发现类似这样的公司，不是技术上不行，模式上与国外断层很大。如果在中国能代理国外的产品，国外代理中国的产品。这不失为一个好项目 。
     点击收藏]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/01/29/%e5%9b%bd%e5%a4%96%e5%a4%b4%e9%83%a8%e7%bd%91%e7%ab%99%e7%9a%84%e8%bf%90%e7%bb%b4%e6%a8%a1%e5%bc%8f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>firefox插件+系统软件+开发平台+测试平台+项目管理目录</title>
		<link>http://www.defy.com.cn/2010/01/27/firefox%e6%8f%92%e4%bb%b6%e7%b3%bb%e7%bb%9f%e8%bd%af%e4%bb%b6%e5%bc%80%e5%8f%91%e5%b9%b3%e5%8f%b0%e6%b5%8b%e8%af%95%e5%b9%b3%e5%8f%b0%e9%a1%b9%e7%9b%ae%e7%ae%a1%e7%90%86%e7%9b%ae%e5%bd%95/</link>
		<comments>http://www.defy.com.cn/2010/01/27/firefox%e6%8f%92%e4%bb%b6%e7%b3%bb%e7%bb%9f%e8%bd%af%e4%bb%b6%e5%bc%80%e5%8f%91%e5%b9%b3%e5%8f%b0%e6%b5%8b%e8%af%95%e5%b9%b3%e5%8f%b0%e9%a1%b9%e7%9b%ae%e7%ae%a1%e7%90%86%e7%9b%ae%e5%bd%95/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 07:36:29 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[基础应用]]></category>
		<category><![CDATA[运营策划]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=289</guid>
		<description><![CDATA[2010年了，09年几乎没有值得我们去怀念的事情，互联网上的、还是自然灾难的，都是杯具。
新年工作整理中，给自己电脑也整理一下：
win2003:

Zend Studio 7.1.1
Zend Guard 5.0.1
Zend Server  4.06 For PHP5.2.11
Web CEO 8.0
PS CS4
DW CS4
FL CS4
FlashFXP
process explorer
axialis software
EditPlus
office2007
极点五笔
navical
lingoes 2
Axure
Regex Match
彩票2元
系统之家字体包
ultra video converter
花生壳
Active ports
mysql
Du meter
Firefox
Syscheck2.exe
Top.exe
MultiTaskClock
Foxit Reade
BCompare
QQ
QQ旋风
FinalData
IE8
Audition
Findname
ConvertZ
LocoySpider
Mysql WorkBench
SuperDIC
SlimTune
jakarta

Server:

flashfxp
极点五笔
mssql2005 sp3
active ports
du meter
zend server 4.0.6 for PHP5.2.11
.net 2 &#38; .net3.5 sp1
final dataprocess explorer
sql server management studio express
QQ旋风
EditPlus
serv-u

Firefox:

add to search bar
qucik drag
embedded objects
extended statusbar
firebug
google gears
javascript debugger
pixel perfect
qqdownload extension
tab mix Plus
xmarks
zend studio toolbar
dom [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/01/27/firefox%e6%8f%92%e4%bb%b6%e7%b3%bb%e7%bb%9f%e8%bd%af%e4%bb%b6%e5%bc%80%e5%8f%91%e5%b9%b3%e5%8f%b0%e6%b5%8b%e8%af%95%e5%b9%b3%e5%8f%b0%e9%a1%b9%e7%9b%ae%e7%ae%a1%e7%90%86%e7%9b%ae%e5%bd%95/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spacebuilder：为什么选择asp.net mvc？</title>
		<link>http://www.defy.com.cn/2010/01/27/spacebuilder%ef%bc%9a%e4%b8%ba%e4%bb%80%e4%b9%88%e9%80%89%e6%8b%a9asp-net-mvc%ef%bc%9f/</link>
		<comments>http://www.defy.com.cn/2010/01/27/spacebuilder%ef%bc%9a%e4%b8%ba%e4%bb%80%e4%b9%88%e9%80%89%e6%8b%a9asp-net-mvc%ef%bc%9f/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 11:56:17 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[网站框架]]></category>
		<category><![CDATA[运营策划]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=287</guid>
		<description><![CDATA[该资料为Spacebuilder官方内部资料，主要详细阐述了Spacebuilder从1.0到2.0的在架构上的改变，为什么选择了微软最新的asp.net mvc技术，如何搭建一个更好的Web2.0社区平台产品。 
附原件pps下载链接：http://tinyurl.com/d9ymlo
提纲：
一、SPB表现层当前存在的问题
二、WebForm与MVC比较
三、asnet mvc介绍
四、使用mvc注意事项
一、SPB表现层当前存在的问题
1.表现层整体运行效率低
由于全部采用的自定义控件，是靠在运行时动态加载skin文件实现换肤的，导致以下性能问题：
*动态加载skin导致全部采用FindControl方式导致浪费很多服务器资源；
*在加载skin文件时首先都要检查文件是否存在，也浪费了服务器资源；
*不利于前端优化，当前不好控制css、JavaScript的链接位置及JavaScript的执行位置；
*即便很多功能不依靠ViewState但是为了减小页面大小还需要对ViewState进行处理；
2.ajax效率低
      当前spb的ajax主要使用的是asp.net ajax的UpdatePanel，使用UpdatePanel并不是真正的ajax解决办法，其实只是一个防止页面刷新的障眼法而已，页面的传输流量没有减少而且会经历完整的页面生命周期。
3.url rewrite不够灵活
*当前实现二级域名形式（http://mazq.spacebuilder.cn）url rewrite，要借助外部工具；
*无法重写实现类似目录的url重写，例如：http://spacebuilder.cn/mazq/blog/2008/8/10/19
4.SEO困难
*css、js文件的链接及加载位置难以控制，页面内容不利于SEO；
*当前url rewrite规则不利于SEO；
二、WebForm与MVC比较
1.WebForm与MVC表现层模式比较
                                                                     View不能重用
                                                                     P与V关系密切
                                                           View可以完全交给界面设计人员
                                                                     View可以重用
                                                                   C与V关系不紧密
                                                     View完全交给界面设计人员有一定难度
2.WebForm优缺点分析
优点：快速上手、快速开发、强大的扩展机制
缺点：复杂的引擎、对于开发高性能的站点反而降低开发效率（解决ViewState、控件ID、换肤功能、SEO）
3.asp.net mvc优缺点分析
优点：
原生态url routing，便于url rewrite
Control与View完全分离，利于换肤且没有性能损失
便于对输出的html做完全的控制，利于精简代码及SEO
表现层的性能可以优化到极致
应用asp.net的master及去除控件的运行时特性，使用vs开发时将可以使用设计视图
缺点：
开发人员需要花时间熟悉这个新技术
现有代码移植到mvc需要一定时间
开发人员需要熟悉html以及css、JavaScript
开发人员需要摆脱在WebForm开发时对服务器控件种种依赖
三、asp.net mvc介绍
1.mvc运行图
2.mvc详细请求流程
（1）用户发起一个url请求
（2）asp.net mvc framework通过url roueing rules找到一个处理该请求的Controller及Action
（3）Controller调用Model加载View需要的数据
（4）Model从数据库获取数据
（5）Controller把从Model取出的数据传输到View，然后由View负责对外呈现
四.使用mvc注意事项
1.aspx、ascx、master依然可用，但是不再有postback模型，亦不会有页面生命周期及ViewState；
2.asp.net mvc框架将完全支持象forms/windows身份认证，URL授权，成员/角色，输出和数据缓存，session/profile状态管理，健康检测，配置系统，以及provider架构等现有的ASP.NET特性；
3.SBContext将不复存在；
4.XxxUrls Url集中管理类将不复存在；
5.所有依赖ViewState的控件将重新考虑设计或直接去除；
6.ResourceManager及相关控件需要调整
本文来自CSDN博客，转载请标明出处：http://blog.csdn.net/happy09/archive/2009/03/20/4008854.aspx
     点击收藏]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/01/27/spacebuilder%ef%bc%9a%e4%b8%ba%e4%bb%80%e4%b9%88%e9%80%89%e6%8b%a9asp-net-mvc%ef%bc%9f/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>浅谈SpaceBuilder系统的缓存机制_缓存思想</title>
		<link>http://www.defy.com.cn/2010/01/27/%e6%b5%85%e8%b0%88spacebuilder%e7%b3%bb%e7%bb%9f%e7%9a%84%e7%bc%93%e5%ad%98%e6%9c%ba%e5%88%b6_%e7%bc%93%e5%ad%98%e6%80%9d%e6%83%b3/</link>
		<comments>http://www.defy.com.cn/2010/01/27/%e6%b5%85%e8%b0%88spacebuilder%e7%b3%bb%e7%bb%9f%e7%9a%84%e7%bc%93%e5%ad%98%e6%9c%ba%e5%88%b6_%e7%bc%93%e5%ad%98%e6%80%9d%e6%83%b3/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 11:54:30 +0000</pubDate>
		<dc:creator>Defy</dc:creator>
				<category><![CDATA[网站框架]]></category>

		<guid isPermaLink="false">http://www.defy.com.cn/?p=285</guid>
		<description><![CDATA[在前面的文章中也提及到为了提高系统的性能,SpaceBuilder在内部做了大量的工作,而数据缓存就是其中非常高效的处理方式.
我们知道SpaceBuilder采用了多层架构的处理模式,数据通过业务实体的形式在系统框架的各个层内传递.(如图1)

图表 1SpaceBuilder中数据(业务实体)在各个框架层间的传递
业务实体是在各层间进行数据传递的形式,但其最初都来源于各种序列化的第三方的存储介质(比如此处的SQLServer数据库)中.我们知道这各种第三方存储介质由于要进行各种I/O操作,其访问速度和响应性能肯定会受到一定的约束.为了提高访问速度获取更好的响应性能,那么我们是否可以考虑把业务实体从各种序列化存储介质剥离出来,将其放入性能更快的不需要频繁进行I/O操作的介质(比如内存)中呢? SpaceBuilder就是这么做的.
当然采用内存保存业务信息,速度效率是能得到保证了,但是其有一个致命的缺点&#8212;数据不能持久化,也就是说当一断电的时候,内存中所有的数据都被清空了.这样不能保存用户的业务数据肯定是不可以的.而我们的系统又要求有较高的性能?那有如何办呢? SpaceBuilder就在使用内存和第三方介质保存业务数据间,进行了一定的取舍和平衡.什么意思呢? 所有的数据都真实的保存的第三方介质中,而在内存中对其做镜像;也就是说数据在系统中存在两份.这个时候,有一件事情就变的尤其重要,那就是两份数据同步的问题. 当然我们可以通过一定的策略对其进行保证(下面会有专门的文字谈到这个问题).
系统中会有两份数据,那么这两份数据都在什么情况下使用呢?首先我们使用网络通常会有这么一个体验(或者说习惯): 因为我们上网的目的很大程度上是在获取信息,那么我们去浏览信息的的时间可能会占到我们总上网时间的95%,甚至更多, 而我们为了展示自己而发布信息 的时候就会很少,几乎连5%都占不到. 那么我们将这两个行为进行抽象,浏览信息对应我们开发来说肯能就是 Get(),或者是GetList()方法;而发布信息就是Add(),Update(),Delete()方法. 这样我们就可以吧改变业务数据的方式(Add/Update/Delete)其直接操作第三方存储介质,而不改变业务数据的方法(Get/GetList)直接读取内存. 这无疑即保存了用户的数据,也提高了访问速度(因为95%或者更多时候大家都是在Get数据,而Get对应的操作对象是响应速度更多的内存).
使用方式
SpaceBuilder中的缓存都统一封装在了WebCache类中.WebCache类功能非常强大,同时使用也非常简单.
l Insert()&#8212;将某一个(一批)业务数据,保存入缓存体系中;
l Remove()—将某一个(一批)业务数据,从缓存体系中移除;
l Get()—从缓存体系中获取某一个(一批)业务数据
那么我们研究WebCache就先从获取业务数据(Get方法)看起.Components中所有的Get方法几乎都采用了相似的处理逻辑,我们可以随便找一个(此处我们以Files\Components\FileSections.cs 142行为例)
public static FileSection GetSection(int sectionID, bool userCache)
{
string cacheKey = string.Format(&#8220;FileSection-SectionID:{0}&#8221;, sectionID);
FileSection section = null;
if (userCache)
section = WebCache.Get(cacheKey) as FileSection;
if (section == null)
{
section = FileDataProvider.Instance().GetSection(sectionID);
if (userCache)
WebCache.Insert(cacheKey, section, WebCache.MinuteFactor * 2);
}
return section;
}
首先其 创建了一个缓存的键string cacheKey = string.Format(&#8220;FileSection-SectionID:{0}&#8221;, sectionID); 接着先去系统缓存中根据这个键去获取 相应的值WebCache.Get(cacheKey) as FileSection.如果这个值没有取到if [...]]]></description>
		<wfw:commentRss>http://www.defy.com.cn/2010/01/27/%e6%b5%85%e8%b0%88spacebuilder%e7%b3%bb%e7%bb%9f%e7%9a%84%e7%bc%93%e5%ad%98%e6%9c%ba%e5%88%b6_%e7%bc%93%e5%ad%98%e6%80%9d%e6%83%b3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.483 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-10 16:52:52 -->
