原创 JVM一:類加載過程詳解

  前言:我們都知道一個java程序運行要經過編譯和執行,但是這太概括了,中間還有很多步驟,今天來說說類加載。   學完類加載之後,java運行過程就可以分爲:編譯—>>>類加載—>>>執行。   類加載主要是由jvm虛擬機負責的,過

原创 Nginx之upstream的四種配置方式

1、輪詢(weight)   指定輪詢機率,weight和訪問比率成正比,用於後端服務器性能不均的情況。默認當weight不指定時,各服務器weight相同,每個請求按時間順序逐一分配到不同的後端服務器,如果後端服務器down掉,能自動

原创 Java中CAS詳解(悲觀鎖與樂觀鎖)

前言:在JDK1.5之前Java語言是靠synchronized關鍵字保證同步的,這會導致有鎖鎖機制存在以下問題: (1)在多線程競爭下,加鎖、釋放鎖會導致比較多的上下文切換和調度延時,引起性能問題。 (2)一個線程持有鎖會導致其它所

原创 線程與多線程(四)——線程調度

四、線程調度   線程調度管理器負責線程排隊和CPU在線程間的分配,並按線程調度算法進行調度。當線程調度管理器選中某個線程時,該線程獲得 CPU資源進人運行狀態。   線程調度是搶佔式調度,即如果在當前線程執行過程中個更高優先級的線程進

原创 Java設計模式——工廠模式詳解

一、概述 1.1使用場景。   在任何需要生成複雜對象的地方,都可以使用工廠方法模式, 直接用new可以完成的不需要用工廠模式。個人理解,重點就是這個複雜 (構造函數有很多參數)和是否可以直接用new。 二、工廠模式的五種寫法 2.1

原创 Nginx入門配置詳解

Nginx入門配置詳解   前言(必讀):Nginx (engine x) 是一個高性能的HTTP和反向代理服務器,在開發中很常用。本文講解Nginx常用配置,講解目錄如下:   一、配置虛擬主機     1.1通過端口區分不同虛擬主

原创 Java動態代理

一、概述   前言:動態代理在很多底層框架中都會用得到,比如在Spring中用到的動態代理。它的作用很簡單,就是將你要使用的類,重新生成一個子類或本類。這樣框架就可以利用這個新生成的類做一些事情,比如在該類的方法前後加一些代碼。這樣的話,

原创 JVM二:全面理解Java內存模型(JMM)及Java內存區域

一、計算機內存 1.1、計算機硬件內存架構。   計算機CPU(central processing unit)和內存的交互是最頻繁的,內存是我們的高速緩存區。用戶磁盤和CPU的交互,而CPU運轉速度越來越快,磁盤遠遠跟不上CPU的讀寫

原创 Java反射詳解

三、反射的使用 3.1獲取Class對象的三種方式。 3.1測試類: public class Example1 { public static void main(String[] args) { // 1.第

原创 HTTP三次握手四次揮手過程

一、HTTP協議三次握手過程 1.1名詞解釋。   SYN(Synchronous 位碼,表示建立聯機)   Seq(Sequence number 順序號碼)   ACK(Acknowledgement 確認值)   Ack(A

原创 Java反射完全詳解

三、反射的使用 3.1獲取Class對象的三種方式。 3.1測試類: public class Example1 { public static void main(String[] args) { // 1.第

原创 java中final關鍵字的真正作用

一、前言   final使得被修飾的變量”不變”,但是由於對象型變量的本質是“引用”,使得“不變”也有了兩種含義: (1)引用本身的不變, (2)引用指向的對象不變。 一、引用本身的不變: final StringBuffer a=

原创 Maven+Tomcat實現熱部署

前言:在我們開發中,項目修改後,需要重新部署到服務器上,一般過程就是先停止tomcat服務器,然後將修改過的class文件重新覆蓋到項目上,再啓動tomcat。或者是重新打war包,刪除tomcat上舊版本的項目和war,再將war放到t

原创 URLConnection和Socket和HttpClient的區別

一、URL通信和Socket的區別。       利用socket進行通信時,在服務器端運行一個socket通信程序。服務器端不停地監聽某個端口,等待客戶的連接申請,接到申請後建立連接並進行通信,所以,在socket通信方式中,服務器是主

原创 數據庫事務隔離級別及髒讀、不可重複讀、幻讀的理解

  開篇聲明,由於兩位大佬排版不夠美觀,然後又發現一些歧義,因此我集百家之所長,精心整理並排版良好,可放心閱讀。 http://blog.csdn.net/yuxin6866/article/details/52649048 http