原创 redis-py連接池的實現

說起連接池,可能很多人直接望而卻步,覺得好複雜,還是直接調用別人現成的好了,其實都是連接池也是扮豬喫老虎。 但是之前看redis-py連接池的實現,覺得好簡單,但是卻又很巧妙,正好最近又在研究redis-py的連接池,將連接池相關的實現抽

原创 用數據告訴你程序員都在看什麼

開發者頭條是一個技術文章的聚合網站,在程序員圈子裏有較高的評價。 網站每天會精選出若干精彩文章,用戶在瀏覽時可以對自己認爲寫得好的文章點贊和收藏,最終每日的文章會按照點贊數排名顯示。   因爲老張平時也會瀏覽開發者頭條,今天突發奇想,

原创 喫透FTP

FTP,即文件傳輸協議(File Transfer Protocol),作爲仍然活躍的客戶端--服務端之間的傳輸協議,其歷史可以追溯到上世紀70年代。 今天老張給大家全方位的講講FTP,如果你之前很少接觸FTP或者對FTP一知半解,老

原创 【譯】urllib.parse文檔--這裏有關於URL的一切

本模塊定義了一個標準接口,既可以把統一資源定位符(URL)解析爲若干部分(通信協議,網絡地址和路徑等),也可以把各個部分重新組合成URL,還可以利用“基本URL”把相對路徑轉化爲絕對路徑。 本模塊設計之初就考慮到要兼容一系列和URL相關

原创 Nginx之父被抓,《硅谷》劇情走進現實

前不久一條“Nginx 之父被抓”的新聞吸引了老張的關注。新聞提到:2000年前後Nginx之父在Rambler 集團工作期間開發了Nginx,所以Rambler 集團在2019年生成擁有 NGINX 網絡服務器代碼的全部所有權。看完這

原创 【絮叨.2】PRD纔是高級語言,程序員就是產品的編譯器

最近隨手翻看《編碼》,看到一句話形容高級語言:儘管除了彙編語言以外的其他程序設計語言都可以稱爲“高級語言”,但是它們之間還是有高低之分的,一些語言通常被認爲比別的語言更高級。如果你是一家公司的總裁,坐在計算機前輸入這些命令,“計算出本年

原创 後端問題如何快速定位?

定位問題沒有銀彈!定位問題沒有銀彈!定位問題沒有銀彈!老張結合自己的工作經驗,談談問題爲什麼會產生,已經定位後端問題的一些經驗總結。01—Bug是如何產生的?計算機是精確的,而人是非理性的。這是Bug之所以會產生,且一直燒之不盡的本質原

原创 LeetCode第156場周賽--5206. 刪除字符串中的所有相鄰重複項 II

給你一個字符串 s,「k 倍重複項刪除操作」將會從 s 中選擇 k 個相鄰且相等的字母,並刪除它們,使被刪去的字符串的左側和右側連在一起。你需要對 s 重複進行無限次這樣的刪除操作,直到無法繼續爲止。在執行完所有刪除操作後,返回最終得到

原创 byte[]與String互轉引發的血案

String s = "HelloWorld"; byte[] b = s.getBytes(); System.out.println(new String(b)); 看到上面的代碼,可能有同學會問了,這不就是JAVA的基本操作嗎,你

原创 【譯】Python3.8官方Logging文檔--高級部分

在《後端問題如何快速定位?》中老張強調了日誌的重要性,也提到了使用日誌需要的注意的一些問題。但是並沒有提到實踐方式,其實掌握一個工具最快的方法就是閱讀官方文檔,老張試着翻譯了Python3.8官方Logging文檔,由於官方文檔實在是長

原创 什麼?文件讀寫還有緩衝!

有沒有同學遇到過DEBUG的時候日誌死活不寫入文件,必須關閉程序才能拿到想要的日誌文件?一頭霧水的你是否想起文件緩衝這個冷知識?操作系統提供的文件的io操作的緩衝行爲分爲:全緩衝:往往同系統及磁盤塊大小有關,n個字節後執行一次寫入操作行

原创 Java語言史

除少數年份外,java一直佔據TIOBE排行榜第一Java,一種廣泛使用的計算機編程語言,擁有跨平臺、面向對象、泛型編程等特性,廣泛應用於企業級Web應用開發和移動應用開發,是國內最主流的編程語言。互聯網公司中的一顆燦爛流星——Sun

原创 ICMP是個啥?

提起TCP/IP,好像大家都能說上幾句。從OSI七層模型到TCP三次握手,如果不知道這些面試都不好意跟人打招呼,甚至最近幾天老張在開發者頭條看到有人在爭論TCP到底會不會走向滅亡。但是,如果問到ICMP是啥又有多少人知道呢?今天老張帶大

原创 【絮叨.1】同時在寫四門語言是怎樣一種體驗?

    魔笛手在發展初期並沒有具體限制程序員使用哪一種編程語言,除了主流的Python,還有Node.JS、Go、Lua、C#、PHP等,加之目前公司正在使用Java重構原服務,光老張自己現在就要同時維護四門語言。    老張從入行就開

原创 設計模式六大原則關係圖

多說一句,聯繫一下數據庫範式,是不是熟悉的味道