原创 http2.0反向代理遇到的坑

使用域名指向nginx服務來代理https,nginx可以通過分析clienthello中的server_name字段得到訪問域名,然後通過解析域名地址來進行代理。 這裏有幾個問題,第一個是低版本的ie瀏覽器,使用的是低版本的tls,沒有這

原创 pthread_create中Resource temporarily unavailable問題

有臺設備發現程序啓動失敗,上去通過日誌發現是線程啓動(pthread_create)失敗,進一步定位,打印errno:11,Resource temporarily unavailable。 但是發現失敗前不管是top還是free,還是sw

原创 NDK製作一個安卓執行程序

前言 之前有同事在安卓實現tracerout,因爲大部分安卓系統都不帶traceroute命令,只能使用ping來實現模擬。比如ping的-t命令,可以設置ttl,逐步增加調試,測試出路由的每一條。但是效率很低,想用c寫一個方法我使用ndk

原创 用ndk製作一個安卓so

做個記錄打開EclipsFile->New->Project選擇安卓應用填寫名稱mytest2ndk然後一路點下去就行,不用選什麼,注意不要勾選 Mark this project as a library,生成so的事情在其他地方處理。

原创 部分國產服務器重啓會盤符會亂的問題

前陣子發現部分設備重啓後文件丟失,發現對應盤符似乎錯亂了,根據異常日誌改了盤符名稱才恢復正常。跟運維瞭解了一下,部分國產服務器似乎有這種問題,重啓後盤符會亂,而這部分服務器使用的是/etc/rc.local下面使用mount在啓動時加載。比

原创 ping首包慢的問題(及icmp對應關係)

一 、之前的舊經驗 之前公司發生過wget過慢的情況,經過研究發現wget默認調用系統的getaddrinfo,會同時發送ipv4和ipv6的dns請求,只有當2個都收到或者ipv6超時時,纔會進行下載流程。而公司使用的dns不響應ipv6

原创 我的友情鏈接

51CTO博客開發奔跑的linux

原创 libevent學習筆記

libevent是一個事件觸發的網絡庫,適用於windows、linux、bsd等多種平臺,內部使用select、epoll、kqueue等系統調用管理事件機制。著名分佈式緩存軟件memcached也是libevent based,而且li

原创 《你的最佳療法》

對病症需要什麼藥物介紹的很詳細,但很多病都是中老年人才會得的,所以只有個別篇章比較實用。另外對平時注意飲食只有避開吃什麼,很少有吃什麼好。我有這個感覺可能是我受中醫的影響太深了,因爲本來健康的飲食就是不挑食,而不是具體去吃什麼。 P24貧血

原创 《食品真相大揭祕》摘錄

我們的日常生活離不開食品添加劑,但是兒童儘量避免攝入過多的食品添加劑。合成色素(檸檬黃)會妨礙兒童對鋅的吸收。酥脆食品中的明礬和氫化植物油不利於兒童的智力發育。市面和飯店的肉丸都是廢肉做的,最好不要吃。材料中含有大豆蛋白、蛋清、乳蛋白的火腿

原创 stl::list的size實現太有問題啦

這幾天做一個程序,在遍歷一個100萬個數據的LIST的時候非常非常慢,我把可能出現消耗時間都打印出來了,死活都找不到消耗時間的地方在什麼地方。最後盯上了判斷size()等於一個值的地方,因爲就剩下這個地方了,就打上了時間,結果發現竟然就是此

原创 linux程序設計學習筆記(7-15)

七、數據管理內存管理malloc,free,realloc和windows都一樣,都是ANSI C。實際上,應用程序並沒有直接訪問到物理內存,也可以通過malloc獲得比實際內存大得多的內存空間,因爲系統會使用交換空間(swap space

原创 《TCP/IP詳解》學習筆記三(13-16)

十三、IGMP作用是讓物理網絡上的所有系統知道主機當前所在的多播組。略------------------------------------------------------------------------十四、DNSNDS服務器用

原创 C++ primer 學習筆記1-7

學校只教過C和JAVA,C++是自己看的,始終還是喜歡C的風格。對C++的很多特性始終都是一知半解,也許可以學習一些細節。第一章 快速入門cin(see-in)標準輸入cout(see-out)標準輸出cerr(see-err)標準錯誤cl

原创 strcpy在centos6.x,gcc4.4.7版本上會有bug,自我移動導致覆蓋錯誤overlap

Gcc編譯時無優化參數,以前曾經被-O坑過。 #include <stdio.h> #include <string.h>   int main() {        char url[512];        sprintf(url,"2