青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

chaogu ---大寫的人!

 小弟許久未上,上來發個招聘信息,如果有興趣可以郵件份簡歷給我 chaogu.c@qq.com,如果沒有興趣直接忽視。
工作地:深圳(富士康隔壁的一家超級大型的IT公司,由于有要求,不能發公司名稱,不過深圳的同城應該能猜到,私聊能提供公司名稱)
部門:流程與IT管理部(大部分做內部IT系統)下的IT平臺部下的SOA服務部
技術要求:Java、數據庫、Web開發等相關的,.Net的也可以,需求工程師等也要,主要做系統架構等,先發簡歷,再私聊亦可
硬性指標:本科5年以上(含)工作經驗,碩士4年以上工作經驗,英語4級以上,211重點大學,無中興工作經歷(這個太明顯了,有競爭,所以不讓招)
工資:好像保密,這個要看能力,大概年薪有個20W
如果身邊有想跳槽的也可以幫忙轉發一下
一年內有效~~~

管理員看看要是不能發招聘信息不要刪我號啊,把文章刪掉就好了。
posted @ 2012-02-06 19:03 chaogu 閱讀(2629) | 評論 (4)編輯 收藏
    大四之后我一直很煩,很多很讓人提不起精神的事情要我去面對。最近一直想把這段經歷寫出來,算是發泄心中的郁結,也分享一下個人的經歷,因為我覺得技術上我也沒什么好跟人討論的,反而我覺得有些經歷可以拿出來分享一下。
    從去年(2010)的8月份我才開始準備考研,因為5月-7月期間一直在駕校練車,每天都很累,主要不是練車累而是學校的駕校爛,每天都一大堆人,一上午或一下午也就練個三四把,其余的時間都是在等,而且每天早出晚歸,甚是摧殘人,所以一直沒有開始復習考研。不過駕校這么做也無可厚非,畢竟要賺錢,我們學生交得又少(可能有很大一部分還要孝敬學校)。然后在7月中的時候就把駕校考完了,然后回了趟家。其實我在(2010年)3月份之前(具體我也忘了)就決心考研的。一般人會這樣認為,考研是為了逃避找工作的壓力,其實不然,我覺得考研要經受的壓力和折磨并不比找工作大,反而我覺得工作更好搞。我讀研的原因估計與大多數人考研的原因又不一樣,一部分人考研說不定還真是逃避工作,有一部分人是為了找更好的工作,有很少的一部分人是真的為了研究。我的原因是家里向我讀,他們說反正家里又不需要你養,你能讀就盡量讀,也不是要你搞研究,拿個研究生的文憑,家里比較有面子。我就是為了我們的“面子”加入了考研大軍。當然我也有自己想法---我覺得度研究生的時候能有更多的時間做自己想做的事情---可能包括一些研究吧。
    回家其實不是我想放自己大假,而是為了跟爺爺奶奶呆一下,畢竟他們老了。然后8月就趕回武漢來,開始了地獄般的考研復習。
    8月回到學校,據說武漢最熱的那段日子在我來之前剛好過完,不過武漢還是很熱。一回到學校我就跟我同學去文都上課。我是什么都沒有準備,政治、英語、數學、計算機我一門也沒有碰過,就連考什么,用什么教材、輔導書我都一無所知。然后就跑去了上輔導班。英語我是有一定把握的,我同學認為計算機輔導不輔導沒多大區別,畢竟我們也一直接觸著專業課,所以我就報了數學跟政治。
    老實說數學是我最怕的。我以前也算是個數學強人,雖然不是太強的那種,最差也是個中上的那種。上到大學以后我對數學那是深惡痛絕。大一上數學的時候每節課要不是在寢室睡覺就是在教室睡覺,作業也就應付了事,還好我跟老師的關系比較好,所以還得了蠻高分。但真的我就沒學到任何東西。還有就是概率,我們就根本沒這門課。蛋疼的數學啊········
    政治我還好,我發現上了大學之后雖然政治課我一節都沒聽,不過我發現我覺悟提升了不少,感謝黨國啊。聽了輔導班的課之后,也大概有個了解。
    英語---大學三年我就沒怎么學過,不過每天接觸著英語的專業書籍、論文、blog、論壇,我自認為我英語還是比較強悍的,但是考研的那套根本就不來你會的那套。英語還是強化不來的那種,所以我也只好硬著頭皮上。
    專業課,蛋疼的專業課啊······從0開始(考的那套跟我學的那套不是同一套
    老實說考研的四門我都是從0開始,時間緊迫啊,每天打開書都是在自學,每一門都是自學----高強度的。

--------------------------------------------------------------
--------------------------------------------------------------
    復習考研的那段時間是我最煩的一段時間,持續時間長,壓力大。其實我不是那種考不上就會怎樣的人,反而我老想著考不上我還有很多出路,就算這次考不上我還可以再考(考研大忌啊)。在這樣一個復雜的心理情況下,到后面我都不怎么上自習了,每天睡到11點,刷牙洗臉吃飯上午直到2點,然后就開始考慮要不要去上自習,所以后面基本沒什么效果。直到考研的那天數學我還沒有全部學完。反正剛考完那幾天是我最開心的時間,感覺心頭懸著的那塊重石終于落下來了。
    反正考研是一個很痛苦的過程,考研有風險,入行需謹慎。
    考完之后,過年,過年蠻開心的。也就是天天呆在家里,不出門,什么也不干,泡茶喝,收紅包。

-------------------------------------------------------------
-------------------------------------------------------------
    后來開學了,也就回到學校開始畢業設計,我們老師不知是不是變態,隨便找了個題目就讓我開始了。題目叫做《Sampling-base Contect-rich Motion Contorl》。
    一邊做一邊等考研成績出來,考完之后我也大概猜出我沒什么希望,成績如下
         政治      74
         英語      45
         數學      78
         計算機    94
好像比我預計的還好,反正沒上(考華南理工),然后就一直在找調劑的學校,因為按我推算,我的肯定能上國家線,我還很積極地去找了調劑的學校。我還去考了下公務員--廣東公務員--3月27號,我隨便應付了一下(考了100+分,比較低,反正沒戲),公務員要看命的,反正我覺得我不是那種命。考完之后,在家呆了幾天,因為國家線也就那幾天出來,我就等成績出來,好像是29/30號的時候出來的,A區的沒上,也就沒戲了。我也就不想了。4月份回到學校的時候有個研究生告訴我B區的中國科技大學的軟件工程可以去,我也就去報了一下,19號復試,反正復試很慘,十問九不知,一我沒復習,二我太高估自己了。也就沒上到。這期間我還找了下南昌大學的,托關系找了人,后來說不要我這么低分的。死心塌地去中科大面試,面試被刷。19號當天下午趕回武漢,20號面試華為。

-------------------------------------------------------------
-------------------------------------------------------------
    這學期(2011年上半年)開學之后,我感覺研究生沒戲,然后就一邊等成績一邊找工作,投過無數簡歷,有幾家找我筆試面試,有些我直接沒去。第一家面試的是廣州的一家,筆試感覺良好,當天晚上給我電話,第二天面試,也就跟BOSS談,BOSS讓我開價,我就給開了3500,他說可以。其實我覺得工資不是最重要的,對于一個應屆畢業生來說,談得很好,BOSS讓我簽,給我4000。當時研究生成績還沒下來,我不敢簽,然后找了個借口,好歹推掉了。因為他公司招不夠,我推薦了我們寢室的兩個和一個隔壁班的去面試,我們寢室的兩個簽了,3500。
    然后在去中科大面試之前又面試了一家公司,筆試時神速做了兩套試卷,我給開了4500,第二天面試,談了一個小時,漫無目的地談,后來說簽,做3D,我拖到華為面試完才拒絕掉他---說起來還有點對不起那BOSS。
    在中科大面試完,20號回來面試華為,華為真是整死人的,我9點到的,早飯就吃了一根玉米烤腸,很小一根,到2:30才吃的午飯。一面技術面,沒問什么,寫了個冒泡,問了我一個很簡單的分布式應用的問題(其實我不太懂分布式問題太簡單了),然后就說可以,5分鐘搞定。二面群面,辯論,沒什么好辯的,也就個游戲,表現不錯,三面其實就不是面試,做個心理測試,到2點多才完,完了之后吃了頓KFC犒勞自己。第二天跟BOSS聊天,BOSS也沒問什么,其他人進去都是15+分鐘,不到8分鐘我就出來了。然后就簽了,6000-IT工程師,好像是網管,不清楚。據說今年華為招很多人,我不知道,反正也有點難進,我那組10人剩2個,我跟一個研究生。
    華為簽了之后幾天,去了工商銀行的筆試,那人多得,筆試還比較簡單,英語部分不夠時間,后面瞎選,第二部分關于工行的,我一個不會,我又不是學金融的,瞎選,第三部分,行政能力測試,因為有公務員的經驗,答得比較好,時間也比公務員考試寬裕很多。
   4月29號去了趟廣州,面試工商銀行軟件開發中心,我感覺面試還不錯,只是聽到我說簽了華為,我問他薪酬,他說比華為低,就不想它了。面試完之后回家,在家時候收到工商銀行數據中心的面試通知,5月11號,懶得去,5號回到學校。
-------------------------------------------END
posted @ 2011-05-09 01:55 chaogu 閱讀(2405) | 評論 (9)編輯 收藏
     摘要: 最近有人教我寫一下日志,不需要條理,能幫助到自己,所以我就寫寫,結構很復雜,里面東西只有我能看懂。所以你不要嘗試去讀懂。  閱讀全文
posted @ 2011-05-03 21:57 chaogu 閱讀(680) | 評論 (0)編輯 收藏

  最近有人叫我編譯這個渲染引擎,據說很難編譯,我編譯無數代碼,一般別人的代碼拿來編譯都很難受,因為作者的機器跟我的機器配置上都有些不痛,可能會丟了什么庫之首先上Luxrender的官網,一般的開源項目都有個什么文檔之類的東西,一般也會教怎么去編譯代碼。找找還真有,文檔寫得太他媽精辟了,就一點點,這也符合我的風格,少說明簡單。

類的一大堆問題,有時可能是編譯器的不同,有可能有出現什么符號沒定義之類的問題。所以編譯代碼都是很難受的事情。耗時還耗精力。

閑話不扯了之間正題。

Luxrender 官網:http://www.luxrender.net/en_GB/index

編譯的文檔:http://www.luxrender.net/wiki/index.php?title=Building_on_Windows

據說我的機器還是WindowsXP所以找Windows下的文檔。

然后按它說的方法去干。

1.下載TortoiseHG

2.安裝好后在某個盤里面新建個文件夾,這誰都會。我的文件夾名就叫Luxrender

3.然后選中那個文件夾<Luxrender>右擊。鼠標移動到TortoiseHG,會發現有個叫Clone…的東西,點擊

4.然后再source path(也就是源路徑)里面輸入http://src.luxrender.net/lux/

5.在destination(也就是目標路徑)里面輸入 BASE/lux (其實BASE可要可不要,只是lux文件跟windows和luxrays要在同一級)。

6.然后點擊Clone(克隆)就可以了

7.然后就是等待

8.等待

9.再等待

10.等它完成了,然后我們還是依照3的做法,選中文件夾<Luxrender>移動到TortoiseHG,然后Clone…

11.在source path (源路徑)里面輸入 http://src.luxrender.net/windows/

12.在destination (目標路徑)里面輸入BASE/windows (保證windows文件夾跟lux同級就可以了)

13.點擊Clone之后等吧

14.完成后再按照3的做法選中文件夾<Luxrender>右擊移動到TortoiseHG上然后Clone

15.在source path 里面輸入http://src.luxrender.net/luxrays/

16.在destination 里面輸入 BASE/luxrayse (保證luxrays跟lux同級就可以了)

17.然后點擊Clone就可以開始無限的等待

18.等都完成了之后,就打開你的Visual Studio 2008的Command prompt,VC2005的你盡快裝個2008吧,VC2005難受死你。~_~

19.然后CD到你的windows文件夾。懂cd的跳過去:一般打開 Command prompt上的默認路徑是你的Visual Studio的安裝路徑。比如我的是在D盤,但是我的Luxrender在G盤所以要換盤,在黑屏上輸入 G: 。如果你的Luxrender在E盤就輸入 E: 。如此類推。然后就是 cd G:\luxrender\BASE\windows\ 我的是這樣,如果你的luxrender文件夾是在E盤里面的SRC文件夾中就輸入 cd E:\SRC\luxrender\BASE\windows\。

20.接著你會看到你的windows文件夾中有個叫做 getdeps.bat 的文件。在黑屏上輸入 getdeps

21.接著又是選擇什么的反正getdeps就是把所有的luxrender需要的類庫之類的都下載下來,然后解壓到一個叫做deps的文件夾里面,deps文件夾是在Luxrender\BASE\文件夾中,也就是跟你的lux、windows、luxrays同一級。

22.Get完之后就是導入注冊表,雙擊windows文件夾里面的build-vars.reg,然后確定導入就行了。其實它就是把像LUX_WINDOWS_BUILD_ROOT這樣的環境變量設置一下。當然你也可以自己一個一個設置。

23.接下來的事情就是build你下下來的東西 (<deps\>下的東西build一下,比如boost)。在你的Command prompt 里面輸入build-deps-x86.bat。(慚愧我還是用32位的WindowsXP)。你不要嘗試使用cmd.exe去build,難受的是你。

24.在無盡的等待回來后,你覺得差不多了,但是厄運才剛剛開始……..

 

開始編譯

1.然后就是編譯,進入BASE/windows然后打開lux.sln

2.編譯肯定不會成功的,但是要一邊編譯一邊看有什么問題。

問題:

1.出現isatty()找不到

加入#include <io.h>

將isatty改成   _isatty()

2.環境變量沒設置,會有這個問題的,所以加上它提示的環境變量

3.Yacc返回錯誤,說系統找不到某個東西。要把 BASE/windows/Projects里面的那個project文件(.vcproj)用文本文件打開然后將"$(InputDir)/$(InputName)-hxx.cpp"的反斜杠(/)去掉。有幾個文件要改這個的。當你遇到了就改一下。就是這個問題。

4.moc.exe找不到,就是QT沒有編譯好。打開visual studio 2008 的Command prompt 打開,然后cd到QT的根目錄比如我的是G:\Luxrender\BASE\deps\x86\qt-everywhere-opensource-src-4.6.2輸入configure -debug-and-release -opensource -platform win32-msvc2008完成之后在輸入nmake

5.miss python31.lib

   拷貝       python31.lib

       From

               G:\Luxrender\BASE\deps\x86\Python-3.1.2\PCbuild\  

   To

          G:\Luxrender\BASE\deps\x86\Python-2.6.6\PCbuild\

6.miss libboost_python-vc90-mt-lib

      create foulder <python2> in

             G:\Luxrender\BASE\deps\x86\boost_1_43_0\stage

      copy

             libboost_python-vc90-mt-lib

             libboost_python-vc90-mt-1_43.lib

             libboost_python-vc90-mt-gd-1_43.lib

             libboost_python-vc90-mt-gd.lib

      from

             G:\Luxrender\BASE\deps\x86\boost_1_43_0\stage\python3\lib\

      to

             G:\Luxrender\BASE\deps\x86\boost_1_43_0\stage\python2\lib\

       應該來說你就可以全部編譯過去了。

posted @ 2011-05-03 21:42 chaogu 閱讀(3034) | 評論 (0)編輯 收藏

     我是屎,但我是一砣自尊的屎、自信的屎、自以為是的屎. 
  我不會搞笑,也不會煽情,可能默默無聞的腐敗,可能也招來一些厭惡,甚至唾棄.但我義無反顧,也義不容辭自戀或自傷,所以我選擇了做屎. 
  當一砣屎沒什麼大不了,也沒什麼小不然,一砣屎就是一砣屎,他不能變成一塊金子,也不能蛻變成鉆石.但他有歸屬,他是屬于馬桶的,劉德華說:"每個馬桶都是英雄",那歸屬于英雄的做砣屎又何妨.一砣屎也就是一砣屎,有可能做屎是低下的,但我有自尊我就是第一流的屎.他會腐化成泥土,但每一件物品都會腐化成泥土,無論高尚或低賤,無論偉大或渺小. 
  我奉呈: 
While there is a lower class I am in it. 
While there is a crimical elememts I am of it. 
While there is a soul in prison i am no free.

 

posted @ 2010-08-29 12:30 chaogu 閱讀(753) | 評論 (3)編輯 收藏
     摘要: 如果你認為三流學校的人沒資格在園子里發表看法,不要點開看了。
如果你認為無關技術的不應該發在首頁精華,也不要點看看了。
如果你認為發在首頁精華的都是關于”超高“技術含量的,不要點開看了。
如果你看了,然后覺得我說得不對,請你不要人身攻擊,我怕我受不了到時賴你就不好了。  閱讀全文
posted @ 2010-08-25 01:47 chaogu 閱讀(2592) | 評論 (37)編輯 收藏
     摘要: 大學英語(一)(閱讀) X 高等代數B X 高等數學A1 X 計算機導論   計算機高級語言程序設計(C)   ...  閱讀全文
posted @ 2010-08-19 06:32 chaogu 閱讀(304) | 評論 (1)編輯 收藏

關于造輪子的問題,褒貶不一,我是贊成造輪子的,很多時候我們沒有必要再去造一個已經存在的輪子,這是貶造輪子的重要的看法,我覺得沒什么不對的,如果是要立刻用到實際中去,而且時間上很趕的時候造一個輪子出來不是什么好事情。但是造輪子也有很多好處,比如能學到很多東西,可以參見vczh關于造車輪,雖然沒有將所有造車輪的好處統計起來,但是很有參考價值。當然你可以去看看國外的大學教程,他們本科生的任務大多就是造個車輪出來。比如MIT:操作系統課程就是寫個操作系統出來,數據庫課程就是寫個數據庫出來,圖形學就是寫個raytracer(光線跟蹤器)出來。當然還有很多,比如Stanford:計算機網絡就是用UDP實現TCP的功能,寫個路由協議,圖形學就是做一個軟件openGL,等等,所以造輪子(再造輪子)是很有實踐價值的,而且很多一流學校就是這么干的。很多時候如果想創造輪子的話再造輪子所獲得的經驗和能力的提高是很有價值的。

      那如果你肯定了再造輪子的好處那就多幫造輪子的人說點好話,當然也說明再造輪子的的限制,不然誤人子弟。但是如果你肯定了再造輪子的好處,你想加入再造輪子的大軍那你該怎么辦呢?

       這點其實我也在想,如果看到這篇文章而又很有欲望表達自己的看法的前輩留下你的建議。在這里我也表達一下我的看法。

建議一:書

       如果我們都想造輪子,但是苦于沒有經驗而且對輪子的構造很不熟悉,很多時候我們只好放棄這種想法。如果有一本書教你怎么去造這個輪子的話說不定你的輪子就造出來了,而且還不差。所以如果想造一個輪子,很常用的方法就是找一些相關的書籍。優點是結構完整而且描述清晰,而且還很系統(國內人寫的書大多不好,所以還是先去找找有沒有國外人寫的書,老外寫的書看得還比較爽)。缺點是大多時候書都比較理論實踐的東西少,而且對我們造輪子來說書上的那種結構不是很適合造輪子,如果是大部頭書的話還很快就把你的意志給削弱了。所以書不是萬能的,我看過一定數量的書,但是到頭來還是沒有太大的提高。

建議二:課程

       對于大多書學生來說這條是最好的。其實大多數學生都是很想學習的,苦于沒有人指導加上老師無聊,很多時候學生搞到最后都不想學了。如果你是一個學生,如果讓你去造一個輪子出來,想想那是世界上最牛的輪子(轉得最快),那是讓人激動的,學生學起來也很有勁頭。所以造輪子最好的方式是去找一些課程,而那門課程是教你怎么造輪子的,按造那個課程的方式先去造一個出來,然后再想想自己的輪子怎么造,然后你的輪子又是另一個最牛的輪子(轉得快不說,還省材料)。優點:系統化,理論實際相結合,而且很多時候那些老師已經幫你完成了一些工作,適合菜鳥級別的人物---不如說我。缺點:還沒有找到,如果非得說有缺點就是:讓你見識了一個最牛的輪子,讓你覺得你自己獨立造的輪子沒有技術含量,讓你放棄了想法。

建議三:現成系統

       我們討論的是再造輪子,所以這個輪子必然已經存在了,我們仿這個輪子去造一個不就行了。通過分析和比較,使用別人的輪子的時候想想別人底層是怎么做的,怎么設計的,意淫一番之后總結出經驗,然后造自己的輪子。而且造一個比原來更加小強(小而強大)的輪子,功能完整,耗費資源少,使用簡單-----那不就是我們想要的嗎?缺點就是可能要有些經驗。

建議四:論文

       如果你是一個骨灰級的輪子玩家這點你應該是清楚的。看論文是一件很痛苦的事情,很多時候我們的理論基礎沒有論文的作者好,或則論文作者的基礎跟你的不一樣(比如他是學物理的,而我們是學計算機的),所以看不懂論文,直接結果就是你的輪子造不出來。所以還是要很有經驗和理論基礎。

建議五:開源軟件

       開源是一個好東西,首先它是免費的,再者可以看到代碼。這點我不用說了,找到了相似的開源代碼,讀一讀,肯定有收獲。

總結或者想法:

造輪子肯定不是一件簡單的事情,沒有恒心就不要造輪子了,而且會花費一些時間。當然如果你很想造輪子而且你確定你有一定的時間(不用太多)你就去造吧。國內的開源軟件和基礎軟件不好,說不定我們這代造了一些輪子之后,國內的基礎軟件就好了。

很多時候如果你沒有頭緒,你就寫點代碼吧,古人寫字靜心,我們為什么不能寫代碼靜心呢?說不定你寫著寫著輪子的框架就出來了,再寫著寫著輪子就造好了。

雖然上面我都說了點,但是很多情況下你找不到你想要的資源,可以嘗試問一下別人,說不定他能給你很好的建議---這個建議可能就一句話。

posted @ 2010-07-02 01:03 chaogu 閱讀(2345) | 評論 (6)編輯 收藏

      第一次寫關于技術的,可能看的人不多,罵爛的也不在少數,但是還是寫一點,可能對一些人有幫助,也提高自己的寫作水平,以后可以寫出更好的東西來。當然我在blog里面會堅持寫自己做過的東西,這起碼不會誤人子弟(高手直接跳過)。

是什么?

首先吹下水,告訴你什么是代理服務器(proxy)。代理服務器Proxy),是一種特殊的網絡服務,允許客戶端通過它與另一個網絡服務進行非直接的連接具體過程為:客戶端首先與代理服務器建立連接,接著發出一個對另外的目標服務器的文件或其它資源的連接請求,代理服務器通過與目標服務器連接或從緩存中取得請求的資源,并返回給客戶端。通常在這個過程中,代理服務器可能改變客戶端請求或服務器端響應的一些內容以滿足各種代理需要。

為什么需要?

      當我們知道什么是代理服務器之后我們就會想代理服務器能干什么?總結如下:

1、提高訪問速度:代理服務器通過設置一個較大的緩沖區,當有外界的信息通過時,同時也將其保存到緩沖區中,當其他用戶再訪問相同的信息時, 則直接由緩沖區中取出信息,傳給用戶,以提高訪問速度。

2、控制對內部資源的訪問:如大學FTP,使用教育網內地址段免費代理服務器,就可以用于對教育網開放的各類FTP下載上傳,以及各類資料查詢共享等服務。暫時我還沒有找到我們學校內部的代理服務器。

3、過濾內容:例如限制對特定計算機的訪問,將一種語言的數據翻譯成另一種語言,或是防御代理服務器兩邊的攻擊性訪問。我們很多東西都被和諧掉了,不知道代理服務器是神是鬼。

4隱藏真實IP:上網者也可以通過代理服務器隱藏自己的IP,免受攻擊。當然黑客可能用這項功能來隱藏自己,讓你很難找到。

5、突破內容過濾機制,訪問個別過濾的網站。如果Google以后不能訪問的話看來我要找個代理服務器了。現在都很多優秀的網站我都訪問不了了。

怎么去做?

      當我們搞清楚是什么和為什么需要時,我們就開始想怎么去做一個出來(當然有人覺得沒什么意思,也就沒有興致考慮怎么去做了)。

      首先我們需要知道代理服務器是怎么去完成工作的。其實很簡單:

1>             獲得客戶端的請求

2>             轉發客戶端的請求

3>             獲得目標服務器的響應

4>             返回target的響應

當然剛開始我們不要去考慮太多復雜的內容,我們先要將上面的功能實現了。

接著我就來代碼了:

int main(int argc, char** argv)

{

   cout<<"Demo HTTP Proxy Server ver. 0.1.0.0"<<endl;

   cout<<"Developed by:Like Zhang"<<endl;

   RunServer();

   return 0;

}

主函數什么事情都沒有做,就是RunServer,將服務啟動。那開始看下server是怎么工作的:

文字描述(代碼太多,偽碼描述比較合適)

1> 準備服務器套接字,綁定套接字,讓套接字在一個端口上監聽

2> 然后申請N多的線程(就叫做<threadArray>),放到數組中

3> 然后就等待客戶端連接到服務器上(也就是accept),一直等……

4> 如果等到有客戶端連接,那就將accept到的套接字放到響應隊列(就叫做<socketBuffer>)中,當然由于這個隊列是一個共享資源,使用互斥體保證它的安全---先加共享鎖,然后將套接字放入隊列,然后再釋放共享鎖。

5> <threadArray>里面的線程是怎樣工作的呢?接下來介紹線程函數

文字描述線程函數:

1>             首先加共享鎖,接著看下socketBuffer有沒有東西,如果沒有東西(也就是有沒有客戶來連接服務器)釋放共享鎖接著循環,如果有東西,那就將套接字彈出(記住釋放共享鎖),用這個套接字做事情。

2>             做什么事情呢?其實很簡單,就是將客戶端的請求拿過來,然后轉發出去。

3>             轉發出去之后接收目標服務器的響應,請求完了,轉發也完了,就將套接字關掉,線程函數返回。

但是這里遇到了一些問題:怎么去找到目標服務器?怎么去接受目標服務器的響應(性能考慮)?

熟悉HTTP協議的人都是知道的,在HTTP請求中就帶有請求的URL。所以我們只要解釋一下客戶端的請求就知道了。

而接受目標服務器的響應我們使用IO復用就行了。

講解完畢!

看下代碼:windows版本的是Like Zhang實現的,版權歸他所有。這里只做交流使用,如果Like Zhang需要撤下我會撤下。

Linux版本是我實現的,沒有實現IO復用,也沒有Windows的快(Linux開50個線程直接卡住)。

http-proxy

功能是實現了,但是還是有很多的不足,我從以下幾點描述:

1>性能:測試結果表明性能不高,特別是當客戶端也是多線程實現的時候,某個意義上說這個代理服務器沒有任何的性能提高和需要的價值。所以還要優化性能,主要是:內存、線程的復用IO上做優化。

2>提供的功能:就算是性能提高了,但是沒有提供吸引人的功能時也沒有存在的意義,所以還要提供一些實質上的功能:頁面緩存、過濾信息和安全保護機制。

3>設計:如果看過代碼可能知道這個東西的代碼很差,如果要擴展這個東西設計還是很重要的,比如我們要加入更多的功能,將這些功能差分開再進行編碼會爽很多。

性能改進建議:

1>             內存:要想實現一個高效的并發的服務器程序是需要很多的努力,在內存的管理上不能忽略,還有比如緩存頁面需要大量的內存使用,如果能對內存使用上做一些努力能獲得很高的性能提升。

2>             線程池:這個很重要,在線程的管理上一點都不能馬虎,動態的線程管理是很有必要的,當連接少時要申請少量的線程,當用戶增多,為了服務的質量要動態地去增加線程。

3>             緩存頁面,前面也提到要緩存頁面,可以想想如果在一點時間段很多人要訪問Google的網站(比如50個)我們緩存了Google的頁面我們就只要下載一次。當然加入這個功能的時候要深入的去了解下HTTP協議,比如怎么去替換掉緩存的頁面,如果目標的頁面更改了,我們還是要重新下載一次的。


posted @ 2010-06-28 01:52 chaogu 閱讀(3878) | 評論 (2)編輯 收藏

   上一篇提到不在blog寫泄憤的話,好像自己沒有做到這一點,也扯太遠了,在這一篇里道個歉希望博友見諒。

   我并不是什么技術牛人,但是我想寫一些自己的經驗給各位看看,如果覺得沒什么意思,就笑笑,如果對你有幫助也笑笑------笑一笑,十年少。

   我的專業是這個的,當然少不了要編程但是編來編去不知道方向了,也不知道怎么再去提高了,這是一個很恐怖的事情,有時我就會問自己我是屬于哪個層次的,我還有什么不足,我該怎么去提高?這些對我來說都是比較實在的問題。

   我是兩年前開始學編程的,如果不算我浪費的大學第一年。大一的時候,我們是有教C++,有上機實習,當時在我看來那都是瞎扯淡,連函數都不知為何物,就拼湊一些我都不知道干什么用的代碼,然后當作作業提交上去,如果不是那該死的MFC我也不會這樣,因為我連函數變量這些基本的東西都不懂,你叫我用MFC那不如殺了我。再加上沒有人給我講MFC,我感覺代碼是一種神秘的東西。其實也不能說我不努力,其實努力了,只是沒有得到該有的回報。可能路走錯了,走錯路是一件很可怕的事情,比如你走了一個反方向的路,當然地球是圓的,你最終會到達終點,不過你錯過了好的時機,浪費了大把的時間和精力。如果走錯了方向及時改正過來還是可以的-----如果你沒有放棄的。

   是的,我沒有放棄(雖然我想過),我及時的改變的方向。從小學到高中我都想脫離老師的方向,最終我還是不敢脫離老師的方向。不過在大學我沒有想到我無意間脫離了老師的方向,算是圓了我的夢。大二開了門Java,老師不錯,然后我從Java學會了編程然后我再去學C++,很諷刺,我現在喜歡的是C++,而我的C++是從Java里面學來的。其實如果你遇到了好的老師,那個老師不需要很牛,也不需要人品很好,但是他能教會你東西,你算是撿到寶了。我就是撿到寶的人,不要臉的說一句我就是luck dog。然后我就做一些ACM的題目,這也是因為我遇到了好的朋友----他叫我去做一些ACM的題目,然后我通過做題-翻書-做題,我的水平就提上去了,最起碼我對Coding有了從來沒有的興趣。做了一些題后我感覺沒有什么代碼我是寫不出來的(現在想想很可笑)。然后我又重新玩了一點MFC,看的是《深入淺出MFC》和孫鑫的MFC視屏。然后我懂了MFC的一些底層的東西,做MFC有了點感覺。不過我很討厭MFC,畢竟是它讓我對編程失去了信心。在這段路我走了彎路,不過這個彎路是值得的,梅花香自苦寒來。

   如果停留在做ACM的題目上的話我還是不可一世的人,因為完成一個題目給你帶來的滿足感是多么讓人難以自拔的(我知道園子里很多題目達人,不要拍我)。我承認做ACM題目很鍛煉人,能時刻保持住你的思維能力,而且不斷提高能力,但是不要一直做題目,要出來透透氣,我是那種對什么都感興趣的人,當然也是缺乏耐心的人。所以玩了一些無關痛癢的東西,比如QTmingwLinux等等,當然老師沒有要求,如果跟著老師我永遠不知道外面的世界是什么樣的,幸好我看了很多這些東西,然后我對這些東西都多少了解點,自己做起事情來也知道怎么去選取不同的方案,為什么這么做。在這段時間我的操作系統的那個老師對我幫助很大,他每節課都不務正業,天天吹牛,然后在他的吹牛下我也變成一個會吹牛的人------他說了一些對我來說是新鮮的東西,然后我課下自己找到這些新鮮的東西,然后自己消化,然后就可以吹牛的,不過水平也只限于吹牛。

   很多時候人都是在浪費時間,我浪費了不少時間。然后也養成了不守時,做事情拖沓的習慣----現在在改。接著我大三的時候接觸了高級的東西----圖形學。可能對有些人甚至大多數人圖形學不是什么高級的東西,但對于我來說是高級的。因為我一直在看沒有做事情,所以水平還是""字來形容。我在這門課上學了很多東西,比如需求、測試、設計、MVC、面向對象。我寫了很多代碼,看了很多書,然后我就是現在這個水平。

   那我現在是什么水平呢?我很難判斷。對于自己都不了解是沒有辦法去找到自己的不足,也沒有辦法去提高自己的水平。所以我羅列一下自己:1C++語法還沒有學透。我給自己的定義是低級C++程序員。雖然對于常用的C++是會用的,用C++去做出大多數功能是沒有問題的。但是讓我去設計一個C++系統還是不行,簡單的可以,但是對于復雜的系統還是不行。就算設計出來了也可能設計得不好。所以這方面需要自己努力一下。2Java學得跟C++一樣。3python還處于寫demo階段。4、總的來說語言不是障礙了,但是設計和知識儲備還不夠。5、沒有處理過復雜的系統---比如一個游戲或一個3D引擎。6、沒有經驗-----很少接觸過真實的軟件開發,基本不知道要干嘛。也就是說我就不知道別人要一個什么樣的程序。

   別人說我編程很牛,是的,我可以指導低年級的實習,我可以給低年級講一些我熟悉的東西,但是很牛算不上,還是叫我低級程序員好一點,甚至是很低很低的那種。有時我還戲稱自己為:寫代碼的小男孩。

 

posted @ 2010-06-19 03:06 chaogu 閱讀(1670) | 評論 (12)編輯 收藏
僅列出標題
共2頁: 1 2 

導航

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

統計

常用鏈接

留言簿(1)

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜欧美大尺度福利影院在线看| 亚洲美女网站| 欧美一区二区三区在线免费观看| 国产精品久久一卡二卡| 欧美一区三区三区高中清蜜桃| 亚洲免费影视| 激情av一区二区| 亚洲国产免费看| 欧美日韩a区| 午夜性色一区二区三区免费视频| 亚洲欧美中日韩| 亚洲高清视频在线| 亚洲老司机av| 国产欧美一区二区三区在线看蜜臀| 久久久久国产一区二区三区四区| 久久精品青青大伊人av| 日韩亚洲欧美成人| 性欧美大战久久久久久久久| 亚洲国产精品视频一区| 亚洲最新合集| 一区二区三区在线观看视频| 亚洲人成网站色ww在线 | 欧美国产精品劲爆| 欧美激情第8页| 久久成人精品一区二区三区| 免费亚洲婷婷| 久久精品二区三区| 欧美日韩精品欧美日韩精品| 久久九九全国免费精品观看| 欧美激情一区| 鲁大师影院一区二区三区| 欧美日韩亚洲一区三区| 美女精品网站| 国产欧美日韩一级| 亚洲另类视频| 亚洲国产一区二区三区在线播 | 免播放器亚洲| 国产日韩精品一区二区浪潮av| 亚洲国产欧美在线人成| 韩国亚洲精品| 校园激情久久| 亚洲一区二区在线看| 欧美91福利在线观看| 久久福利视频导航| 欧美图区在线视频| 亚洲人成啪啪网站| 91久久精品国产91久久性色tv| 性欧美xxxx视频在线观看| 亚洲欧美日韩天堂| 欧美日韩在线影院| 91久久国产综合久久蜜月精品 | 一区二区三区导航| 亚洲国产精品一区二区第四页av| 午夜国产欧美理论在线播放| 这里是久久伊人| 欧美精品999| 亚洲大片av| 亚洲国产综合在线看不卡| 久久久久久久999精品视频| 久久精品一区四区| 国产资源精品在线观看| 校园激情久久| 老司机精品视频网站| 黄色亚洲网站| 老**午夜毛片一区二区三区| 免费欧美在线视频| 亚洲高清不卡在线| 欧美国产精品中文字幕| 亚洲第一精品夜夜躁人人躁| 亚洲精品久久久久久下一站 | 一区二区在线视频播放| 久久久一区二区三区| 久久免费视频网站| 最新中文字幕一区二区三区| 免费视频一区| 亚洲九九九在线观看| 亚洲一级高清| 国产日韩欧美不卡在线| 久久精品99久久香蕉国产色戒| 蜜桃av一区二区三区| 亚洲黄色一区二区三区| 欧美久久久久久久久| 亚洲无线视频| 久久午夜视频| 亚洲精品日韩在线| 国产精品色一区二区三区| 久久成人精品无人区| 亚洲国产日韩欧美在线动漫| 亚洲图片在区色| 国产一区二区激情| 欧美精品入口| 先锋影音网一区二区| 亚洲成人在线免费| 国产一区二区成人久久免费影院| 久久九九久精品国产免费直播| 亚洲第一页中文字幕| 亚洲永久网站| 亚洲第一福利在线观看| 欧美日韩在线播放三区| 久久久久国内| 亚洲私人影院| 欧美国产日韩一区二区在线观看 | 欧美一区久久| 亚洲免费av网站| 国产亚洲精品久久久久动| 欧美大片在线看| 欧美一区2区视频在线观看 | 欧美一区二区三区另类| 亚洲春色另类小说| 国产精品亚洲а∨天堂免在线| 久久亚洲影院| 亚洲欧美视频一区| 亚洲日本成人女熟在线观看| 久久亚洲国产精品一区二区| 亚洲视频在线观看网站| 亚洲国产精品久久久| 国产欧美在线视频| 欧美日韩影院| 欧美精品一线| 欧美插天视频在线播放| 久久精品国产在热久久| 亚洲图片在线观看| 亚洲免费不卡| 亚洲福利专区| 欧美国产亚洲精品久久久8v| 久久免费精品日本久久中文字幕| 午夜免费久久久久| 亚洲一区中文| 亚洲夜间福利| 亚洲一区二区三区精品视频| 亚洲最新在线| 亚洲日本激情| 亚洲精品日本| 99国产精品一区| 99精品视频免费| 中文国产成人精品| 亚洲一区二区三区高清不卡| 99v久久综合狠狠综合久久| 亚洲黄网站在线观看| 亚洲第一福利在线观看| 亚洲国产美女久久久久| 亚洲激情六月丁香| 亚洲经典在线| 亚洲伦理中文字幕| 一本久道综合久久精品| av成人免费在线观看| 亚洲视频图片小说| 亚洲自拍偷拍福利| 欧美一区二区三区免费视| 欧美一区免费| 牛牛影视久久网| 亚洲经典三级| 99re热这里只有精品免费视频| 一本色道久久综合狠狠躁篇的优点| 亚洲精品美女久久7777777| 亚洲人妖在线| 亚洲一区免费| 久久精品中文字幕免费mv| 久久久欧美精品sm网站| 欧美电影免费观看高清| 欧美日韩美女在线观看| 国产精品一区二区久久精品| 国产最新精品精品你懂的| 亚洲成色最大综合在线| 一区二区av在线| 欧美一级日韩一级| 欧美fxxxxxx另类| 亚洲精品久久久久久久久久久| 亚洲影院色在线观看免费| 久久精品国产亚洲一区二区| 欧美黄色网络| 国产婷婷色一区二区三区在线| 亚洲电影视频在线| 国产精品99久久久久久宅男| 久久成人精品无人区| 亚洲日本久久| 欧美一区免费视频| 欧美区高清在线| 国产综合网站| 午夜精品成人在线| 亚洲国产精品va在线看黑人动漫| 一区二区三区国产| 久久综合色综合88| 国产午夜精品一区二区三区视频| 日韩视频免费观看高清完整版| 久久精品91久久香蕉加勒比| 亚洲日本va在线观看| 久久精品中文字幕一区二区三区| 欧美日韩在线视频一区二区| 久久精品一区蜜桃臀影院| 久久久国产精品一区二区三区| 欧美裸体一区二区三区| 加勒比av一区二区| 亚洲欧美日韩成人高清在线一区| 欧美国产欧美亚州国产日韩mv天天看完整 | 国产一区二区无遮挡| 99精品国产在热久久| 欧美xx视频| 久久精品国产一区二区三| 国产乱子伦一区二区三区国色天香|