原创 Java中對象的訪問

1. 句柄訪問: Java堆中將會劃分出一塊內存來作爲句柄池,reference中存儲的就是對象句柄位置,而句柄中包含了對象實例數據與類型數據各自的具體地址信息。 2. 直接指針訪問: 如果使用直接指針訪問,那麼Java堆

原创 Hystrix 的執行原理

Hystrix核心思想是資源隔離 + 限流。 步驟如下: 1、創建 command Hystrix會根據調用請求創建command,通過實現這兩個HystrixCommand,HystrixObservableCommand接口創建。 2

原创 Kubernetes中Pod管理

Kubernetes中Pod管理對象 pod的管理主要有RC(RS)、Deployment、StatefulSet、DaemonSet和Job(CronJob)等 Replication Controller Replication Co

原创 Hadoop 集羣配置

<!-- 指定HDFS中NameNode的地址 --> <property>     <name>fs.defaultFS</name>     <value>hdfs://hadoop100:9000</value> </propert

原创 spring boot 數據校驗

spring boot註解校驗參數   註解 作用類型 解釋 @NotNull 任何類型 屬性不能爲null @NotEmpty 集合 集合不能爲null,且size大於0 @NotBlank 字符串、字符 字符類不能爲null,且去掉空

原创 Go語言的線程模型

概述:        Go 語言相比Java等有天然的優勢,支持高併發。Go 語言內置了 goroutine 機制, 更好的利用多核處理器資源。 三種線程模型:        1.內核級線程模型             用戶線程與操作系統

原创 Kubectl 常用命令大全

基礎命令:create,delete,get,run,expose,set,explain,edit create 命令:根據文件或者輸入來創建資源 # 創建Deployment和Service資源 $ kubectl create

原创 AQS的原來分析

AQS:         java中的AbstractQuenedSynchronizer抽象的隊列式同步器 AQS的兩種資源共享方式: 1.Exclusive:獨佔,只有一個線程能執行,如ReentrantLock 2.Share:共享

原创 Git命令的使用

1.配置用戶名及郵箱 git config --global user.name "zhao" git config --global user.email [email protected] 2. 創建Git倉庫 #初始化當前目錄

原创 ClassLoader的原理

1 ClassLoader工作機制 1.1 ClassLoader作用 尋找類字節碼文件並構造出類在JVM內部表示的組件.負責運行時查找和裝入Class字節碼文件 1.2 裝載步驟 1.2.1 裝載 查找裝載class字節碼文件 1.2.

原创 OOM異常

一,jvm內存區域 1,程序計數器 一塊很小的內存空間,作用是當前線程所執行的字節碼的行號指示器。 2,java棧 與程序計數器一樣,java棧(虛擬機棧)也是線程私有的,其生命週期與線程相同。通常存放基本數據類型,對象引用(一

原创 設計模式概述

1 單例(Singleton)模式 某個類只能生成一個實例,該類提供了一個全局訪問點供外部獲取該實例,其拓展是有限多例模式。 2 原型(Prototype)模式 將一個對象作爲原型,通過對其進行復制而克隆出多個和原型類似的新實例。 3 工

原创 CountDownLatch的使用

package com.example.sina.thread; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorServic

原创 Mybatis的動態代理

1、Spring 通過 MybatisProperties 配置MybatisAutoConfiguration 2、創建DefaultSqlSessionFactory,從而創建SqlSession 3、動態代理類的生成,sql語

原创 CyclicBarrier使用

package com.example.sina.thread; import java.util.concurrent.*; public class CyclicBarrierTest {          public static