原创 digester使用

1.   概述 解析XML一直都是編寫程序的頭疼問題,不是因爲它難,而是因爲各種地方需要對解析XML的結果要求不同,XML解析和業務邏輯融合在一起,所以每次解析時都感覺是從頭開始,沒有一套好用的類庫。   在大多數應用系統中,都需

原创 正則表達式學習

正則表達式 1.判斷ip地址,有點小缺陷,不影響:(2[5][0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4

原创 簡析TCP的三次握手與四次分手

TCP是什麼? 具體的關於TCP是什麼,我不打算詳細的說了;當你看到這篇文章時,我想你也知道TCP的概念了,想要更深入的瞭解TCP的工作,我們就繼續。它只是一個超級麻煩的協議,而它又是互聯網的基礎,也是每個程序員必備的基本功。首先來看

原创 四層和七層負載均衡的區別

(一)   簡單理解四層和七層負載均衡:   ① 所謂四層就是基於IP+端口的負載均衡;七層就是基於URL等應用層信息的負載均衡;同理,還有基於MAC地址的二層負載均衡和基於IP地址的三層負載均衡。 換句換說,二層負載均衡會通過一個

原创 SSL卸載技術對於HTTPS應用的優化與思考

迅猛發展的互聯網爲我們提供了豐富的信息資源,在帶來便利的同時也影響着人們工作和生活方式。而讓我們無法忽視的是,在開放的互聯網所帶來的繁榮背後,同時也潛藏着安全方面的隱患。隨着人們對網絡的依賴愈漸加深,各種加密技術應運而生,用以保障網絡信

原创 淘寶開源Key/Value結構數據存儲系統Tair技術剖析

作者 餘剛 發佈於 2010年9月8日 Tair是由淘寶網自主開發的Key/Value結構數據存儲系統,在淘寶網有着大規模的應用。您在登錄淘寶、查看商品詳情頁面或者在淘江湖和好友“搗漿糊”的時候,都在直接或間接地和Tair

原创 java消息機制

1、問: 什麼是 Java 消息服務? 答: Java 消息服務(Java Message Service,JMS) API 是一個用於訪問企業消息傳遞系統的 API。是 Java 2 Platform, Enterprise(J2EE

原创 synchronize深入理解

synchronized 關鍵字,代表這個方法加鎖,相當於不管哪一個線程A每次運行到這個方法時,都要檢查有沒有其它正在用這個方法的線程B(或者C D等),有的話要等正在使用這個方法的線程B(或者C D)運行完這個方法後再運行此線程A,沒

原创 HTTP 代理原理及實現(一)

Web 代理是一種存在於網絡中間的實體,提供各式各樣的功能。現代網絡系統中,Web 代理無處不在。我之前有關 HTTP 的博文中,多次提到了代理對 HTTP 請求及響應的影響。今天這篇文章,我打算談談 HTTP 代理本身的一些原理,以及

原创 java可重入鎖

目錄 什麼是可重入鎖爲什麼要可重入如何實現可重入鎖有不可重入鎖嗎demo代碼展示參考文章 1 . 什麼是可重入鎖 鎖的概念就不用多解釋了,當某個線程A已經持有了一個鎖,當線程B嘗試進入被這個鎖保護的代碼段的時候.就會被阻塞.而鎖的操

原创 Concurrent and Parallel Programming

What's the difference between concurrency and parallelism? Explain it to a five year old. Concurrent = Two queues

原创 高併發網站更新數據庫數據比較高效的方式

看下高併發網站更新數據的方式是如何做的?如下是收集cnblogs博主的文章。 很多Web系統的瓶頸在網絡IO,所以很多系統都採用多Web服務器負載均衡,雙DB做雙機熱備(其實就是隻有一個DB,兩臺只有一臺真正工作,死掉一臺另一臺頂上)的方

原创 Sun JVM 年輕代和老年代垃圾回收都需要暫停JVM

The Young Generation is where all new objects are allocated and aged. When the young generation fills up, this causes

原创 Shell入門

從程序員的角度來看, Shell本身是一種用C語言編寫的程序,從用戶的角度來看,Shell是用戶與Linux操作系統溝通的橋樑。用戶既可以輸入命令執行,又可以利用 Shell腳本編程,完成更加複雜的操作。在Linux GUI日益完善的今

原创 HTTP 代理原理及實現(二)

在上篇《HTTP 代理原理及實現(一)》裏,我介紹了 HTTP 代理的兩種形式,並用 Node.js 實現了一個可用的普通 / 隧道代理。普通代理可以用來承載 HTTP 流量;隧道代理可以用來承載任何 TCP 流量,包括 HTTP 和