高效能網路程式設計MailList 熱點回顧 1

2021-04-16 12:47:11 字數 1368 閱讀 4813

早在今年2月份, 鑑於國內伺服器程式開發的同仁一直以來都沒有乙個固定的場所可以互相交流, 我在google group上建了乙個有關

高效能網路程式設計的maillist  (加入的方法見

這裡), 現已經加入的600多名成員中, 所屬領域較為廣泛: 有從事網遊伺服器開發的, 有從事im伺服器開發的, 也有從事web伺服器開發.  經過數月累積, 已經有了一定的問題積累, 所涉及的內容, 有淺有深, 在以後的時間裡, 我會有選擇地摘取其中參與度和質量都較高的討論內容, 作成熱點回顧的方式放在這裡, 方便大家在週末時閱讀, 也方便自己備份. 下面是這次摘要的主要內容: 1.

server中的定時機制(timer)該怎麼做

例如一些定時事件的觸發:定時發keepalive,檢查socket是否很長時間沒有資料,或者定時地廣播一些訊息等等。在windows下可以直接用settimer,不過感覺比較不爽(要和視窗關聯),在無視窗的工作執行緒中有什麼好的方法可以實現定時機制

? 在linux下怎麼實現定時機制 ?

2. 關於通訊的buffer管理

由於本人在工作中需要對mfc序列化生成的資料報進行分割,希望各位提提好的建議.資料報的格式如下:

..., 本人的初步想法是構建如下分包上下文,記錄處理的中間狀態: ....

3.如何得到當前nat的型別

如何得到當前連線到公網的nat型別?

這個怎麼做?

4.區域網內一台機器能否進行ip位址欺騙,連線interne

t網上的server

假設網際網路上有機器a, b,ip位址為ipa, ipb,區域網內機器c,該區域網連線網際網路的ip位址為ipx, 請問機器c能否使用機器a的ip的位址ipa與b機器進行通訊?

5.用epoll同時監視fd的讀和寫的可靠性

我的想法很簡單: 在添每個fd時都ev.events=epollin|epollout|epollet; 

然後該讀就讀,該寫就寫,不再反覆呼叫epoll_ctl來更改.

我這麼做可行嗎?

6.乙個關於海量資料庫的儲存問題

現在有這麼乙個專案,資料量非常之多,每秒鐘上來的資料有上千條,而且每條資料都需要儲存到資料庫中,資料庫用於存放這種資料的表乙個月資料上十億條,資料庫採用sqlserver....

7.請推薦乙個好用得udp庫

求解乙個問題,誰推薦乙個好用得udp庫,我們要做p2p...

要做乙個p2p傳輸檔案的軟體,  類似bt...

高效能網路程式設計MailList 熱點回顧 1

早在今年2月份,鑑於國內伺服器程式開發的同仁一直以來都沒有乙個固定的場所可以互相交流,我在google group上建了乙個有關 高效能網路程式設計的maillist 加入的方法見 這裡 現已經加入的600多名成員中,所屬領域較為廣泛 有從事網遊伺服器開發的,有從事im伺服器開發的,也有從事web伺...

高效能網路程式設計(五) IO復用與併發程式設計

對於伺服器的併發處理能力,我們需要的是 每一毫秒伺服器都能及時處理這一毫秒內收到的數百個不同tcp連線上的報文,與此同時,可能伺服器上還有數以十萬計的最近幾秒沒有收發任何報文的相對不活躍連線。同時處理多個並行發生事件的連線,簡稱為併發 同時處理萬計 十萬計的連線,則是高併發。伺服器的併發程式設計所追...

Go 語言高效能程式設計

第一章 效能分析 第二章 常用資料結構 第三章 併發程式設計 第四章 編譯優化 附錄 go 語言陷阱 go 語言筆試面試題 我使用 go 作為主力程式語言已經有一年多的時間了,主要的工作職責是開發一些效率工具,例如分布式編譯加速工具。對效能不太敏感的地方,通常會使用 python,因為 python...