原创 走過路過的Linux命令(一)

一:習慣忘記的 1.查看當前系統的版本號 uname -a ,或者 cat /proc/vesion; 2.查看當前所有用戶cat /etc/passwd,查看當前所有用戶組 cat /etc/group 二:一些常識性的: 1.在進行c

原创 kafka學習(待繼續學習)

一:概念   1.kafka中partition和broker中分配的關係爲:    a)將所有 N 個 Broker 和待分配的 M 個Partition排序;    b)將第 i 個 Partition 分配到第 (i mod N)

原创 kafka的一些理解

1.生產者的架構比較簡單,邏輯上也相對簡單,受分區再平衡的影響也比較小;    生產者這塊包括幾部分:1.網絡客戶端,用來建立連接、發送請求、讀取響應之類;    2.記錄聚集器,將消息按分區聚集,並放入隊列;     3.發送線程,從隊

原创 一:kafka簡介(看書總結版)

一:基本概念 1.kafka 的作用:解決應用解耦、異步消息、流量削峯的問題;    個人理解:kafka使用於業務流程的分支部分,用來解耦,也可以加強併發;比如評論的技術功能,訂單系統的送積分等等;好處多多,使主流程更輕薄、邏輯清晰、高

原创 select 中for update的使用

1.它是用來進行數據併發訪問時,保證數據同步的一種方式;    它是屬於悲觀鎖的一種,悲觀鎖適用於數據庫的寫操作比較多的場景,更進一步劃分屬於意向排他鎖;    上的鎖會在該事務被commit或者rollback語句結束釋放;     2

原创 學習目標對齊

一:三月份 1.三月份最基本的計劃是將spring源碼看完,熟練掌握spring的各個設計的原則,並搞清楚它的來龍去脈; 2.進階是把Spring boot的原理也搞清楚; 3.再進階是學習Spring cloud的應用; 4.再再進階是

原创 Java的異步編程(三):CompletableFuture的簡介和成員變量

一:簡介 上文提到了Future是實現異步調用的工具,但是Future存在着使用不便的缺點,Java8中提供了CompletableFuture來完善異步流程; CompletableFuture能夠在不同線程中執行回調,也可以

原创 每日疑問:2019.11.25

1.複習一下,鏈表,雙向鏈表,待做 2.二叉平衡樹,看了它的搜索、最大最小值、先驅節點、後繼節點、插入、刪除;二叉搜索樹可以作爲一個字典或者優先隊列; 3.   點贊 收藏 分享 文章舉報

原创 三:Kafka消費者(1)

一:簡介    1.默認規則:一個分區只有一個消費者來消費;     2.消費組再分區:消費組發生;     3.消費進度:消費者保存,提交到分區,以消費組爲單位,一般在ZK或者內部主題中(consumer_offset);根據不同的提交

原创 每日解答(一)Thread.join會釋放資源嗎

一:簡述    join()是提供多線程間實現資源協調的一種方式,主要用於A線程等待B線程執行完畢,A繼續執行的功能;長話短說,在A線程中調用B.join(),會釋放A持有的B資源嗎?答案是會的 二:源碼和示例 1.join的實現    

原创 二:kafka生產者

一:簡介   1.相比較消費者、協調者、控制器、日誌存儲而言,生成者的功能相對較簡單,因大部分的工作都交給Broker來處理,生產者需要關注的是消息提交失敗、消費者反饋的失敗的處理上面;   2.生產消息的流程:消息放入隊列中、由消息發送

原创 三:Kafka消費者(2)

1.消費者拉取消息之前,一定要保證已經分配了分區,步驟如下:    1)消費者向協調者申請加入消費組;    2)服務端存在管理消費組的協調者,協調者將消費者加入消費組;    3)觸發消費組再平衡操作,協調者爲所有消費者分配分區;  

原创 學習計劃

一:總的學習目標: 1.Java方面:JVM內存管理、IO、多線程、集合、spring等Java方面的基礎知識,還有一些最新的Java版本更新信息; 2.數據庫、Redis方面:重點的工具,設計到原理、優化等; 3.工具類:kafka、z

原创 JVM內存相關

1.轉載,從top講到分析:https://www.analysys.cn/article/detail/20019016

原创 Guava Cache的使用和參數配置

一:適用場景    1.“尺寸較小”、“高頻的讀取操作”、“變更操作較少”,這樣的場景下比較適合Guava這種“嵌入式”緩存;     2.當然對於一些“數據較大”、“需要一定的持久化”保障的,需要考慮redis、memcached等分佈