原创 多線程高級講解四: 多線程之間的通訊 (wait、notify)
我在寫這個例子的時候,也出了很多問題。 今天頭很痛,好長時間沒弄出來,心情異常的煩躁。 先說下概念吧: 多線程之前通訊,不要想複雜了。他就是一個生產者 與 消費者的概念。 比如說一個生活中的例子(這是基於我的理解自己想的一個例子)
原创 多線程高級講解五: 多線程的Lock鎖,多線程同步、多線程併發的概念
同步 和 併發 : 對於程序員來說,他們其實是有兩個意思的,一個是多線程層面,一個是網站請求服務器層面。 對於網站的請求層面來說: 同步:就是代碼一步一步的有順序的向下執行。 併發:就是多個請求同時訪問一臺服務器。 對於多線程層面
原创 多線程高級講解二: volatile關鍵字
首先volatile關鍵字有線程安全問題。 volatile有一個專業術語:保證了可見性,不保證原子性。 首先不使用volatile關鍵字,看看有什麼效果 public class NotUseVolatile impleme
原创 多線程基礎講解五: synchronized使用
多線程的鎖有: synchronized 和 jdk1.5的Lock 先說synchronized的各種用法: 1. 使用任意同一對象做鎖 (一定要是同一對象) 2. 使用this做鎖 3. class字節碼文件做鎖 4. 靜態同步
原创 多線程高級講解三: JDK1.5提供的併發包(API)
java.util.concurrent.atomic包 Classes AtomicBoolean AtomicInteger 比如這個,就是對int類型數據原子性操作的工具類。 AtomicIntegerArray Ato
原创 多線程講解三: 等待線程 (用面試題理解join等待線程)
面試題: 創建3個線程,t1、t2、t3,讓讓t1在t2之前執行,t2在t3之前執行。 核心: 讓其他線程變爲等待狀態,必須讓join方法在其他線程內部調用。 /** * @author: wangqinmin * @dat
原创 多線程講解四: 線程安全問題 (全局變量 與 局部變量,誰會有線程安全問題 ?)
什麼是線程安全問題: 當多個線程共享同一個全局變量,並做寫的操作的時候,可能會受到其他線程的干擾,導致數據有問題,這種現象就叫做線程安全問題。 全局變量 與 局部變量,誰會有線程安全問題 ? 全局變量纔會有線程安全問題。在方法內部
原创 多線程講解二: 守護線程 (讓你真正的理解守護線程)
其實很多人,對守護線程並不理解。主要原因是: 測試很不好測,有外界因素干擾。 所以這篇文章,只是讓你認識守護線程,理解守護線程,千萬不要糾結於爲什麼用@Test測試 和 用main方法測試。因爲你如果反過來用@Test用main來測,
原创 多線程講解一: 多線程與進程的理解(排除你對多線程的理解誤區)
線程與進程的區別: 1. 系統運行的每一個程序都是一個進程。比如java,QQ,微信,360安全衛士等。 2. 一個進程可能有多個線程。比如java這個進程運行起來後,除了我們寫的程序需要運行, 還有GC回收線程。 總結: 進程是所有線程
原创 SpringCloud版本Hoxton SR5 --- 第九講:分佈式日誌收集-Elasticsearch+Logstash+Kibana(ELK)
有興趣的同學可以看我寫的:SpringCloud版本Hoxton SR5 --- 第一講:認識 先認識認識SpringCloud的一些基本知識。 先講一下原理: 首先在傳統項目中,一臺服務器看日誌,還算方便。但是在分佈式架構的系統中多
原创 Docker之Zipkin服務端部署,及整合RabbitMq、Elasticsearch
--------------------------------- 可愛的分割線 ------------------- 引用我寫的:SpringCloud版本Hoxton SR5 --- 第一講:認識 可以先了解一下 SpringClo
原创 SpringCloud版本Hoxton SR5 --- 第八講:Sleuth 分佈式鏈路跟蹤 整合Zipkin + Elasticsearch持久化
傳送門:SpringCloud版本Hoxton SR5 --- 第一講:認識 先看Sleuth、Zipkin、Elasticsearch 可以完成的功能,或者說他在項目中的定位和作用。 Sleuth比較正式的一些功能描述:(上面那篇文
原创 docker之Elasticsearch鏡像安裝及運行、整合Zipkin
鏡像官網:https://hub.docker.com/ 拉取最新版本的Elasticsearch服務(具體指定版本,可以去上面提供的官網找到): docker pull elasticsearch 這時候會出一個報錯問題(意思
原创 在SpringCloud的項目,避不開的Seesion的登錄問題
橫看成嶺側成峯,遠近高低各不同。 不識廬山真面目,只緣身在此山中。 讓你用最輕鬆的方式,不說學會,至少能懂什麼叫springcloud及其組件: SpringCloud版本Hoxton SR5 --- 第一講:認識 接下來,就好好剖析
原创 spring講解一:爲什麼tomcat可以運行SpringMvc項目?對比使用純java代碼 和 純xml配置,如何啓動SpringMvc項目。
爲什麼tomcat會調用java代碼?tomcat和java代碼是兩個獨立的個體,他們如何最後達到tomcat可以運行java代碼的呢? 爲什麼tomcat運行的是Springmvc項目的代碼?爲什麼現在的項目都離不開Springmvc?