原创 基礎篇--Web容器學習路徑

在開篇詞裏我提到要成長爲一名高級程序員或者架構師,我們需要提高自己知識的廣度和深度。你可以先突破深度,再以點帶面拓展廣度,因此我建議通過深入學習一些優秀的開源系統來達到突破深度的目的。 我會跟你一起在這個專欄裏深入學習 Web 容器 To

原创 開篇詞--爲什麼我們要學習Java虛擬機?

前不久我參加了一個國外程序員的講座,講座的副標題很有趣,叫做:“我如何學會停止恐懼,並且愛上 Java 虛擬機”。 這句話來自一部黑色幽默電影《奇愛博士》,電影描述了冷戰時期劍拔弩張的氛圍。 程序員之間的語言之爭又未嘗不是如此。寫系統語言

原创 java基礎篇--HashMap 底層實現原理是什麼?JDK8 做了哪些優化?

HashMap 是使用頻率最高的類型之一,同時也是面試經常被問到的問題之一,這是因爲 HashMap 的知識點有很多,同時它又屬於 Java 基礎知識的一部分,因此在面試中經常被問到。 本課時的面試題是,HashMap 底層是如何實現的?

原创 java基礎篇--如何手寫一個消息隊列和延遲消息隊列?

第一次聽到“消息隊列”這個詞時,不知你是不是和我反應一樣,感覺很高階很厲害的樣子,其實當我們瞭解了消息隊列之後,發現它與普通的技術類似,當我們熟悉之後,也能很快地上手並使用。 我們本課時的面試題是,消息隊列的使用場景有哪些?如何手動實現一

原创 如何實時生成縮略圖?

GraphicsMagick資料 ---------------------------------------------------------------------------- GraphicsMagick官網 http://w

原创 Java框架篇--底層源碼分析 Spring 的核心功能和執行流程?(上)

Spring Framework 已是公認的 Java 標配開發框架了,甚至還有人說 Java 編程就是面向 Spring 編程的,可見 Spring 在整個 Java 體系中的重要位置。 Spring 中包含了衆多的功能和相關模塊,比如

原创 微信朋友圈關於H5/小程序廣告轉化行爲數據接入說明文檔

一、 API 方案介紹............................................................................................................

原创 開篇詞:大廠技術面試“潛規則”

你好,我是你的 Java 面試課老師,擁有 10 多年大型系統設計、開發和調優經驗,熱衷於技術分享,是阿里雲社區的認證專家,騰訊社區年度最佳作者。 喜歡分享,跟我的個人經歷有關:因爲曾經喫過虧,所以想通過我的分享讓你少走更多的彎路。 爲

原创 java進階篇--MySQL 的優化方案有哪些?

性能優化(Optimize)指的是在保證系統正確性的前提下,能夠更快速響應請求的一種手段。而且有些性能問題,比如慢查詢等,如果積累到一定的程度或者是遇到急速上升的併發請求之後,會導致嚴重的後果,輕則造成服務繁忙,重則導致應用不可用。它對我

原创 java框架篇--底層源碼分析 Spring 的核心功能和執行流程?(下)

上一課時我們講了 Bean 相關的內容,它其實也是屬於 IoC 的具體實現之一,本課時我們就來講講 Spring 中其他幾個高頻的面試點,希望能起到拋磚引玉的作用,能爲你理解 Spring 打開一扇門。因爲 Spring 涉及的內容和知識

原创 java進階篇--如何保證接口的冪等性?常見的實現方案有哪些?

冪等性問題是面試中常見的面試問題,也是分佈式系統最常遇到的問題之一。在說冪等性之前,我們先來看一種情況,假如老王在某電商平臺進行購物,付款的時候不小心手抖了一下,連續點擊了兩次支付,但此時服務器沒做任何驗證,於是老王賬戶裏面的錢被扣了兩次

原创 java進階篇--聊聊設計模式,分別有哪些應用場景?

凡事對做過程序開發的同學來說,都知道設計模式的內容是非常豐富且非常有趣。我們在一些優秀的框架中都能找到設計模式的具體使用,比如前面 MyBatis 中(第 13 課時)講的那些設計模式以及具體的使用場景,但由於設計模式的內容比較多,有些常

原创 Scratch完美的初體驗

Scratch是由美國麻省理工學院MIT設計開發的圖形化少兒編程工具。通過圖形控件,小孩可以在不編寫任何代碼的情況下實現很多程序功能。從初步體驗來看,五六歲以上的小孩即可上手。Scratch使用了舞臺、角色概念,內置的人物、動物、玩具等對

原创 java進階篇--垃圾回收算法有哪些?

說到 Java 虛擬機不得不提的一個詞就是“垃圾回收”(GC,Garbage Collection),而垃圾回收的執行速度則影響着整個程序的執行效率,所以我們需要知道更多關於垃圾回收的具體執行細節,以便爲我們選擇合適的垃圾回收器提供理論支

原创 java進階篇--生產環境如何排查bug和優化 JVM?

通過前面幾個課時的學習,相信你對 JVM 的理論及實踐等相關知識有了一個大體的印象。而本課時將重點講解 JVM 的排查與優化,這樣就會對 JVM 的知識點有一個完整的認識,從而可以更好地應用於實際工作或者面試了。 我們本課時的面試題是,生