锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久久久久久99精品免费观看,久久久久香蕉视频,久久精品国产免费观看三人同眠http://www.shnenglu.com/twzheng/category/4033.html銆庣珯鍦ㄩ鍙f氮灝栫揣鎻′綇榧犳爣鏃嬭漿錛併? 浜哄湪鍙板寳蹇冨湪姹?/description>zh-cnMon, 15 Mar 2010 04:03:22 GMTMon, 15 Mar 2010 04:03:22 GMT60姹倃indows xp 綣佷綋鐗?/title><link>http://www.shnenglu.com/twzheng/articles/109710.html</link><dc:creator>璋枃鏀?/dc:creator><author>璋枃鏀?/author><pubDate>Sun, 14 Mar 2010 16:05:00 GMT</pubDate><guid>http://www.shnenglu.com/twzheng/articles/109710.html</guid><wfw:comment>http://www.shnenglu.com/twzheng/comments/109710.html</wfw:comment><comments>http://www.shnenglu.com/twzheng/articles/109710.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/twzheng/comments/commentRss/109710.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/twzheng/services/trackbacks/109710.html</trackback:ping><description><![CDATA[姹倃indows xp 綣佷綋鐗堬紝鏈濂芥槸鍙版咕鐗堢殑錛岃鑳戒竴姝ユ鐨勬墜鍔ㄥ畨瑁?鎯寵鍙岀郴緇?<br><br>鎵句簡濂藉嚑澶╀簡錛屽緢澶氳祫婧愰兘涓嬩笉鍔?br><br>浠婂ぉ濂戒笉瀹規槗涓嬩簡涓涓紝浣嗘槸棣欐腐鐗堢殑錛屼笖瀹夎鍒伴夋嫨鐩樼鏃訛紝閿洏鎵鏈夐敭閮戒笉鑳戒嬌鐢紝鎵浠ヨ繕鏄棤娉曞畨瑁?br><br>璋㈣阿鍚勪綅澶у摜澶у甯府蹇欙紝灝忓紵鎰熸縺涓嶅敖錛?img src ="http://www.shnenglu.com/twzheng/aggbug/109710.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/twzheng/" target="_blank">璋枃鏀?/a> 2010-03-15 00:05 <a href="http://www.shnenglu.com/twzheng/articles/109710.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>ESFramework浠嬬粛涔嬶紙12錛夆曗?鍩轟簬Tcp榪炴帴姹犵殑娑堟伅澶勭悊鍣?http://www.shnenglu.com/twzheng/articles/21897.html璋枃鏀?/dc:creator>璋枃鏀?/author>Sat, 14 Apr 2007 14:38:00 GMThttp://www.shnenglu.com/twzheng/articles/21897.htmlhttp://www.shnenglu.com/twzheng/comments/21897.htmlhttp://www.shnenglu.com/twzheng/articles/21897.html#Feedback0http://www.shnenglu.com/twzheng/comments/commentRss/21897.htmlhttp://www.shnenglu.com/twzheng/services/trackbacks/21897.htmlhttp://zhuweisky.cnblogs.com/archive/2006/03/17/351925.html

鍓嶉潰鐨勪袱綃囨枃绔犳垜浠凡緇忎粙緇嶄簡Tcp榪炴帴姹犲拰Tcp榪炴帴姹犵鐞嗗櫒錛屽茍涓斿紩鍏ヤ簡ITcpPool鎺ュ彛錛岃繖涓帴鍙e彲浠ュ皢鍗曚釜榪炴帴姹犲拰涓緇勮繛鎺ユ睜緇熶竴璧鋒潵錛屼嬌瀹冧滑鏈夌浉鍚岀殑澶栭儴浣跨敤鏂瑰紡銆傜幇鍦ㄦ垜浠渶瑕佽冭檻鐨勯棶棰樻槸錛屽綋娑堟伅鍒嗘淳鍣ㄥ垎媧句竴涓帴鏀跺埌鐨勮姹傛椂錛屽鏋滆繖涓姹傞渶瑕佽FS涓婄殑鏌愪釜鍔熻兘鎻掍歡澶勭悊錛岄偅涔堟秷鎭垎媧懼櫒鏄浣曞皢榪欎釜娑堟伅鍒嗘淳鍒板搴旂殑FS涓婂幓鐨勶紵 

    鍥為【浠嬬粛娑堟伅鍒嗘淳鍣?/font>鏃剁敾鍑虹殑鍚勬秷鎭粍浠惰仈緋誨浘錛屾垜浠潪甯歌嚜鐒剁殑鎯沖埌錛屽垱寤轟竴涓秷鎭鐞嗗櫒錛岃繖涓秷鎭鐞嗗櫒灝嗚姹傛秷鎭氳繃Tcp榪炴帴姹犺漿鍙戠粰瀵瑰簲FS澶勭悊銆傝繖鏍風殑涓涓秷鎭鐞嗗櫒縐頒負“鍩轟簬Tcp榪炴帴姹犵殑娑堟伅澶勭悊鍣?#8221;錛屽畠鍦ㄦ秷鎭粍浠惰仈緋誨浘涓殑浣嶇疆濡備笅錛?br>  
    褰撴湁涓涓姹傝鍒嗘淳鍒板熀浜庤繛鎺ユ睜鐨勬秷鎭鐞嗗櫒鏃訛紝瀹冨氨浠嶵cp榪炴帴姹犱腑Rent涓涓狽etworkStream錛岀劧鍚庡彂閫佽姹傦紝騫跺皢鎺ユ敹鍒扮殑鍥炲榪斿洖緇欐秷鎭垎媧懼櫒銆傚熀浜庤繛鎺ユ睜鐨勬秷鎭鐞嗗櫒浠嶇劧瀹炵幇浜咺DataDealer鎺ュ彛錛屽叾鍊熷姪ITcpPool緇勪歡鏉ュ疄鐜板姛鑳姐備笅闈㈢粰鍑虹畝鍗曚吉鐮侊紝鍥犱負鏁翠釜瀹炵幇姣旇緝澶嶆潅錛堥敊璇鐞嗐佸紓甯稿鐞嗐丷eRent鏈哄埗絳夛級錛屼唬鐮佹瘮杈冨錛屾墍浠ュ氨涓嶅垪鍑烘潵浜嗭紝澶у鍙浜嗚В浜嗕富瑕佺殑鎬濇兂灝辮浜嗭紝鑰岃繖涓濇兂鏄瘮杈冪畝鍗曠殑銆?
       public NetMessage DealRequestMessage(NetMessage reqMsg)
        {
            
/*
             1.Rent TcpStream
             2.Send Request
             3.Recieve Response
             4.Return Response
             
*/ 
        }

    鏈鍚庢彁涓鍙ワ紝鎴戜滑鍦ㄤ笂鍥劇殑AS鍜孎S涓兘鐪嬪埌浜嗙綉緇滅粍浠訛紝濡傛灉AS涔熼噰鐢═cp錛岄偅涔堣繖涓や釜緇勪歡鏄浉鍚岀殑錛屼篃灝辨槸璇碩cp緇勪歡鍙互寰堟柟渚跨殑澶嶇敤銆?nbsp;
   
    鍦‵S涓紝Tcp緗戠粶緇勪歡鍜屽姛鑳芥彃浠朵箣闂存槸閫氳繃铏氱嚎榪炴帴璧鋒潵鐨勶紝涔熷氨鏄緗戠粶緇勪歡騫朵笉浼氱洿鎺ヤ笌鍔熻兘鎻掍歡浜や簰錛屽畠浠箣闂翠粛鐒跺瓨鍦ㄨ繖涓涓航甯︼紝榪欏氨鏄秷鎭鐞嗗櫒宸ュ巶錛岄偅涔堢敤浜庣鐞嗗姛鑳芥彃浠剁殑宸ュ巶錛屽氨鍙仛“鍔熻兘鎻掍歡澶勭悊鍣ㄥ伐鍘侳unAddinDealerFactory”錛岃繖灝嗗湪涓嬫枃涓粙緇嶃?nbsp;

鎰熻阿鍏蟲敞錛?/p>

]]>
ESFramework浠嬬粛涔嬶紙11錛夛紞錛?Tcp榪炴帴姹犵鐞嗗櫒http://www.shnenglu.com/twzheng/articles/21896.html璋枃鏀?/dc:creator>璋枃鏀?/author>Sat, 14 Apr 2007 14:35:00 GMThttp://www.shnenglu.com/twzheng/articles/21896.htmlhttp://www.shnenglu.com/twzheng/comments/21896.htmlhttp://www.shnenglu.com/twzheng/articles/21896.html#Feedback0http://www.shnenglu.com/twzheng/comments/commentRss/21896.htmlhttp://www.shnenglu.com/twzheng/services/trackbacks/21896.html[婧怾 http://zhuweisky.cnblogs.com/archive/2006/03/16/351426.html

涓婃枃宸茬粡璁插埌錛?span lang=EN-US>Tcp榪炴帴姹犵鐞嗗櫒涓烘垜浠殑搴旂敤榪涜浜嗗緢澶氬鏉傜殑綆$悊錛屾瘮濡傚姛鑳芥湇鍔″櫒鐨勮皟搴︼紙瀹炵幇FS鐨勮礋杞藉潎琛★級銆佽繛鎺ユ睜鐨勫姩鎬佹坊鍔?/span>/縐婚櫎銆佹帶鍒舵瘡涓繛鎺ユ睜鐨勭浉鍏沖弬鏁板湪UI涓婄殑鏄劇ず絳夛紝騫朵笖榪炴帴姹犵鐞嗗櫒涓庡崟涓繛鎺ユ睜鎷ユ湁涓鏍風殑鎺ュ彛ITcpPool銆傛垜浠厛鍥為【涓涓嬭繖涓帴鍙o細
 
 1     public interface ITcpPool
 2     {
 3         RentStreamResult RentTcpStream(int poolTypeKey ,int serviceKey ,out NetworkStream stream ,out int serverID) ;//poolTypeKey琛ㄧず鏌愪釜鍩庡競錛宻erviceKey琛ㄧず鏌愰」鏈嶅姟
 4         void GiveBackTcpStream(int streamHashCode ,int serverID) ;//灝唗cp榪炴帴瑙勮繕緇欒繛鎺ユ睜
 5         void SetStreamDamaged(int streamHashCode ,int serverID) ;//poolKey濡傛灉涓嶆槗淇濆瓨錛屽垯姝ゅ綆鍗曠殑浼?1鍗沖彲    
 6 
 7         event CallBackCountChanged     ActiveConnectionCountChanged ;     
 8         event CallBackPoolStateChanged PoolStateChanged ;        
 9     }
10 

    RentTcpStream鏂規硶涓殑serviceKey鍙傛暟鍙嶆槧浜嗚繖鏍蜂竴涓簨瀹烇細涓庝竴涓?/span>AS鐩歌繛鐨勫涓?/span>FS涓紝姣忎釜FS鍔犺澆鐨勫姛鑳芥彃浠跺彲浠ユ槸涓嶄竴鏍風殑銆?/span>



    姣斿錛屼笂鍥句腑鐨?/span>3涓?/span>FS涓彧鏈?/span>FS1鍔犺澆浜嗗墠闈粙緇嶇殑“澶╂皵棰勬祴鏈嶅姟”鎻掍歡錛岄偅涔堝綋涓涓?#8220;澶╂皵棰勬祴鏈嶅姟”璇鋒眰鍒拌揪AS鏃訛紝AS灝卞彧鑳戒粠涓?/span>FS1涔嬮棿鐨勮繛鎺ユ睜涓?/span>Rent涓涓?/span>Tcp榪炴帴錛岃屼笉鏄粠FS2鎴?/span>FS3銆?/span>RentTcpStream鏂規硶鐨?/span>out鍙傛暟serverID琛ㄦ槑浜嗚繖鏉¤繛鎺ユ槸鎸囧悜鍝釜FS鐨勩?/span>

    鎺ヤ笅鏉ヨ冭檻榪欐牱涓涓棶棰橈紝褰撲竴涓姹傚埌鏉ワ紝榪欎釜璇鋒眰鍙互琚?/span>FS1銆?/span>FS2銆?/span>FS3澶勭悊錛岄偅涔圛TcpPoolsManager鍒板簳榪斿洖鍝釜榪炴帴姹犱腑鐨勮繛鎺ヤ簡錛熺瓟妗堟槸璐熻澆鏈灝忕殑閭d釜FS涓婄殑榪炴帴銆?br>    榪欐槸鎬庝箞鍋氬埌鐨勪簡錛熷叾瀹炲緢綆鍗曘傛瘡涓?/span>FS閮藉畾鏃訛紙姣斿涓縐掍竴嬈★級鍦版妸鑷繁鐨勮礋杞斤紙CPU鍒╃敤鐜囧拰鍐呭瓨鍒╃敤鐜囷級閫氱煡緇?/span>AS錛岄氱煡緇?/span>AS鐨勬柟寮忓彲浠ユ湁澶氱錛屾瘮濡?/span>.Net Remoting銆?/span>ESFramework涓湁涓涓О涓鴻繛鎺ユ睜璋冨害鍣?/span>ITcpPoolScheduler鐨勪笢涓滐紝瀹冭褰曚簡姣忎釜FS瀹炴椂鐨勮礋杞姐傝繖鏍峰綋涓涓姹傚埌鏉ユ椂錛岃繛鎺ユ睜綆$悊鍣↖TcpPoolsManager浼氳姹傝繛鎺ユ睜璋冨害鍣ㄤ粠浼楀鐨?/span>FS涓夊嚭涓涓?#8220;婊¤凍鏉′歡”涓旇礋杞芥渶灝忕殑FS銆傝繖閲岀殑“婊¤凍鏉′歡”涓昏鎸囩殑鏄搴旂殑FS涓婃湁鑳藉鐞嗚璇鋒眰鐨勫姛鑳芥彃浠躲傚疄鐜拌繖縐嶈皟搴﹂渶瑕佺殑鏀寔鐨勫悇涓浉浜掑崗浣滅殑緇勪歡鐨勮仈緋誨浘澶ц嚧濡備笅錛?/span>


      
    鍥句腑IServerPerformanceMonitor鏄敤浜庣洃鎺ф湰鍦版湇鍔″櫒鎬ц兘鐨勭粍浠訛紝瀹冨彲浠ュ畾鏃跺彂甯冩湰鏈嶅姟鍣ㄧ殑鎬ц兘鏁版嵁錛堜富瑕佹槸CPU鍒╃敤鐜囧拰鍐呭瓨鍒╃敤鐜囷級錛屽叾瀹氫箟濡備笅錛?br>
 1     public interface IServerPerformanceMonitor 
 2     {        
 3         void Start() ;
 4         void Stop() ;        
 5 
 6         int RefreshSpanSecs{get ;set ;}
 7 
 8         event CBackServerPerformance ServerPerformanceDataRefreshed ;
 9     } 
11 
12     public delegate void CBackServerPerformance(ServerPerformance performance) ;
 
13     public class ServerPerformance
14     {        
15         public float  CpuUsagePercent ;
16         public float  MemoryUsagePercent ;
17     }    
 

榪炴帴姹犺皟搴﹀櫒ITcpPoolScheduler鐨勫畾涔夊涓嬶細

 1     public interface ITcpPoolScheduler
 2     {
 3         //浠ヤ笅鏂規硶灞炴т粎浠呯敱澶氳繛鎺ユ睜綆$悊鑰呰皟鐢?/span>
 4         int GetNextTcpPool(int poolTypeKey) ; //榪斿洖鐨勬槸鏌愯繛鎺ユ睜鐨勬湇鍔$鐐圭殑serverID 錛屽鏋滄病鏈夊彲鐢ㄧ殑榪斿洖-1
 5         int GetNextTcpPool(int poolTypeKey ,int serviceKey) ; 
 6 
 7         void Initialize() ;
 8         void Dispose() ;//榪樺師鍒版湭鍒濆鍖栫殑鐘舵?/span>
 9         void SetServerState(int serverID ,bool activated) ;        
10         void AddServer(int serverID) ;
11         void RemoveServer(int serverID) ;
12 
13 
14         //浠ヤ笅鏂規硶灞炴х敱澶栭儴鎸囧畾鎴栬皟鐢?/span>
15         void SetPerformance(int serverID ,float cpuUsage ,float memUsage) ;        
16         ITcpPoolHelper    TcpPoolHelper{set ;}
17     }

    涓轟簡浣胯礋杞藉潎琛$殑鏁堟灉鏇村ソ錛?/span>ITcpPoolScheduler鍙互瀹炵幇鐨勯潪甯稿鏉傦紝姣斿榪涜鍘嗗彶璁板綍緇熻銆佸垎鏋愩侀嫻嬬瓑銆?/span>ESFramework緇欏嚭浜嗛粯璁ゅ疄鐜?/span>TcpPoolScheduler銆?/span>

    鍦ㄧ粍浠惰仈緋誨浘涓繕鏈変竴涓狪PoolEndPointsDisplayer緇勪歡錛屽畠鐢ㄤ簬鍦?/span>UI涓婃樉紺烘瘡涓姛鑳芥湇鍔″櫒鐨勮緇嗕俊鎭拰鎬ц兘鏁版嵁銆?br>

1     public interface IPoolEndPointsDisplayer
2     {
3         void RegisterFs(int serverID ,string serverName ,IPEndPoint ipe ,int exceptCount) ;
4         void UnRegisterFs(int serverID) ;
5         void SetFsState(int serverID ,bool activated) ;        
6         void SetActiveCount(int serverID ,int activeCount) ;
7         void UpdateFsPerformance(int serverID ,float cpuUsage ,float memUsage) ;
8         void Clear() ;
9     }

    
   
FS綆$悊鍣ㄧ鐞嗚繛鎺ヤ笂鏈?/span>AS鐨勬瘡涓姛鑳芥湇鍔″櫒錛岃繖灝嗗湪鍚庢枃涓鍒般?br>    闄や簡ITcpPool鎺ュ彛錛岃繛鎺ユ睜綆$悊鍣ㄨ繕瀹炵幇浜?/span>ITcpPoolsManager鎺ュ彛錛?/p>

 1     public interface ITcpPoolsManager :ITcpPool
 2     {
 3         string              TcpPoolSchedulerTypeString{set ;} //"ESFramework.Network.TcpPool.TcpPoolScheduler ,ESFramework"
 4         ArrayList         PoolEndPointList{set ;} //榪炴帴姹犵殑鏈嶅姟绔疨oolEndPointInfo鍒楄〃        
 5         int                  ReconnectSpan{get ;set ;} // 鍒嗛挓         
 6         
 7         void              Initialize() ;    //鍒濇寤虹珛榪炴帴姹?/span>
 8         void              Dispose() ; //榪樺師鍒版病鏈夊垵濮嬪寲鐨勭姸鎬?/span>
 9         void              AddPool(PoolEndPointInfo info) ;
10         void              RemovePool(int serverID) ;
11         
12         void              DisposePoolConnections(int serverID) ;//緙栧彿涓簊erverID鐨勬湇鍔″櫒宸插仠姝紝鎵浠ラ噴鏀懼搴旂殑Pool錛屼絾鏄笉鍒犻櫎姹狅紝浠嶇劧瀹氭椂閲嶈繛
13         void              ReconnectPool(int serverID) ; //鏇懼仠姝㈢殑鏈嶅姟鍣ㄥ凡鍚姩瀹屾瘯錛屾墍浠ュ彲浠ラ噸榪炰簡
14 
15         /// <summary>
16         /// 鍙洿鎺ヤ嬌鐢?nbsp;ESFramework.Network.TcpPool.PoolEndPointsDisplayer
17         /// </summary>
18         IPoolEndPointsDisplayer PoolEndPointsDisplayer{set ;}        
19 
20         //鐢盜TcpPoolScheduler浣跨敤
21         void SetPerformance(int serverID ,float cpuUsage ,float memUsage) ;    
22         ITcpPoolHelper    TcpPoolHelper{set ;} //鍙敱ESFramework.Architecture.LBS.FourTier.FsManager鎻愪緵
23     }    

    AddPool鏂規硶鍜?/span>RemovePool鏂規硶琛ㄦ槑鍙互鍔ㄦ佺殑娣誨姞/縐婚櫎Tcp榪炴帴姹犮傛敞鎰忔帴鍙d腑鐨?/span>SetPerformance鏂規硶錛岃繖涓柟娉曞皢琚?/span>FS綆$悊鍣ㄨ皟鐢紝鐢ㄤ簬鎶婁粠Remoting鎺ユ敹鍒扮殑FS鐨勬ц兘鏁版嵁閫氱煡緇?/span>ITcpPoolsManager錛岀劧鍚?/span>ITcpPoolsManager鍐嶆妸榪欎簺鏁版嵁鎻愪氦緇?/span>ITcpPoolScheduler璁板綍錛屽綋闇瑕佽繘琛岃皟搴︾殑鏃跺欙紝ITcpPoolScheduler浠庤繖浜涜褰曚腑榪涜鍒嗘瀽璁$畻騫舵壘鍒拌礋杞芥渶灝忕殑FS銆?/span>TcpPoolSchedulerTypeString灞炴х敤浜庡悜榪炴帴姹犵鐞嗗櫒鎻愪緵璋冨害鑰呯殑瀹為檯綾誨瀷錛岀鐞嗗櫒灝嗕細閫氳繃鍙嶅皠鍒涘緩璋冨害鑰呯殑瀹炰緥銆?/span>

榪樻湁涓涓渶瑕佽緗殑灞炴?/span>ITcpPoolHelper錛?br>

1     public interface ITcpPoolHelper
2     {
3         bool ContainsService(int serverID ,int serviceKey) ;
4         bool ServerIsTheType(int serverID ,int destType) ;
5         bool ServerIsCompatible(int serverID ,int destType ,int serviceKey) ;
6         string GetServerNameByID(int serverID) ;
7     }

    鐢變簬榪欎釜鎺ュ彛鎻愪緵浜嗘瘡涓姛鑳芥湇鍔″櫒璇︾粏淇℃伅錛屾墍浠ヨ繖涓帴鍙g殑瀹炵幇鍙互鐩存帴鐢卞墠闈㈡彁鍒扮殑FS綆$悊鍣ㄩ『甯﹀疄鐜般?/span>

    ITcpPoolsManager
鏄竴涓瘮杈冨鏉傜殑緇勪歡錛屽畠闇瑕佹秹鍙婂埌澶氫釜緇勪歡鐨勫崗浣溿傛墍浠ュ鏋滅湅瀹岃繖綃囨枃绔狅紝浠嶇劧榪樻湁浜涗笉娓呮鐨勫湴鏂癸紝鏄緢姝e父鐨勩傚湪鍚庨潰緋誨垪鏂囩珷鐨勭戶緇榪頒腑錛岃繖浜涗笉娓呮櫚鐨勫湴鏂逛細鎱㈡參鎷ㄥ紑榪烽浘銆?br>
鎰熻阿鍏蟲敞銆?br>



璋枃鏀?/a> 2007-04-14 22:35 鍙戣〃璇勮
]]>
ESFramework浠嬬粛涔嬶紙10錛夛紞錛?Tcp榪炴帴姹?/title><link>http://www.shnenglu.com/twzheng/articles/21895.html</link><dc:creator>璋枃鏀?/dc:creator><author>璋枃鏀?/author><pubDate>Sat, 14 Apr 2007 14:17:00 GMT</pubDate><guid>http://www.shnenglu.com/twzheng/articles/21895.html</guid><wfw:comment>http://www.shnenglu.com/twzheng/comments/21895.html</wfw:comment><comments>http://www.shnenglu.com/twzheng/articles/21895.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/twzheng/comments/commentRss/21895.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/twzheng/services/trackbacks/21895.html</trackback:ping><description><![CDATA[[婧怾 <a >http://zhuweisky.cnblogs.com/archive/2006/03/16/351301.html</a><br><br>鍑℃槸甯︽湁“姹?#8221;鐨勶紝姣斿鏁版嵁搴撹繛鎺ユ睜銆佸璞℃睜銆佺紦鍐插尯姹狅紙鍚庨潰鍙互鐪嬪埌<span lang=EN-US>IBuffPool</span><span>錛夌瓑絳夛紝閮芥槸涓轟簡閬垮厤璧勬簮鐨勫弽澶嶅垱寤?/span><span lang=EN-US>/</span><span>閿姣佹墍甯︽潵鐨勫紑閿銆傞渶瑕佷負鍝簺璧勬簮瀵硅薄寤虹珛“姹?#8221;浜嗭紵榪欎簺璧勬簮瀵硅薄閫氬父絎﹀悎涓嬮潰鍑犱釜鐗規э細<br></span><span lang=EN-US><span>錛?錛?/span><span>鍦ㄥ簲鐢ㄤ腑闇瑕佸弽澶嶇殑琚垱寤?/span><span lang=EN-US>/</span><span>閿姣併?br></span><span lang=EN-US><span>錛?錛?/span><span>鍒涘緩</span><span lang=EN-US>/</span><span>閿姣佺殑寮閿姣旇緝澶?br></span><span lang=EN-US><span>錛?錛?/span><span>搴旂敤涓粰瀹氭椂鍒伙紝瀵硅璧勬簮瀵硅薄鐨勬暟閲忚姹傛瘮杈冨ぇ<br></span><span lang=EN-US><span>錛?錛?/span><span>璧勬簮瀵硅薄鏈濂芥槸鏃犵姸鎬佺殑錛?/span><span lang=EN-US>Stateless</span><span>錛夛紝榪欐牱鏂逛究鐩存帴澶嶇敤<br></span><span lang=EN-US><span><br>    </span>AS錛?a ><font color=#1d58d1>鍥為【</font></a>錛?/span><span>灝嗘墍鏈夌殑鍔熻兘鏈嶅姟璇鋒眰杞彂緇欎負璇?/span><span lang=EN-US>AS</span><span>鎻愪緵鏈嶅姟鐨?/span><span lang=EN-US>FS</span><span>緹や腑鐨勪竴涓紙鍙傝銆傘傘傦級錛岀劧鍚?/span><span lang=EN-US>FS</span><span>灝嗚姹備氦緇欏搴旂殑鍔熻兘鎻掍歡澶勭悊銆傞偅涔?/span><span lang=EN-US>AS</span><span>鍜?/span><span lang=EN-US>FS</span><span>涔嬮棿鐨勯氫俊閫氳繃浠涔堟柟寮忚繘琛屼簡錛熷彲閫夌殑鏂瑰紡鏈?/span><span lang=EN-US>.netRemoting</span><span>銆?/span><span lang=EN-US>WebService</span><span>銆?/span><span lang=EN-US>Tcp/Udp</span><span>絳夈傚熀浜庢晥鐜囧拰鍑嗙‘鎬х殑鑰冭檻錛?/span><span lang=EN-US>WebService</span><span>鍜?/span><span lang=EN-US>Udp</span><span>鏄笉澶у悎閫傜殑銆傞偅涔?/span><span lang=EN-US>TCP</span><span>鍜?/span><span lang=EN-US>.netRemoting</span><span>錛屽埌搴曢夌敤鍝釜錛熸垜浠煡閬?/span><span lang=EN-US>.netRemoting</span><span>搴曞眰涔熸槸鍩轟簬</span><span lang=EN-US>Tcp</span><span>鎴?/span><span lang=EN-US>Http</span><span>鍗忚鐨勶紝涓轟簡鍋氬埌妯℃嫙鏈湴鏂規硶璋冪敤鐨勬柟寮忥紝</span><span lang=EN-US>.NETRemoting</span><span>涔熷仛浜嗗緢澶氳漿鎹㈢殑鎿嶄綔錛堝爢鏍堝撫銆婏紳銆嬫秷鎭級錛屽鑷翠簡涓浜涘紑閿錛岃岀洿鎺ヤ嬌鐢?/span><span lang=EN-US>Tcp</span><span>鍒欏彲浠ラ伩鍏嶏紝鑰屼笖</span><span lang=EN-US>AS</span><span>鍜?/span><span lang=EN-US>FS</span><span>涔嬮棿鐨勬秷鎭殑鏍煎紡鏄吋瀹圭殑錛堜富瑕佹槸浣跨敤浜嗗畬鍏ㄧ浉鍚岀殑娑堟伅澶達紝榪欏氨澶熶簡錛夛紝涔熷氨鏄涓鏉℃秷鎭粠瀹㈡埛绔彂鍑猴紝鍙互涓嶉渶鍋氫換浣曡漿鎹㈠氨鐩存帴琚?/span><span lang=EN-US>FS</span><span>鐨勫姛鑳芥彃浠跺鐞嗭紙鍔犲瘑銆佸帇緙╀笉璁″湪鍐咃級銆?br></span><span lang=EN-US><span><br>    </span><span>濡備綘鎵鎯籌紝</span><span lang=EN-US>ESFramework</span><span>鎺ㄨ崘鐨勬柟寮忔槸</span><span lang=EN-US>AS</span><span>鍜?/span><span lang=EN-US>FS</span><span>鐩存帴閫氳繃浣庡眰鐨?/span><span lang=EN-US>Tcp</span><span>榪涜閫氫俊銆備負浜嗛伩鍏?/span><span lang=EN-US>Tcp</span><span>榪炴帴涓嶆柇寤虹珛銆侀攢姣佹墍甯︽潵鐨勫紑閿錛?/span><span lang=EN-US>AS</span><span>鍜?/span><span lang=EN-US>FS</span><span>閫氫俊鍓嶏紝鍙互寤虹珛</span><span lang=EN-US>Tcp</span><span>榪炴帴姹犮傛湰鏂囧氨鍏蟲敞</span><span lang=EN-US>Tcp</span><span>榪炴帴姹犵殑鍘熺悊鍜屽疄鐜般?br></span><span lang=EN-US><span><br>    </span>Tcp</span><span>榪炴帴姹犱腑瀛樻斁鐨勬槸</span><span lang=EN-US>Tcp</span><span>榪炴帴鈥曗曞嵆</span><span lang=EN-US>NetworkStream</span><span>瀵硅薄錛屽綋搴旂敤闇瑕佷嬌鐢ㄦ椂錛屽氨浠?/span><span lang=EN-US>Tcp</span><span>榪炴帴姹犱腑縐熷?#8220;</span><span lang=EN-US>Rent</span><span>”涓鏉¤繛鎺ワ紝鐢ㄥ畬鍚庡啀褰掕繕“</span><span lang=EN-US>GiveBack</span><span>”緇欒繛鎺ユ睜銆? <div><span>public</span><span> </span><span>class</span><span> TcpStreamPool :ITcpStreamPool ,ITcpPool</span></div> <p></span><span lang=EN-US><span>    浠庝笂闈㈢殑瀹氫箟</span><span>鍙互鐪嬪埌</span><span lang=EN-US>TcpStreamPool</span><span>浠庝袱涓帴鍙g戶鎵匡細</span><span lang=EN-US>ITcpPool</span><span>鍜?/span><span lang=EN-US>ITcpStreamPool</span><span>銆傚厛鐪嬬湅</span><span lang=EN-US>ITcpStreamPool</span><span>鐨勫畾涔夛細</p> <div><span> 1</span>     <span>///</span><span> </span><span><summary></span><span><br></span><span> 2</span> <span>    </span><span>///</span><span> ITCPStreamPool tcp榪炴帴姹犵敤浜庣鐞嗗ぇ閲忕殑TCP榪炴帴<br></span><span> 3</span> <span>    </span><span>///</span><span>  浣滆咃細鏈變紵 sky.zhuwei@163.com  <br></span><span> 4</span> <span>    </span><span>///</span><span> sky 2005.02.24<br></span><span> 5</span> <span>    </span><span>///</span><span> </span><span></summary></span><span><br></span><span> 6</span> <span>    </span><span>public</span><span> </span><span>interface</span><span> ITcpStreamPool <br></span><span> 7</span> <span>    {        <br></span><span> 8</span> <span>        </span><span>int</span><span>         ServerID {</span><span>get</span><span> ;</span><span>set</span><span> ;}<br></span><span> 9</span> <span>        </span><span>int</span><span>            StreamCount           {</span><span>get</span><span> ;</span><span>set</span><span> ;} </span><span>//</span><span>鏈熸湜榪炴帴鎬繪暟</span><span><br></span><span>10</span> <span>        </span><span>int</span><span>            ActiveConnectionCount {</span><span>get</span><span> ;} </span><span>//</span><span>瀹為檯鍙敤鐨勮繛鎺ユ暟        </span><span><br></span><span>11</span> <span>        IPEndPoint  FsIpe       {</span><span>get</span><span> ;</span><span>set</span><span> ;} </span><span>//</span><span>鍔熻兘鏈嶅姟鍣ㄧ殑IPE</span><span><br></span><span>12</span> <span>        </span><span>int</span><span>         ReconnectSpan{</span><span>get</span><span> ;</span><span>set</span><span> ;} </span><span>//</span><span> 鍒嗛挓     </span><span><br></span><span>13</span> <span>        </span><span>bool</span><span>        IsActive{</span><span>get</span><span>;}<br></span><span>14</span> <span><br></span><span>15</span> <span>        </span><span>void</span><span> ReConnect() ; </span><span>//</span><span>鎵嬪姩閲嶈繛</span><span><br></span><span>16</span> <span>        </span><span>void</span><span> Initialize() ;        <br></span><span>17</span> <span>        </span><span>void</span><span> DisposeConnections() ; </span><span>//</span><span>閲婃斁姹犱腑鎵鏈夎繛鎺ワ紝鍙互閫氳繃ReConnect鏉ラ噸鏂板緩绔嬭繛鎺?nbsp;       </span><span><br></span><span>18</span> <span>        </span><span>void</span><span> SetStreamDamaged(</span><span>int</span><span> streamHashCode) ;            <br></span><span>19</span> <span><br></span><span>20</span> <span>        NetworkStream RentTcpStream() ;    <br></span><span>21</span> <span>        </span><span>void</span><span> GiveBackTcpStream(</span><span>int</span><span> streamHashCode) ;</span><span>//</span><span>灝唗cp榪炴帴瑙勮繕緇欒繛鎺ユ睜</span><span><br></span><span>22</span> <span>    }    </span></div> <p></span><span lang=EN-US>    AS</span><span>鍜屾瘡涓?/span><span lang=EN-US>FS</span><span>涔嬮棿閮芥湁涓涓繛鎺ユ睜錛屾瘡涓姛鑳芥湇鍔″櫒鐨勫尯鍒嗘槸閫氳繃</span><span lang=EN-US>ServerID</span><span>鏉ョ殑錛屾墍浠ヨ繛鎺ユ睜涔熸湁涓涓?/span><span lang=EN-US>ServerID</span><span>灞炴ф爣蹇椾簡鏈繛鎺ユ睜鏄笌鍝釜</span><span lang=EN-US>FS</span><span>鐩歌繛鐨勩?/span><span lang=EN-US>ReconnectSpan</span><span>灞炴ц〃鏄庤繛鎺ユ睜瑕佹敮鎸侀噸榪炴満鍒訛紝鍗沖綋榪炴帴姹犱腑鐨勬墍鏈夎繛鎺ラ兘鏂紑鍚庯紙鍙兘鏄?/span><span lang=EN-US>FS</span><span>鎺夌嚎寮曡搗鐨勶級錛岃繛鎺ユ睜搴旇兘瀹氭椂閲嶈繛</span><span lang=EN-US>FS</span><span>錛岀洿鑷寵姹犱腑鐨勬墍鏈夎繛鎺ラ噸鏂板緩绔嬨?br></span><span lang=EN-US><span>    濡傛灉搴旂敤浠庤繛鎺ユ睜</span><span lang=EN-US>Rent</span><span>浜嗕竴鏉¤繛鎺ワ紝鐒跺悗鍦ㄤ嬌鐢ㄧ殑榪囩▼涓榪炴帴鏂紑浜嗭紝鍒欏簲鐢ㄥ簲璇ヨ皟鐢ㄨ繛鎺ユ睜鐨?/span><span lang=EN-US>SetStreamDamaged</span><span>鏂規硶閫氱煡榪炴帴姹犺榪炴帴宸蹭笉鍙敤銆?/span><span lang=EN-US>RentTcpStream</span><span>鏂規硶鍜?/span><span lang=EN-US>GiveBackTcpStream</span><span>鏂規硶鏄垜浠渶甯哥敤鐨勭鍊?/span><span lang=EN-US>/</span><span>褰掕繕榪炴帴鐨勬柟娉曚簡銆?br></span><span lang=EN-US><span>    </span><span>娉ㄦ剰錛屽緢澶氭柟娉曠殑鍙傛暟涓湁</span><span lang=EN-US>streamHashCode</span><span>鍙傛暟錛屽畠鏄?/span><span lang=EN-US>NetworkStream</span><span>瀵硅薄鐨?/span><span lang=EN-US>Hashcode</span><span>錛岀郴緇熶腑鐨勬瘡涓?/span><span lang=EN-US>NetworkStream</span><span>瀵硅薄鐨?/span><span lang=EN-US>HashCode</span><span>鏄笉鍚岀殑錛屽茍涓旓紝瀹冪殑</span><span lang=EN-US>HashCode</span><span>鍦?/span><span lang=EN-US>NetworkStream</span><span>瀵硅薄鐨勬暣涓敓鍛芥湡闂翠笉鍙橈紝鎵浠ュ彲浠ヤ嬌鐢?/span><span lang=EN-US>HashCode</span><span>鍞竴鏍囧織姣忎釜榪炴帴銆?/span></p> <p><span lang=EN-US><span>    </span><span>浼間箮錛?/span><span lang=EN-US>ITcpStreamPool</span><span>鎺ュ彛宸茬粡鍙嶆槧浜嗕竴涓繛鎺ユ睜鐨勬墍鏈変笢瑗匡紝鏄殑銆傞偅涔?/span><span lang=EN-US>ITcpPool</span><span>鎺ュ彛鍙堣搗浠涔堜綔鐢ㄤ簡錛熺幇鐪嬬湅</span><span lang=EN-US>ITcpPool</span><span>鐨勬牱瀛愶細<br></p> <div><span> 1</span> <span>///</span><span> </span><span><summary></span><span><br></span><span> 2</span> <span>    </span><span>///</span><span> ITcpPool 鐢ㄤ簬灝嗕竴涓猅CP榪炴帴姹犲拰涓緇凾CP榪炴帴姹犵粺涓璧鋒潵銆傝繖鏍鋒秷鎭垎媧懼櫒鍙渶浣跨敤ITcpPool鎺ュ彛鍗沖彲銆?br></span><span> 3</span> <span>    </span><span>///</span><span> zhuweisky <br></span><span> 4</span> <span>    </span><span>///</span><span> </span><span></summary></span><span><br></span><span> 5</span> <span>    </span><span>public</span><span> </span><span>interface</span><span> ITcpPool<br></span><span> 6</span> <span>    {<br></span><span> 7</span> <span>        RentStreamResult RentTcpStream(</span><span>int</span><span> poolTypeKey ,</span><span>int</span><span> serviceKey ,</span><span>out</span><span> NetworkStream stream ,</span><span>out</span><span> </span><span>int</span><span> serverID) ;</span><span>//</span><span>poolTypeKey琛ㄧず鏌愪釜鍩庡競錛宻erviceKey琛ㄧず鏌愰」鏈嶅姟</span><span><br></span><span> 8</span> <span>        </span><span>void</span><span> GiveBackTcpStream(</span><span>int</span><span> streamHashCode ,</span><span>int</span><span> serverID) ;</span><span>//</span><span>灝唗cp榪炴帴瑙勮繕緇欒繛鎺ユ睜</span><span><br></span><span> 9</span> <span>        </span><span>void</span><span> SetStreamDamaged(</span><span>int</span><span> streamHashCode ,</span><span>int</span><span> serverID) ;</span><span>//</span><span>poolKey濡傛灉涓嶆槗淇濆瓨錛屽垯姝ゅ綆鍗曠殑浼?1鍗沖彲    </span><span><br></span><span>10</span> <span><br></span><span>11</span> <span>        </span><span>event</span><span> CallBackCountChanged     ActiveConnectionCountChanged ;     <br></span><span>12</span> <span>        </span><span>event</span><span> CallBackPoolStateChanged PoolStateChanged ;        <br></span><span>13</span> <span>    }<br></span><span>14</span> <span><br></span><span>15</span> <span>    </span><span>public</span><span> </span><span>delegate</span><span> </span><span>void</span><span> CallBackCountChanged(</span><span>int</span><span> serverID ,</span><span>int</span><span> activeConnCount) ;<br></span><span>16</span> <span>    </span><span>public</span><span> </span><span>delegate</span><span> </span><span>void</span><span> CallBackPoolStateChanged(</span><span>int</span><span> serverID ,</span><span>bool</span><span> disconnected) ;<br></span><span>17</span> <span><br></span><span>18</span> <span>    </span><span>public</span><span> </span><span>enum</span><span> RentStreamResult<br></span><span>19</span> <span>    {<br></span><span>20</span> <span>        Succeed ,Busy ,TheServiceNotExist<br></span><span>21</span> <span>    }</span></div> <p></span><span lang=EN-US><span>    浣犲彲鑳藉凡緇忓彂鐜幫紝</span><span lang=EN-US>ITcpPool</span><span>涓殑鎵鏈夊厓绱犲湪</span><span lang=EN-US>ITcpStreamPool</span><span>鎺ュ彛涓兘鍙互鎵懼埌瀵瑰簲鐗╋紝鍙槸鏈変簺鏂規硶鐨勫弬鏁板彉澶嶆潅浜嗐傝繖涓昏鏄洜涓?span lang=EN-US>ITcpStreamPool</span><span>鎺ュ彛閽堝鐨勬槸涓涓狥S錛岃?span lang=EN-US>ITcpPool鍙兘鏄拡瀵逛竴涓狥S涔熷彲鑳芥槸涓緇凢S銆傚綋<span lang=EN-US>ITcpPool鑳屽悗鏄竴緇凢S鏃訛紝灝?/span>闇瑕佸弬鏁癝erverID鏉ュ尯鍒嗘瘡涓涓狥S銆?/span><span>鎴戜滑鐭ラ亾錛?/span><span lang=EN-US>AS</span><span>鍜屽搴旂殑姣忎釜</span><span lang=EN-US>FS</span><span>涔嬮棿閮戒嬌鐢ㄤ竴涓?/span><span lang=EN-US>Tcp</span><span>榪炴帴姹犻氫俊錛?br><img height=229 hspace=5 src="http://zhuweisky.cnblogs.com/images/cnblogs_com/zhuweisky/Tcppool.JPG" width=372 align=baseline></span></span></span> </p> <p><span lang=EN-US><span>    </span><span>鎵鏈夌殑榪欎簺榪炴帴姹犻渶瑕佽綆$悊璧鋒潵錛?/span><span lang=EN-US>ESFramework</span><span>涓殑</span><span lang=EN-US>ITcpPoolsManager</span><span>錛?/span><span>榪炴帴姹犵鐞嗗櫒錛夌粍浠跺疄鐜頒簡瀵瑰涓?/span><span lang=EN-US>Tcp</span><span>榪炴帴姹犵殑綆$悊銆備負浜嗘妸榪炴帴姹犵鐞嗗櫒鍜屽崟涓繛鎺ユ睜緇熶竴璧鋒潵錛屼嬌瀹冧滑鏈夌浉鍚岀殑澶栭儴鎺ュ彛錛屾墍浠ュ紩鍏ヤ簡</span><span lang=EN-US>ITcpPool</span><span>鎺ュ彛銆?br>    榪欐牱鍋氱殑濂藉鏄紝鍦ㄥ簲鐢ㄤ腑鐩存帴浣跨敤</span><span lang=EN-US>ITcpPool</span><span>鎺ュ彛灝卞彲浠ヤ簡錛岃屼笉鐢ㄥ叧蹇冭繖涓帴鍙h儗鍚庢槸涓涓?#8220;鍗曚釜榪炴帴姹?#8221;錛堝搴斿崟涓?/span><span lang=EN-US>FS</span><span>錛夎繕鏄敱榪炴帴姹犵鐞嗗櫒綆$悊鐨?#8220;涓緇勮繛鎺ユ睜”錛堝搴斿涓?/span><span lang=EN-US>FS</span><span>錛夈傝屼笖</span><span lang=EN-US>ITcpPoolsManager</span><span>涓烘垜浠殑搴旂敤榪涜浜嗗緢澶氬鏉傜殑綆$悊錛屾瘮濡傚姩鑳芥湇鍔″櫒鐨勮皟搴︼紙瀹炵幇</span><span lang=EN-US>FS</span><span>鐨勮礋杞藉潎琛★級銆佽繛鎺ユ睜鐨勫姩鎬佹坊鍔?/span><span lang=EN-US>/</span><span>縐婚櫎絳夈傝繖浜涘皢鍦ㄤ笅鏂囦腑浠嬬粛銆?br><br>鎰熻阿鍏蟲敞銆?br></span></p> </span></span></span></span></span></span></span></span></span></span></span> <img src ="http://www.shnenglu.com/twzheng/aggbug/21895.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/twzheng/" target="_blank">璋枃鏀?/a> 2007-04-14 22:17 <a href="http://www.shnenglu.com/twzheng/articles/21895.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.qdpin.cn" target="_blank">成人a毛片久久免费播放</a>| <a href="http://www.wooblog.cn" target="_blank">香蕉久久久久久狠狠色</a>| <a href="http://www.jshzyj.cn" target="_blank">97久久精品无码一区二区天美</a>| <a href="http://www.jjzrhg.cn" target="_blank">欧美丰满熟妇BBB久久久</a>| <a href="http://www.wxbdd.cn" target="_blank">99久久人妻无码精品系列 </a>| <a href="http://www.mianfeiwg.cn" target="_blank">久久国产精品免费一区二区三区</a>| <a href="http://www.9978217.cn" target="_blank">国产三级观看久久</a>| <a href="http://www.twhx.org.cn" target="_blank">97精品国产97久久久久久免费</a>| <a href="http://www.yundali.cn" target="_blank">好久久免费视频高清</a>| <a href="http://www.rootwiremesh.cn" target="_blank">日日狠狠久久偷偷色综合免费</a>| <a href="http://www.ybyibao.cn" target="_blank">亚洲va久久久噜噜噜久久男同</a>| <a href="http://www.ytcp.com.cn" target="_blank">久久精品国产亚洲沈樵</a>| <a href="http://www.jacctv.cn" target="_blank">99久久无色码中文字幕人妻</a>| <a href="http://www.dmbetter.cn" target="_blank">久久亚洲欧美日本精品</a>| <a href="http://www.sj-gd.cn" target="_blank">亚洲国产精品高清久久久</a>| <a href="http://www.greendaily.cn" target="_blank">精品久久国产一区二区三区香蕉 </a>| <a href="http://www.chuangwote.com.cn" target="_blank">久久99精品久久久久久动态图</a>| <a href="http://www.znljs.cn" target="_blank">国产一区二区精品久久凹凸</a>| <a href="http://www.ilxq.cn" target="_blank">久久亚洲AV成人出白浆无码国产 </a>| <a href="http://www.le-q.cn" target="_blank">狠狠色丁香久久综合五月</a>| <a href="http://www.chcbszxw.cn" target="_blank">午夜精品久久久久</a>| <a href="http://www.u33w.cn" target="_blank">四虎久久影院</a>| <a href="http://www.sooppp.cn" target="_blank">久久久久国色AV免费观看</a>| <a href="http://www.renshushu.cn" target="_blank">狠狠色婷婷综合天天久久丁香</a>| <a href="http://www.qshuai.cn" target="_blank">97视频久久久</a>| <a href="http://www.lidonsj.cn" target="_blank">亚洲AⅤ优女AV综合久久久</a>| <a href="http://www.msomso.cn" target="_blank">国产日韩久久免费影院</a>| <a href="http://www.dpww.net.cn" target="_blank">一本色道久久88加勒比—综合</a>| <a href="http://www.gp402.cn" target="_blank">婷婷久久久亚洲欧洲日产国码AV</a>| <a href="http://www.yunqichaoyang.cn" target="_blank">久久亚洲精品无码播放</a>| <a href="http://www.68zyw.cn" target="_blank">精品久久人人做人人爽综合</a>| <a href="http://www.jiqirenedu.cn" target="_blank">国产精品18久久久久久vr </a>| <a href="http://www.taoxh.cn" target="_blank">久久久久国色AV免费观看</a>| <a href="http://www.fu-shing.cn" target="_blank">亚洲精品国产第一综合99久久</a>| <a href="http://www.aion999.cn" target="_blank">污污内射久久一区二区欧美日韩 </a>| <a href="http://www.ehfad.cn" target="_blank">久久久国产精品亚洲一区</a>| <a href="http://www.xa-dwyer.cn" target="_blank">yy6080久久</a>| <a href="http://www.tyan56.cn" target="_blank">久久99久国产麻精品66</a>| <a href="http://www.mofeigzs.cn" target="_blank">久久免费看黄a级毛片</a>| <a href="http://www.f1-zone.cn" target="_blank">伊人精品久久久久7777</a>| <a href="http://www.gxsc.net.cn" target="_blank">伊人色综合久久天天人守人婷</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>