原创 JVM基礎之語法關鍵字的作用和原理(六)

1. new指令 new指令用於在內存中分配空間,並執行對象的構造方法。編譯後的字節碼指令如下,創建新的對象的過程包括三個步驟。 // 創建新的Demo對象 Demo demo = new Demo(); // 經過編譯後的字節

原创 JVM基礎之虛擬機垃圾回收詳解(五)

程序所使用的內存空間不斷擴大,是GC算法演進的根本原因。 一、垃圾回收器算法總覽 垃圾回收器(Garbage Collection)是Java虛擬機(Java Virtual Machine),用於清理堆空間(Heap Spa

原创 計算機原理之網絡協議(一)

一、五層網絡模型 1. 主要的網絡協議 以下每層列出的協議,都能夠在代碼或者操作系統中使用和管理,當程序進行網絡通信時,需要由這些協議共同協作完成。 應用層,包括HTTP、TLS(SSL3.1)、DNS、Thrift、FTP等

原创 Java基礎之線程機制(一)

要想學問大,就要多讀、多抄、多寫。要記住,一個人想要在學業上有所建樹,一定得堅持這樣做卡片、摘記。 一、線程的狀態 線程包括7種狀態:創建(new)、就緒(runable)、運行(running)、阻塞(blocked)、休眠

原创 JVM基礎之垃圾回收和內存分配(二)

“合抱之木,生於毫末;千里之行,始於足下;九層之臺,起於壘土。” 一、堆內對象引用分析 引用計數法 引用計數法(Reference Counting)的實現簡單,判定效率高,目前是python使用的GC算法。 其爲對象添

原创 JVM基礎之內存空間詳解(四)

堆空間中進行的垃圾回收,是影響虛擬機性能的主要原因。自動垃圾回收機制是一把雙刃劍,全面瞭解它才能掌握它。 一、堆空間參數(JVM啓動參數) 以下參數僅適用於CMS、Parallel、Serial垃圾回收器。 非堆內存(永

原创 微服務架構體系之總覽(一)

一、服務的持續集成部署 自動化流水線 動態分配的機器資源 二、服務間通信的模式 服務發現與負載均衡 異步和重試策略 限流、熔斷、降級的斷路器機制 性能與安全管理 三、全局管理中心 統一授權管理 全局動態配置管理 定時任務

原创 英文基礎之音標(一)

一、元音 英文中有7個短元音、5個長元音、8個雙元音, 短[ɪ] 長[i:] hit /hɪt/ 短音更貼近“A”的發音 heat /hi:t/ 長音更貼近“一”的發音 短[ʊ] 長[u:] good /gʊd/ 短音

原创 計算機網絡基本原理(一)

一、五層網絡模型 1. 主要的網絡協議 以下每層列出的協議,都能夠在代碼或者操作系統中使用和管理,當程序進行網絡通信時,需要由這些協議共同協作完成。 應用層,包括HTTP、TLS(SSL3.1)、DNS、Thrift、FTP等

原创 Spring Cloud Gateway 網關服務教程(一)

本文使用的 Spring Cloud 版本爲 2.1.2.RELEASE,如下: <dependency>     <groupId>org.springframework.cloud</groupId>     <artif

原创 JVM基礎之堆空間詳解(四)

堆空間中進行的垃圾回收,是影響虛擬機性能的主要原因。自動垃圾回收機制是一把雙刃劍,全面瞭解它才能掌握它。 一、內存空間參數(JVM啓動參數) 非堆內存(永久區)參數 -XX:PermSize 非堆內存初始大小值 -XX:Ma

原创 Java線程基礎(一)

Java線程基礎(一) 要想學問大,就要多讀、多抄、多寫。要記住,一個人想要在學業上有所建樹,一定得堅持這樣做卡片、摘記。 一、線程的狀態 線程包括7種狀態:創建(new)、就緒(runable)、運行(running)、阻塞(b

原创 JVM基礎之內存空間和異常(一)

“合抱之木,生於毫末;千里之行,始於足下;九層之臺,起於壘土。” 一、虛擬機運行時數據區 程序計數器 是一塊較小的內存空間,可以看作是當前線程執行的字節碼的行號指示器。根據虛擬機的概念模型,字節碼解釋器就是通過改變這個計數器

原创 JVM基礎之垃圾回收器和內存分配(二)

“合抱之木,生於毫末;千里之行,始於足下;九層之臺,起於壘土。” 一、堆內對象引用分析 引用計數法 引用計數法(Reference Counting)的實現簡單,判定效率高,目前是python使用的GC算法。 其爲對象添加一

原创 JVM基礎之類加載機制(三)

代碼編譯後產生字節碼而不是本地機器碼,是存儲格式的一小步,卻是編程語言的一大步。 一、類加載機制概述 虛擬機將描述類的.class文件加載到內存,並對數據進行校驗,轉換解析和初始化,最終生成可以被虛擬機直接使用的對象。Java中類