原创 Kafka 生產者和消費者學習筆記

最近搭建 kafka 集羣環境以便於收集應用程序日誌並進行個性化的處理,因此學習了 kafka 生產者和消費者 python 程序的實現。這篇文章當是 kafka 的學習筆記。 一、搭建 kafka 集羣 爲方便測試,我們在 Ma

原创 使用 prometheus python 庫編寫自定義指標

雖然 prometheus 已有大量可直接使用的 exporter 可供使用,以滿足收集不同的監控指標的需要。例如,node exporter 可以收集機器 cpu,內存等指標,cadvisor 可以收集容器指標。然而,如果需要收

原创 一文帶你瞭解 RTO 和 RPO

RTO 和 RPO 都是企業災難恢復(Disaster Recovery, DR)需要考慮的關鍵指標,這兩個指標可以用來指導企業來制定合適的業務系統服務或數據的恢復方案。 本文介紹 RTO 和 RPO 的概念以及區別。 圖:RP

原创 在多線程環境中使用Jedis

Jedis是一個Java語言的Redis客戶端,它爲Java語言連接與操作Redis提供了簡單易用的接口。 Jedis不是線程安全的,故不應該在多線程環境中共用一個Jedis實例。但是,也應該避免直接創建多個Jedis實例,因爲這

原创 POJ 1401 Factorial 解題報告

以下是算法的直觀解釋。 假設求60!的結果後面有幾個0。 由《編程之美》可知其實是求1,2,3……60中共有幾個5的因子,如,5有一個,10有兩個,……一起加起來即得到結果。但是如果一個一個這樣計算下去,會超時的。 其實還有更簡單的計算方

原创 C++ 函數對象學習筆記

函數對象本質上是一個類對象,它重載了函數調用運算符 operator()。調用運算符的函數體實現函數的功能。 例如,我們定義類 LessThan: class LessThan { public: bool operato

原创 Prometheus 使用阿里雲郵件推送發送告警郵件

我們在文章 《使用 docker-compose 搭建 prometheus 監控系統》 的基礎上,增加 prometheus 的告警功能。 Prometheus 指標的收集存儲與告警是分開的,告警功能由 alertmanager

原创 記一次 socket 通信性能優化過程

上段時間測試人員對某個服務端程序進行了性能壓力測試,發現當使用 JMeter 向程序併發發送 100 個請求後,再發送請求,則會出現程序無法響應的現象。想着這個問題比較棘手,就拖了不少時間。最近其他事情少了點,可以專心下來優化這個

原创 prometheus 發送企業微信

最近在公司搭建 prometheus 監控平臺。文章 《Prometheus 使用阿里雲郵件推送發送告警郵件》 已說明如何實現 prometheus 發送郵件告警的功能,這篇文章說明如何實現發送企業微信告警的功能。 申請企業微信賬

原创 SQL JOIN 的使用

由於工作需要,現在也開始寫一些複雜一點的 sql 了。由於之前對於 join 與 where 關鍵字的使用一直有疑惑,故寫一篇文章整理一下,算是對 sql 中各種表聯結使用的一個總結。 SQL JOIN 的作用 sql 關鍵字 u

原创 C++ Lambda 學習筆記

C++ 中,對於一個對象或一個表達式,如果可以對其使用調用運算符(()),則稱它是可調用的。即,如果 e 是可調用的,則可以這樣使用: e(args) 其中,args 是一個逗號分隔的一個或多個參數的列表。 C++ 中可調用對象

原创 SOAP Web Services 簡介

SOAP(Simple Object Access Protocol)是一種基於 XML 的 web 服務協議。SOAP 是平臺獨立的,不依賴於特定的語言,例如,我們可以使用 C#,C/C++,或者 Java 語言來實現 SOAP

原创 CentOS 7 安裝 gRPC

之前的文章曾經介紹過有關 protobuf 的安裝使用,《Google Protocol Buffers 體驗日誌》,不過那篇文章針對的 MacOS 系統。最近在公司環境引入 gRPC 的使用,服務器都是 CentOS 7 系統,

原创 分佈式對象存儲服務器 MinIO 牛刀小試

數據存儲包括三種類型,分別是塊存儲,文件存儲和對象存儲。有關這三種類型的差別,可以參考 對象存儲、文件存儲和塊存儲的區別。 MioIO 是一個開源的分佈式對象存儲系統,非常適合於存儲大容量非結構化的數據,例如圖片,視頻,日誌文件,

原创 使用 gitlab 搭建 docker 私有倉庫

我們知道,gitlab 可以用來管理 git 提交的源代碼,此外,gitlab 還集成了 docker registry 的功能,可以用來作爲一個 docker 鏡像私有倉庫使用。 啓用 gitlab registry 功能 我們