原创 apache 2.2 中文文檔

apache 2.2 中文文檔

原创 Java分佈式鎖的四種實現方式(Redis,Zookeeper,Mysql,Memcached)

1,使用Redis做分佈式鎖: 利用SETNX添加一個鎖,並設置鎖的釋放時間。 問題: a,某個機器實例的任務執行時長超時了,超過了鎖釋放的時間,會造成其他機器實例獲取到該鎖並執行任務。任務被同時執行。 b,Redis的部署模式:如果是單

原创 Redis 一些最佳實踐

1,key儘量簡短,且區分業務。 2,redis的Key很昂貴,如果有大量的Key,考慮例如:Hash,或者進行業務上的合併。 3,key的過期時間儘量錯開,防止集中過期,Redis會出現短暫的卡頓。 4,如果需要查找大量的Key,比如1

原创 vmware虛擬機常見優化方法和常見錯誤

  使用很簡單,建議參考虛擬機的幫助文檔。僅介紹一些優化方法   1)給虛擬機指定固定的最大物理內存    工具欄選擇“編輯”-“參數”-“內存”-可以根據實際的使用情況選擇“系統內存分配給虛擬機的方式”   2)刪除不用的虛擬設備  

原创 虛擬化技術

目前阿里巴巴主要是linux平臺,虛擬機使用的是linux的Xen(準虛擬化技術)。  常見四種虛擬化技術:  虛擬技術1-硬件分區:硬件資源被劃分成數個分區,每個分區享有獨立的CPU、內存,並安裝獨立的操作系統。主要用在大型服務器

原创 Jakarta Commnos lang學習

ReflectionToStringBuilder ReflectionToStringBuilder類是用來實現類中的toString()方法的類,它採用Java反射機制(Reflection), 通過reflection包中的Ac

原创 Linux load average 詳解

Linux load average:中文名:系統平均負載, 定義:在特定時間間隔內運行隊列中的平均進程數。 如果一個進程滿 足以下條件則其就會位於運行隊列中: 它沒有在等待I/O操作的結果 它沒有主動進入等待狀態(也就是沒有調用’w

原创 java 序列化的說明

當父類繼承Serializable接口,所有子類都可以被序列化 子類實現了Serializable接口,父類沒有,父類中的屬性不能序列化(不報錯,數據會丟失),但是子類中屬性人能正確序列化 如果序列化的屬性是對象,這個對象也必須實現Ser

原创 Java 內存泄露淺析

  Java使用有向圖的方式進行內存管理, 優點:可以消除引用循環的問題,管理內存精度高 缺點:效率低下(相比引用計數)。 什麼是Java中內存泄漏: 在Java中,內存泄漏就是存在一些被分配的對象,這些對象有下面兩個特點: <一

原创 Java中ASM框架詳解

  什麼是asm呢?asm是assembly的縮寫,是彙編的稱號,對於java而言,asm就是字節碼級別的編程。 而這裏說到的asm是指objectweb asm,一種.class的代碼生成器的開源項目. ASM是一套java字節碼生成架

原创 Java命令java, javac, jar

  java 用法:  (執行一個類) java [-選項] 類 [參數...] (執行一個jar文件(mainfest指定一個入口可執行類))     java [-選項] -jar jar文件 [參數...]   其中,可能的【

原创 JRE 與 JDK ,JVM Client Server瞭解

  JRE 與 JDK ,JVM Client Server瞭解 一、JRE: java runtime environment java 運行環境 JRE是運行java所需要的環境。包含JVM標準實現和JAVA核心類庫,以及java

原创 JVM運行時內存分配

Inside JVM運行時數據區  ============================================================================================ <一>:方法區:

原创 String.split() 需要注意的問題

  特殊的分割符號:| * + \ \\ 在使用String.split()方法分隔字符串時,分隔符如果是一些特殊字符,可能會得不到我們預期的結果。 jdk doc中說明 public String[] split(String reg

原创 Java 環境變量詳解

當我們在Windows系統上安裝jdk或者jre之後。 必須需要設置的兩個環境變量:Path, CLASSPATH Path 首先需要在Path變量上添加Java的命令的路徑:C:\Program Files\Java\jdk1.5.0