原创 SpringMVC定時任務--Quartz定時任務框架介紹和Cron表達式詳解

在JavaEE系統中,我們會經常用到定時任務,比如每天凌晨生成前天報表,每一小時生成彙總數據等等。 我們可以使用java.util.Timer結合java.util.TimerTask來完成這項工作,但時調度控制非常不方便,並且我們需要大

原创 Linux 高可用(HA)集羣基本概念詳解二

四、高可用集羣的分類    1.雙機熱備(Active/Passive) 官方說明:Two-node Active/Passive clusters using Pacemaker and DRBD are a cost-effecti

原创 Linux 高可用(HA)集羣基本概念詳解一

目錄: 一、高可用集羣的定義 二、高可用集羣的衡量標準 三、高可用集羣的層次結構 四、高可用集羣的分類 五、高可用集羣常用軟件 六、共享存儲 七、集羣文件系統與集羣LVM 八、高可用集羣的工作原理 一、高可用集羣的定義   高可用集羣

原创 JVM虛擬機內存模型與垃圾回收與JVM調優實踐

花了幾天的時間整理學習的筆記,分享給大家。 HotSpot 虛擬機內存模型 10種垃圾回收算法的講解 JVM調優實踐  

原创 JVM類加載機制與雙親委派模型及其破壞的問題

1、JVM類加載機制 2、雙親委派模型 3、雙親委派模型破壞,JDBC,Tomcat,原因解釋。 以下是整理的筆記。(請略過64,65)

原创 修改Spring默認的單例模式

背景 在我們的項目中,通過Spring來管理業務邏輯Bean,但是Spring Bean的作用域默認是單例,而有時候我們的業務邏輯Bean不是線程安全的,所以需要將Spring Bean改爲多例模式。 分析 爲單個Bean設置單例或者

原创 零拷貝技術原理詳解

首先聲明一個概念,通常說的零拷貝技術準確來說應該表達爲:用戶態零拷貝技術。 一、什麼是零拷貝技術? 1.首先明確計算機數據傳輸過程 寫一個小程序,完成一個從文件中讀取數據,並傳輸到網絡上的操作。 首先我們在操作系統中找到這個文件,然後把數

原创 Spring Boot入門教程

深入學習微框架:Spring Boot Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置

原创 java.lang.OutOfMemoryError: PermGen space JVM內存參數配置

一、常見的Java內存溢出有以下三種:   1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出JVM在啓動的時候會自動設置JVM Heap的值,其初始空間(即

原创 Tomcat架構詳解(一)

下面談談對Tomcat架構的理解 總體架構: 面向組件架構基於JMX事件偵聽1)面向組件架構 tomcat代碼看似很龐大,但從結構上看卻很清晰和簡單,它主要由一堆組件組成,如Server、Service、Connector等,並基於JMX

原创 Spring整合ActiveMQ 實現消息服務

Spring整合JMS——基於ActiveMQ實現(一) 1.1     JMS簡介        JMS的全稱是Java Message Service,即Java消息服務。它主要用於在生產者和消費者之間進行消息傳遞,生產者負責產生

原创 MQ入門簡介

MQ簡介: MQ全稱爲Message Queue, 消息隊列(MQ)是一種應用程序對應用程序的通信方法。應用程序通過寫和檢索出入列隊的針對應用程序的數據(消息)來通信,而無需專用連接來鏈接它們。消息傳遞指的是程序之間通過在消息中發送數據進

原创 Kafka教程之入門介紹

介紹 Kafka是一個分佈式的、可分區的、可複製的消息系統。它提供了普通消息系統的功能,但具有自己獨特的設計。這個獨特的設計是什麼樣的呢? 首先讓我們看幾個基本的消息系統術語: Kafka將消息以topic爲單位進行歸納。將向Ka

原创 Tomcat架構詳解(二)

前幾天分析了一下Tomcat的架構和啓動過程,今天開始研究它的運轉機制。Tomcat最本質就是個能運行JSP/Servlet的Web服務器,因此最典型的應用就是用戶通過瀏覽器訪問服務器,Tomcat接收到請求後轉發給Servlet,由Se

原创 Tomcat架構詳解(三) Request和Response處理的全過程

從Tomcat源碼分析(二)可知,用戶的一個請求會經過n個環節的處理,最後到達開發人員寫的Servlet,傳給Servlet也就是HttpServletRequest和HttpServletResponse,因此可以認爲這一路走下來無非就