git clone
sh autogen.sh
./configure
make
make install (需要root許可權)
① 乙個訪問到達線上前端機;
② socket包在ip層被拷貝了乙份傳給tcpcopy程序;
③ tcpcopy修改包的目的及源位址,發給測試前端機;
④ 拷貝的包到達測試前端機;
⑤ 測試前端機的nginx處理訪問,並返回結果;
⑥ 返回結果在ip層被截獲、丟棄,由intercpetion拷貝返回結果的ip header返回;
⑦ ip header被傳送給線上前端機的tcpcopy程序。
client 機器上:
sudo tcpcopy -x 8401-10.18.105.110:36524 -l tcpsend.log
server 機器上:
sudo modprobe ip_queue
sudo iptables -i output -p tcp --sport 36524 -j queue
sudo intercept -l tcpreceive.log
[notice] mon sep 24 17:40:30 2012 usec=780462 intercept version:0.6.0
[notice] mon sep 24 17:40:30 2012 usec=784913 create delay-table,size:65536
[notice] mon sep 24 17:40:30 2012 usec=794283 create router-table, size:131072
[notice] mon sep 24 17:40:30 2012 usec=794347 socket created successfully
[notice] mon sep 24 17:40:30 2012 usec=794360 it binds address successfully
[notice] mon sep 24 17:40:30 2012 usec=794372 it listens successfully
[notice] mon sep 24 17:40:30 2012 usec=794374 msg listen socket:4
[notice] mon sep 24 17:40:30 2012 usec=794412 sendto for ip queue is ok
[notice] mon sep 24 17:40:30 2012 usec=794415 firewall socket:5
[warn] mon sep 24 17:40:30 2012 usec=794425 nl recv error:60
[warn] mon sep 24 17:40:30 2012 usec=794427 privilage problems or not the obj of tcpcopy
[error] mon sep 24 17:41:39 2012 usec=638820 set signal handler:2
[notice] mon sep 24 17:41:39 2012 usec=638892 release_resources begin
[notice] mon sep 24 17:41:39 2012 usec=638920 firewall sock is closed
[notice] mon sep 24 17:41:39 2012 usec=638940 msg listen sock is closed
[notice] mon sep 24 17:41:39 2012 usec=638946 destroy router table
[notice] mon sep 24 17:41:39 2012 usec=643316 total visit hash_find_node:0,compared:0
[notice] mon sep 24 17:41:39 2012 usec=643346 destroy items 0 in table name:router-table
[notice] mon sep 24 17:41:39 2012 usec=643349 destroy delay table,total:0
[notice] mon sep 24 17:41:39 2012 usec=644532 destroy items:0,free:0,total:0
[notice] mon sep 24 17:41:39 2012 usec=644539 create msg list:0,free:0,destr:0
[notice] mon sep 24 17:41:39 2012 usec=646470 total visit hash_find_node:0,compared:0
[notice] mon sep 24 17:41:39 2012 usec=646492 destroy items 0 in table name:delay-table
[notice] mon sep 24 17:41:39 2012 usec=646495 release_resources end except log file
2012/09/24 18:32:37 +164 [error] can not connect to remote server(48:36524) (connection timed out)
#!/bin/sh
i=0while true
do if [ $i -ne 100000 ]; then
curl "" > /dev/null
sleep 1
$i=$i+1
else
break
fidone
Git的使用 1 版本庫
git作為乙個分布式版本控制系統,其優點是不需要一直連線遠端版本庫就可以使用。故其為實現分布版本控制專門設計了一整套的儲存區間和語句,用來實現。1 本地版本庫 建立在本機磁碟上的資料夾 git 1 通過推送語句語句將本地版本庫完整的上傳 替換遠端版本倉庫中的 2 通過檢出語句建立 切換工作區的分支。...
低於1 0版本 pod使用
comments cocoapods將rails的gem思想成功的遷移到了osx中,讓ios和macos也能快速的管理第三方依賴。然而,用久了發現乙個很尷尬的問題 cocoapods還不是很完善,因此更新頻率很大,雖然我經常更新,但是他對舊版本的cocoapods相容性並不好。例如,我有乙個專案是用...
SiteMesh 3 0版本的簡單使用
1.sitemesh的簡介 sitemesh是由乙個基於web頁面布局 裝飾及與現存web應用整合的框架。它能幫助我們再由大量頁面工程的專案中建立一致的頁面布局和外觀,如一 致的導航條 一致的banner 一致的版權等。它不僅能處理動態的內容,如jsp php asp cgi等產生的內容,還能處理靜...