原创 文章更新在別處

最新文章將在語雀上更新,地址如下: https://www.yuque.com/mango-bpgj7/gtd8b4

原创 django-prometheus和prometheus_client源碼分析(二) 背景 源碼分析 References

背景 Prometheus是最近流行的監控報警系統,具體大家可以搜網上的文章來了解,而由於我司目前的應用使用了Django框架來做爲後端應用,因此需要研究如何將Prometheus與Django結合在一起使用,因此有了接下來的源碼研究。 在

原创 django-prometheus和prometheus_client源碼分析(一) 背景 源碼分析 References

背景 Prometheus是最近流行的監控報警系統,具體大家可以搜網上的文章來了解,而由於我司目前的應用使用了Django框架來做爲後端應用,因此需要研究如何將Prometheus與Django結合在一起使用,因此有了接下來的源碼研究。 在

原创 在Windows上使用Nuitka將Python文件打包成exe文件

Nuitka是用於將Python文件打包成可執行文件的工具,類似於PyInstaller,但是相較而言Nuitka是直接將python編譯成C++代碼, 性能和安全性更好,具體可以參考文章Python 打包工具對比,Nuitka vs Py

原创 利用STS技術實現對象存儲的鑑權

背景介紹 目前很多網站都是通過將圖片存儲類似S3(AWS)或者OSS(阿里雲)上這種方式來進行存儲,這樣存儲成本低,擴展性和可靠性都足夠好。而這種方式在存儲和獲取的時候就會涉及鑑權的相關問題。以阿里云爲例,我們可以通過STS(Securit

原创 Pandas系列7-DataFrame之合併組合

在Pandas的實踐過程中,我們經常需要將兩個DataFrame合併組合在一起再進行處理,比如將不同來源的數據合併在一起,或者將不同日期的DataFrame合併在一起。DataFrame的合併組合從方向上分,大體上分爲兩種情況:橫向的,縱向

原创 MongoDB索引優化詳解 索引基礎知識 通過explain結果來分析性能 References

索引基礎知識 什麼是索引 索引最常用的比喻就是書籍的目錄,查詢索引就像查詢一本書的目錄。本質上目錄是將書中一小部分內容信息(比如題目)和內容的位置信息(頁碼)共同構成,而由於信息量小(只有題目),所以我們可以很快找到我們想要的信息片段,再根

原创 Swagger使用初探

簡介 Swagger是什麼?在解答這個問題之前,我們先來看看開發Restful API過程中會遇到什麼問題。我們如何去設計和定義API接口?如何寫接口文檔?是否可以自動生成接口文檔,或者設計好API之後自動生成接口代碼?如果有那麼一個工具可

原创 MySQL數據庫連接的相關探索

問題的起源是由於發現在公司的很多項目中使用MySQL的時候,都沒有關閉數據庫連接的操作。這主要是由於一般一個項目就共用一個global的db connection,不需要關閉,因爲始終都要用這個connection。那麼到底是否真的不需要關

原创 數據一致性,鎖與隔離等級

這篇文章主要針對的是關係型數據庫(MySQL以及InnoDB引擎)而去討論的數據一致性,鎖以及MVCC機制,和隔離等級等相關的話題。之前寫過一篇文章針對基礎概念(理解數據庫的事務,ACID,CAP和一致性),而本篇主要是通過MySQL和In

原创 Python日期和時間處理(三) - 週數轉換

週數的轉換 日期轉換週數 當我們需要獲取特定日期對應的週數的時候,通常我們使用如下方法: from datetime import date dt1 = date(2018, 10, 10) dt2 = date(2018, 12, 3

原创 MongoDB索引優化詳解

索引基礎知識 什麼是索引 索引最常用的比喻就是書籍的目錄,查詢索引就像查詢一本書的目錄。本質上目錄是將書中一小部分內容信息(比如題目)和內容的位置信息(頁碼)共同構成,而由於信息量小(只有題目),所以我們可以很快找到我們想要的信息片段,再根

原创 Structuring Machine Learning Projects - 第二週

第二週課程目標 Understand what multi-task learning and transfer learning are Recognize bias, variance and data-mismatch by loo

原创 數據矢量化 - scikit-learn vectorizor使用詳解

在進行機器學習的過程中我們經常需要將數據矢量化,即生成某些特定的vector然後再進行訓練和計算。scikit-learn提供了很多vectorizor可以用來實現這個功能,尤其是針對TFIDF算法的相關應用,我們可以很方便的使用sciki

原创 Batch Norm

Normalizing activations in a network 在機器學習中很多算法都是通過添加變量來獲取某種“靈活性”或者更廣闊的"適應範圍",並且使得有機會通過"學習"來獲得最合適的參數。 例如在"Normalizing ac