原创 JAVA內存模型 VS JVM運行時數據區

JVM運行時數據區 線程共享:所有線程能訪問這塊內存數據,隨虛擬機或者GC而創建和銷燬 線程獨佔:每個線程都會有他獨立的空間,隨線程生命週期而創建和銷燬 線程共享部分又包含方法區和堆內存 方法區:用來存放類信息、常量、

原创 多線程併發編程之Synchronized原理解析

Synchronized原理解析 synchronized(this) { i++; } 思考這三個問題? this對象加鎖的狀態如何記錄? 狀態被記錄到this對象裏面了嗎? 若鎖佔用,線程掛起;釋放鎖時,喚醒掛起的

原创 JVM性能篇之類加載機制

類加載機制 運行時數據區 類生命週期 類加載器 類加載器負責裝入類,搜索網絡、jar、zip、文件夾、二進制數據、內存等指定位置的類資源。 一個java程序運行,最少有三個類加載器實例,負責不同類的加載。 驗證問題: 查看

原创 高併發網絡編程之NIO非阻塞網絡編程

NIO非阻塞網絡編程 始於Java1.4,提供了新的JAVA IO操作非阻塞API。用意是替代Java IO和Java Networking相關的API。 三個核心組件: Buffer緩衝區 Channel通道 Selector

原创 JVM性能篇之垃圾回收機制

垃圾回收機制 自動垃圾收集 自動垃圾收集是查看堆內存,識別正在使用哪些對象以及哪些對象未被刪除以及未使用對象的過程。 使用中的對象或引用的對象意味着程序的某些部分仍然維護指向該對象的指針。 程序的任何部分都不再引用未使用的對象或未

原创 Nginx配置技巧

原文鏈接:https://segmentfault.com/a/1190000000437323 本文記錄了一些nginx作爲反向代理和文件服務器的配置技巧和解決方案 Nginx作爲文件服務 避

原创 Spring學習筆記

好記憶不如爛筆頭, 能記下點什麼, 就記下點什麼, 方便後期的鞏固 Spring介紹 Spring 是一個開源框架,是一個分層的 JavaEE 一站式框架。 所謂一站式框架是指 Spring 有 JavaEE 開發的每一層解決方案。 W

原创 JAVA多線程基礎

什麼是線程: --線程是進程內的執行單元,是進程裏面更小的調度單元 進程的切換是非常重量級的操作 java當中建立了一個線程,會同等的映射到操作系統層面,所以跟操作系統上的線程是等價的 線程的基本操作 新建線程: Thread t1 =