深入剖析tomcat(一)
- 伺服器端建立serverSocket物件,監聽指定ip、指定埠的請求
- 客戶端建立socket物件(指定需要請求的伺服器端的ip和埠),發出請求
- 伺服器端接收到客戶端的請求,建立與之相對應的socket物件,連結建立。serverSocket繼續監聽其他請求
- 客戶端通過socket的getOutputStram方法發出請求
- 伺服器端通過socket的getInputStream方法接收並分析請求
- 伺服器端通過socket的getOutputStream方法發出響應
- 客戶端通過socket的getInputStream方法接收並分析請求
- 連結斷開
相關推薦
深入剖析tomcat(一)
伺服器端建立serverSocket物件,監聽指定ip、指定埠的請求 客戶端建立socket物件(指定需要請求的伺服器端的ip和埠),發出請求 伺服器端接收到客戶端的請求,建立與之相對應的socket物件,連結建立。serverSocket繼續監聽其他請求 客戶端通過socket的getOutputSt
深入理解 Tomcat(一)原始碼環境搭建和 How Tomcat works 原始碼
轉載自:https://blog.csdn.net/qq_38182963/article/details/78660767 為了瞭解 tomcat 的原理, 樓主費勁心思, 從圖書館借來了絕版的<>, 下載了該書中的例項原始碼, 由於該書已經
深入剖析Tomcat(2)
之前根據第一章的內容和程式碼寫了一個部落格,發現在看這個書的時候寫部落格和跑程式碼是比純看書收穫大的多得多的,因此還是很開心自己沒有懶惰。 在看第二章的時候,我選擇了直接看程式碼,這樣就相當於同時做了複習和預習,然後看第二章的時候就可以跳過很多已知內容了。 第二章一共有兩個例程,主要是引入了java包裡面
深入理解 Tomcat(六)原始碼剖析Tomcat 啟動過程----生命週期和容器元件
好了,今天我們繼續分析 tomcat 原始碼, 這是第六篇了, 上一篇我們一邊 debug 一邊研究了 tomcat 的類載入體系, 我覺得效果還不錯, 樓主感覺對 tomcat 的類載入體系的理解又加深了一點. 所以, 我們今天還是按照之前的方式來繼續看原
深入理解JavaScript(一)
odi 可能 方式 == tin mini 單詞 包括 fun 編寫高質量 JavaScript 代碼的基本要點 轉載:http://wiki.jikexueyuan.com/project/javascript-depth-understanding/start-jav
nginx與tomcat(一)Nginx概述
一.Nginx概述 是什麼:Nginx是一個http server 特點: 反向代理 負載均衡 動靜態資源分離 虛擬主機 什麼時候用: 當網站的訪問量到達一定程度,單個伺服器不能
深入理解overlayfs(一):初識
Overlayfs是一種類似aufs的一種堆疊檔案系統,於2014年正式合入Linux-3.18主線核心,目前其功能已經基本穩定(雖然還存在一些特性尚未實現)且被逐漸推廣,特別在容器技術中更是勢頭難擋。本系列博文將首先介紹overlayfs的基本概念和應用場景,然後通過若干例項描述它的使用方式,
Android 如何從應用深入到Framework (一)
今天,明哥想跟大家聊聊,如何從應用開發,轉向Framework開發。 系統應用開發,現在來說,已經開始脫離系統,單獨拿出來開發,系統定製介面,已提供給應用呼叫,用來增強功能。 原生的桌面,撥號,設定,已經沒法做出差異化優勢,因此都費盡心機,來進行應用深度開發。 對於之前
深入理解JVM(一)——基本原理(掃盲篇)
前言 JVM一直是java知識裡面進階階段的重要部分,如果希望在java領域研究的更深入,則JVM則是如論如何也避開不了的話題,本系列試圖通過簡潔易讀的方式,講解JVM必要的知識點。 執行流程 我們都知道java一直宣傳的口號是:一次編譯,到處執行。那麼它如何實現的
深入理解 Tomcat(三)Tomcat 底層實現原理
轉載自:https://blog.csdn.net/qq_38182963/article/details/78660777 又是一個週末,這篇文章將從一個簡單的例子來理解tomcat的底層設計; 本文將介紹 Java Web 伺服器是如何執行的, W
深入資料庫事務(一)資料庫事務
深入資料庫事務(一)資料庫事務 事務 事務(Transaction),一般是指要做的或所做的事情。在計算機術語中是指訪問並可能更新資料庫中各種資料項的一個程式執行單元(unit)。在計算機術語中,事務通常就是指資料庫事務。 概念 一個數據庫事務通常包含對資料
深入理解JVM(一)——物件的建立
物件的建立 物件的建立,在語言層面上,通常只是new這個關鍵字而已。(本章所討論的物件限於普通Java物件,不包括陣列和 Class物件)虛擬機器遇到new指令時: 檢查這個指令的引數是否能在常量池定位到一個類的符號引用。 檢查這個符號引用代表的類是否已被載入,解析,初
深入理解JVM(一)——執行時的資料區域
Java與C++的圍牆:記憶體動態分配,垃圾收集技術 程式計數器 當前執行緒所執行的位元組碼的行號指示器,通過改變這個計數器的值來選擇下一條執行的位元組碼指令,分支,迴圈,跳轉,異常處理,執行緒恢復等依賴計數器。 執行緒私有,唯一不會OutOfMemory的區域。 執行Jav
深入理解Plasma(一)Plasma 框架
這一系列文章將圍繞以太坊的二層擴容框架,介紹其基本執行原理,具體操作細節,安全性討論以及未來研究方向等。本篇文章作為開篇,主要目的是理解 Plasma 框架。 Plasma 作為以太坊的二層擴容框架,自從 2017 年被 Joseph Poon(Lightnin
深入解讀快取(一)——快取的力量
應用伺服器的效能優化,是網站開發最複雜,變化最多的地方。優化的手段,主要有:快取、叢集、非同步等等。從今天起,我們就來講講快取。 首先,我們來看幾個例子: 1、淘寶賣家瀏覽的商品集中在少部分 成交數多、評價良好的商品上; 2、百度搜索關鍵詞集中在少部分熱門詞彙上; 3、只有
Spring快取原始碼剖析:(一)工具選擇
從本篇開始對Spring 4.3.6版本中Cache部分做一次深度剖析。剖析過程中會對其中使用到的設計模式以及原則進行分析。相信對設計內功修煉必定大有好處。 一、環境及工具 IntelliJ IDEA 2016.2 JDK 1.8 MacOS 二、測試用程式碼 目錄整體結構是這個樣
自頂向下深入分析Netty(一)--預備知識
netty是基於Java NIO封裝的網路通訊框架,只有充分理解了Java NIO才能理解好netty的底層設計。Java NIO有幾個重要的概念Channel,Buffer,Selector。NIO是基於Channel和Buffer操作的,資料只能通過Buffer寫入到Channel或者從Chan
MongoDB深入學習系列(一)---開發環境配置及工具介紹
現在隨著網際網路應用的不斷髮展,傳統的關係型強事務型資料庫在某些要求不高的環境,高強度訪問情況下並不佔優,所以今天我們來研究一下記憶體資料庫中的Mongodb,MongoDB是文件型資料庫,他屬於記憶體資料庫,但是他也可以持久化到磁碟,所以根
Tomcat(一):簡介
一、概念 Tomcat 伺服器是一個開源的輕量級Web應用伺服器,在中小型系統和併發量小的場合下被普遍使用,是開發和除錯Servlet、JSP 程式的首選。二、原理 Tomcat結構圖:
深入瞭解Linux(一)
Linux的各個資料夾 每次當我使用linux的時候我都被一個個資料夾整懵逼,那麼多資料夾到底是怎麼分類的呢。今天終於有時間好好整理一下 /boot: 引導檔案存放目錄,核心檔案(vmlinuz),引導載入器(bootloader grub)都存放在這個目錄 /bin: 供所有使用者使用的基本命令