原创 lua算術運算和關係運算metamethods

--[[ 說明 1.以下使用的metamethod都是lua核心metamethod,使用的時候可以採用相應的操作符,如:__add可以解釋成+。 2.metamethod需要放在metatable中使用 算術運算符對應的域: __a

原创 C 預編譯、編譯、彙編、鏈接簡單實例

目錄   1.創建test.c文件 2.預編譯 3.編譯 4.彙編 5.鏈接 6.錯誤運行 7.錯誤解決 8.正常運行 1.創建源文件 test.c #include <stdio.h> #define NUM 100 int ma

原创 NGINX HTTPS SSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol

目錄 1.nginx錯誤日誌 2.錯誤的nginx.conf配置 3.請求 4.正確的nginx.conf配置 5.請求 6.分析 1.nginx錯誤日誌 2019/07/05 13:16:12 [error] 93333#0: *259

原创 lua 字符串緩衝

--[[ 字符串緩衝 ]] -- 字符串拼接低效操作 -- 讀取整個文件的內容,保存在變量中 local buff = "" for line in io.lines() do buff = buff .. line .. "\n

原创 error指定錯誤等級

lua代碼及解釋 腳本名稱:pcall_3.lua --[[ error: 兩個參數,第一個參數是錯誤信息,第二個參數是錯誤級別 默認級別爲1 0:表示不顯示錯誤出現位置 1:表示error函數調用的位置 2:調用error函數的函數

原创 lua需要考慮數值溢出嗎?

結論:不需要考慮 在Programming in Lua 3rd 中文版中有這樣一段描述: Lua使用雙精度表示數字,(背景:在table構成的隊列中執行插入操作,每右插入一個元素,隊列中的下標加1)假定你每秒鐘執行100萬次插入操作,在

原创 浮動IP

目錄 1.什麼是浮動IP? 2.如何配置浮動IP? 3.一個網卡有多個IP地址時,IP層裏的源IP地址如何選擇? 4.浮動IP的自動漂移,可以使用什麼軟件實現? 5.HA實現自動漂移原理是什麼? 1.什麼是浮動IP? https://bl

原创 抓包理解X-Forwarded-For和proxy_add_x_forwarded_for

目錄 1.nginx.conf設置指令 2.發送請求,無請求頭域 X-Forwarded-For 3.發送請求,有請求頭域 X-Forwarded-For 4.理解 1.nginx.conf設置指令 proxy_set_header  

原创 協同進程實現生產者消費者

代碼及註釋如下,使用print函數打印值和行號,可以看到代碼的運行路徑 --[[ resume協程,如果協程執行的過程中調用yield函數,則resume函數返回yield的參數 ]] function receive(prod)

原创 nginx模塊和鏈接庫

目錄 1. 查看可執行文件動態連接哪些動態鏈接庫? 2. nginx模塊和鏈接庫是什麼關係? 3. 如何將動態鏈接庫靜態編譯進可執行文件? 4. nginx如何選擇編譯模塊? 5. nginx如何編譯第三方模塊? 1. 查看可執行文件動態

原创 HTTPS

目錄 1. 什麼是對稱加密? 2. 什麼是非對稱加密? 3. 對稱加密的私鑰和非對稱加密的公鑰,如何傳輸給對方? 4. 如何鑑別獲得的私鑰或公鑰是合法的,非冒充的? 5. HTTPS是如何工作的呢? 6. 抓包查看握手過程是什麼樣的? 1

原创 物理層和數據鏈路層

目錄 1. 誰先發誰後發的策略? 2. 怎麼知道包的目的地是什麼? 3. 如何判斷數據傳輸的是否正確? 4. 對於一個網絡中的所有的機器,怎麼知道IP對應的MAC地址呢? 5. 集線器(hub)的轉發策略? 6. 交換機的轉發策略? 網絡

原创 ifconfig命令

目錄   1. net-tools和iproute2的區別? 2. 如何查看機器IP地址? 3. IP地址如何分類? 4. 爲什麼會出現無類型域間選路? 5. 什麼是無類型域間選路? 6. 公有IP地址和私有IP地址 7. 如何獲得公有I