原创 Log日誌級別

1. 日誌級別 日誌一共分成5個等級,從低到高分別是: DEBUG INFO WARNING ERROR CRITICAL 說明: DEBUG:詳細的信息,通常只出現在診斷問題上 INFO:確認一切按預期運行 WARNING

原创 前序遍歷——遞歸和非遞歸實現

遞歸實現: 當節點不爲空時,每次遍歷現將節點值添加進list,之後,左子樹補空,遍歷左子樹;右指數不空,遍歷右子樹;最終返回list。需要注意的是根節點爲空的情況,在遍歷之前,根節點爲空,直接返回(全局)list。 //前序遍歷遞

原创 Java8特性——Optional

當項目運行時拋出 NullPointerException 空指針異常的錯誤時,可以 考慮使用Optional來處理null的問題。 例子如下: @Override public ReplyStatusResponse r

原创 idea 導入文件爲j問題解決

idea導入項目 通過終端導入,複製git的ssh命令 導入完成之後,打開項目如圖所示: 文件左下角的圖標爲J,正常應該是爲C或者I。 解決方法: 點擊—File—選擇在下面的power Save Mod 將前面的✅去掉(由於

原创 計算機粘包

粘包問題 TCP是基於數據流的協議,發送端可以是一K一K地發送數據,而接收端的應用程序可以兩K兩K地提走數據,當然也有可能一次提走3K或6K數據,或者一次只提走幾個字節的數據,也就是說,應用程序所看到的數據是一個整體,或說是一個流

原创 一致性哈希算法原理

一致性哈希算法原理 一致性Hash算法背景   一致性哈希算法在1997年由麻省理工學院的Karger等人在解決分佈式Cache中提出的,設計目標是爲了解決因特網中的熱點(Hot spot)問題,初衷和CARP十分

原创 數據庫高併發解決方法總結和主從複製

數據庫高併發解決方法總結 一個項目剛開始的時候是爲了實現基本功能,隨着版本和功能的迭代,大數據和高併發成了軟件設計必須考慮的問題! 本質很簡單,一個是慢,一個是等。 兩者是相互關聯的,因爲慢,所以要等,因爲等,所以慢,解決了慢,也

原创 Java線程池

Java中的線程池是運用場景最多的併發框架,幾乎所有需要異步或併發執行任務的程序 都可以使用線程池。在開發過程中,合理地使用線程池能夠帶來3個好處。 降低資源消耗。通過重複利用已創建的線程降低線程創建和銷燬造成的消耗。 提

原创 Innodb解決幻讀

Innodb的默認隔離級別是可重複讀,會出現幻讀的問題,通過兩種方式來解決幻讀。 1、MVCC 多版本併發控制(Multi-Version Concurrency Control, MVCC)是 MySQL 的 InnoDB 存儲

原创 JVM監控和調優常用命令工具總結

JVM監控和調優常用命令工具總結 </h1> <div class="clear"></div> <div class="postBody"> 閱讀目錄JVM監控和調優

原创 快速排序

快速排序原理 快速排序算法通過多次比較和交換來實現排序,其排序流程如下: 首先設定一個分界值,通過該分界值將數組分成左右兩部分。 將大於或等於分界值的數據集中到數組右邊,小於分界值的數據集中到數組的左邊。此時,左邊部分中各元素都

原创 Python基礎知識學習筆記04

Python學習 ** 1、函數的關鍵字:def 一般格式: 參數列表中傳入參數和自變量,可以定義參數。 2、函數的參數 例如: 傳不可變對象時 實例中有 int 對象 2,指向它的變量是 b,在傳遞給 Chan

原创 XGB算法梳理

引言 XGBoost(eXtreme Gradient Boosting)是大規模並行boosted tree的工具,它是目前最快最好的開源boosted tree工具包,比常見的工具包快10倍以上。在數據科學方面,有大量kagg

原创 Redis持久化RDB和AOF的區別 redis的持久化方式RDB和AOF的區別

  redis的持久化方式RDB和AOF的區別   1、前言 最近在項目中使用到Redis做緩存,方便多個業務進程之間共享數據。由於Redis的數據都存放在內存中,如果沒有配置持久化,redis重

原创 Python基礎知識學習筆記01

Python學習 ** 1、環境搭建 爲了運行Python語言,最開始肯定先裝個運行環境。 推薦anaconda (一個開源的Python發行版本)這個工具,直接百度搜索就好了。 注:是否把Anaconda加入環境變量