-
使用 Python Pip 的 10 個技巧
【使用 Python Pip 的 10 個技巧】眾所周知,pip?可以安裝、更新、卸載 Python 的第三方庫,非常方便。你們中的許多人可能已經使用?pip?很長時間了,但不清楚它有哪些還不錯的功能。希望我今天分享的技巧能讓你從 Python?pip?中受益。 Python pip 讓我們從 Python 語言開始。Python 之所以受歡迎,不僅因為它易于學習,還因為它擁有成千上萬的(寶)庫。 這些庫相當于已經集成的工具,只要安裝了就可以在 Python 中使用。它們可以處理各種各樣的問題,…
-
NAT 穿透是如何工作的:技術原理及企業級實踐
譯者序 本文翻譯自 2020 年的一篇英文博客:How NAT traversal works。 設想這樣一個問題:在北京和上海各有一臺局域網的機器(例如一臺是家里的臺式機,一 臺是連接到星巴克 WiFi 的筆記本),二者都是私網 IP 地址,但可以訪問公網,?如何讓這兩臺機器通信呢? 既然二者都能訪問公網,那最簡單的方式當然是在公網上架設一個中繼服務器:兩臺機器分別連接到中繼服務,后者完成雙向轉發。這種方式顯然有很大的性能開銷,而 且中繼服務器很容易成為瓶頸。 有沒有辦法不用中繼,讓兩臺機器直…
-
正則表達式也會導致拒絕服務?探討 ReDos(可能會中招哦)
介紹 當您想到拒絕服務攻擊時,您會想到什么?可能是一大群機器人試圖訪問 Web 服務器的資源以使其癱瘓。好吧,這肯定是導致拒絕服務攻擊的一種方式。但是,還有一種您可能沒有聽說過的方式。它被稱為?ReDoS,是由正則表達式引起的。 正則表達式?但這怎么可能呢?那不是通過使用過濾器來匹配字符串、將字符串列入白名單和黑名單,從而使我們的工作更輕松嗎?是的,但是攻擊者也可以利用它來使應用程序(服務器)屈服。讓我們了解如何! 正則表達式是什么? 簡而言之,正則表達式是一種用于匹配(編程語言中)字符串的模式…
-
find 命令的 7 種用法
可以很肯定地說,find?命令是 Linux 后臺開發人員必須熟知的操作之一,除非您使用的是 Windows Server。 對于技術面試,它也是一個熱門話題。讓我們看一道真題: 如果你的 Linux 服務器上有一個名為?logs?的目錄,如何刪除該目錄下最后一次訪問時間超過一年的日志文件呢??? 這種情況很常見,但令人驚訝的是,并非每個開發人員都能在面試中清楚地寫出這個命令。 答案:首先我們需要使用?cd?命令進入對應的目錄,然后,命令如下: 如果你還沒有完全理解上面的命令,完全不用擔心。本文將…
-
實用正則表達式快速參考
檢查數字 數字:^[0-9]*$ n 位數:^\d{n}$ 至少 n 位數字:^\d{n,}$ m~n 位數字:^\d{m,n}$ 以零和非零開頭的數字:^(0|[1-9][0-9]*)$ 以非零開頭且最多兩位小數的數字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 帶 1-2 位小數的正數或負數:^(\-)?\d+(\.\d{1,2})?$ 正數、負數和小數:^(\-|\+)?\d+(\.\d+)?$ 非零正整數:^[1-9]\d*$ or ^([1-9][0-9]*){1,3…
-
你必須知道的 5 個重要的密碼學知識
引言 密碼學用于將輸入(明文)轉換為加密的輸出(密文)。因此,使用不同的算法將輸入轉換為輸出,大多數情況下需要使用密鑰來加密和解密。密碼學中的密鑰是用于算法的字符序列。然后,密文可用在世界各地的安全存儲和傳輸數據,只有發送者和接收者才能解密和讀取明文。 加密分為三種不同的方法: 對稱加密(Symmetric Encryption) 非對稱加密(Asymmetric Encryption) 散列(Hashing) 對稱加密 對 “FILM” 單詞的加密和解密: 對稱加密的主要優點是速度快。在速度很…
-
關于 Linux Bash Shell 中變量的 5 個易錯點
Linux 中的 Bash 腳本語言支持對變量的操作。但是,如果您從事過其他流行的編程語言開發,那么使用 Bash 處理變量會很容易出錯。因為它的語法與其他語法不同(甚至對某些開發人員來說有點奇怪)。 這篇文章會根據我的經驗給你5個友情提示。閱讀后,它可以幫助您避免不必要的錯誤。 0. 等號周圍沒有空格 對于許多語言,例如 Python,在等號周圍添加空格是一個好習慣,因為它可以提高代碼的可讀性。 但是在 Bash 中,你不應該在定義變量時添加額外的空格。 如果我聲明一個變量?name,如下: …
-
使用 Thanos 和 Prometheus 打造一個高可用的 Kubernetes 監控系統
對于彈性伸縮和高可用的系統來說,一般有大量的指標數據需要收集和存儲,如何為這樣的系統打造一個監控方案呢?本文介紹了如何使用 Thanos+Prometheus+Grafana 構建監控系統。 集群容量概覽 直到今年 1 月,我一直在使用一款企業級監控解決方案來監控 Kubernetes 集群,這款監控方案還用于 APM。它用起來很自然,與 Kubernetes 的集成非常容易,只需要進行一些細微的調整,并且可以集成 APM 和基礎設施指標。 盡管這款監控方案可以很容易地收集和存儲數據,但使用指標…
-
Python 中 4 個高效的技巧!
今天我想和大家分享 4 個省時的 Python 技巧,可以節省 10~20% 的 Python 執行時間。 反轉列表 Python 中通常有兩種反轉列表的方法:切片或?reverse()?函數調用。這兩種方法都可以反轉列表,但需要注意的是內置函數?reverse()?會更改原始列表,而切片方法會創建一個新列表。 但是他們的表現呢?哪種方式更有效?讓我們看一下下面的例子: 使用切片: 使用 reverse(): 這兩種方法都可以反轉列表,但需要注意的是內置函數?reverse()?會更改原始列表,…
-
探討 DNS 解析
DNS 服務器 在現實世界中,當您進行閱覽新聞、在線下單、下載文件或觀看直播時,您需要通過訪問域名來訪問目標網站,例如 youtube.com、google.com 等。您只需記住這些網站的名稱,而非它們的 IP 地址,因為與網站名稱相比,IP 地址是很難記住的。因此,您需要一個作為 DNS 服務器的網站/域名地址本。 DNS 在日常生活中非常重要。每個在線的人都需要訪問它,但同時,這對它來說也是一個非常大的挑戰。如果 DNS 服務器出現故障,整個 Internet 網絡都將關閉。 另外,上網的…