原创 「阿里面試系列」搞懂併發編程,輕鬆應對80%的面試場景

作爲一個合格的Java程序員,必須要對併發編程有一個深層次的瞭解,在很多互聯網企業都會重點考察這一塊。可能很多工作3年以上的Java程序員對於這一領域幾乎沒有太多研究。所以在接下來內容中,我會將併發編程整個領域由淺到深做非常全面的

原创 面試中考官會問:Kafka爲什麼速度那麼快?

Kafka的消息是保存或緩存在磁盤上的,一般認爲在磁盤上讀寫數據是會降低性能的,因爲尋址會比較消耗時間,但是實際上,Kafka的特性之一就是高吞吐率。即使是普通的服務器,Kafka也可以輕鬆支持每秒百萬級的寫入請求,超過了大部分

原创 記錄Spring Cloud應用在阿里雲架構部署

常用的Spring Cloud體系架構 系統部署採用阿里雲平臺,採用的技術架構爲SpringCloud. 採用在線阿里雲架構製圖工具: Freedgo Design 地址:https://www.freedgo.com, 具體架構

原创 阿里大佬帶你,深入理解線程池底層原理

線程池 爲什麼要使用線程池 在實際使用中,線程是很佔用系統資源的,如果對線程管理不善很容易導致系統問題。 因此,在大多數併發框架中都會使用線程池來管理線程,使用線程池管理線程主要有如下好處: (1)降低資源消耗。通過複用已存在的線

原创 微服務技術選型之路

本文以筆者個人經歷講述關於微服務方面的技術選型和相關知識點。微服務模式的項目從初建到上線部署應用,每一個環節都會涉及到相當多的技術細節(上線後的性能調優更需要)。本文着重介紹一套微服務搭建流程中面臨的一些技術選型,戰略性的技術方案

原创 死磕 java同步系列之自己動手寫一個鎖Lock

問題 (1)自己動手寫一個鎖需要哪些知識? (2)自己動手寫一個鎖到底有多簡單? (3)自己能不能寫出來一個完美的鎖? 簡介 本篇文章的目標一是自己動手寫一個鎖,這個鎖的功能很簡單,能進行正常的加鎖、解鎖操作。 本篇文章的目標二是

原创 死磕 java集合之DelayQueue源碼分析

問題 (1)DelayQueue是阻塞隊列嗎? (2)DelayQueue的實現方式? (3)DelayQueue主要用於什麼場景? 簡介 DelayQueue是java併發包下的延時阻塞隊列,常用於實現定時任務。 繼承體系 從

原创 Dubbo 2.7.1 踩坑的我,你踩過嗎?

Dubbo 2.7 版本增加新特性,新系統開始使用 Dubbo 2.7.1 嚐鮮新功能。使用過程中不慎踩到這個版本的 Bug。 系統架構 Spring Boot 2.14-Release + Dubbo 2.7.1 現象 Dubb

原创 作爲一技術人員,面試前都需要做哪些準備?

前言 面試前對目標公司,崗位要求及面試流程有所瞭解,這樣纔可以有針對性的突破,我們來看以下幾個方面,相信可以幫助大家解決大部分求職迷茫的問題。 第一,常見的技術人員發展路徑/和競爭要求。 第二,技術面試一般都有哪些流程? 第三,如

原创 雜談 什麼是僞共享(false sharing)?

問題 (1)什麼是 CPU 緩存行? (2)什麼是內存屏障? (3)什麼是僞共享? (4)如何避免僞共享? CPU緩存架構 CPU 是計算機的心臟,所有運算和程序最終都要由它來執行。 主內存(RAM)是數據存放的地方,CPU 和主

原创 SpringCloud之旅第一篇-微服務概念

目錄 一、單體架構的問題 二、微服務出現 三、微服務架構圖 四、優缺點 五、技術點 六、解決方案 回到頂部 一、單體架構的問題 微服務爲什麼會出現?在學習Springboot的時候知道Springboot極大的簡化了我們的開發,我

原创 Java的內部類真的那麼難以理解

01 前言 昨天晚上,我把車停好以後就回家了。回家後才發現手機落在車裏面了,但外面太冷,冷到骨頭都能感受到寒意——實在是不想返回一趟去取了(小區的安保還不錯,不用擔心被砸車玻璃),於是打定主意過幾個小時的“世外桃源”生活——別人

原创 互聯網架構,究竟爲啥要做服務化?

“微服務架構”的話題非常之火,很多朋友都在小窗我,說怎麼做服務化?解答“怎麼做”之前,先得了解“爲什麼做”。 畫外音:做技術千萬不能是這種思路,“別人都在做,所以我們也要搞”。 並不是所有的業務都適合“服務化”,互聯網高可用架構,

原创 從事Java工作兩年了,工作高不成低不就,如何快速的提升自己?

本文列出了當今計算機軟件開發和應用領域最重要十種關鍵技術排名,如果你想保證你現在以及未來的幾年不失業,那麼你最好跟上這些技術的發展。雖然你不必對這十種技術樣樣精通,但至少應該對它們非常熟悉,另外,小編還給大家準備了一套燭光學院VIP的Ja

原创 數據庫語句優化

在MySQL數據庫怎麼加快查詢速度,優化查詢效率,主要原則就是應儘量避免全表掃描,應該考慮在where及order by 涉及的列上建立索引。 建立索引不是建的越多越好,原則是: 第一:一個表的索引不是越多越好,也沒有一個具體的數