原创 Java實現一個HashMap

package Map; import java.util.ArrayList; import java.util.List; public class HashMap<K,V> implements Map<K,V>{

原创 Java AIO編程入門

服務器端: public class Server { //線程池 private ExecutorService executorService; //線程組 private Asynchrono

原创 Dubbo服務的運行方式(使用maven構建dubbo可執行的jar包)

1.使用Servlet容器運行(Tomcat Jetty等)—–不建議 缺點:增加複雜性(端口,管理) 浪費資源(內存) 2.自建Main方法來執行(Spring容器) —不建議(僅限本地調試) 缺點:Dubbo本身的高級特性

原创 Java核心技術之反射

1 Java的類加載 類的加載指的是將類的.class文件中的二進制數據讀入到內存中,將其放在運行時數據區的方法區內,然後在堆區創建一個java.lang.Class對象,用來封裝類在方法區內的數據結構。類的加載的最終產品是位於

原创 Java多線程基礎之對象鎖的同步與異步

同步:synchronized 同步的概念就是共享,如果不是共享的資源,就沒有必要進行同步。 異步:asynchronized 異步的概念就是獨立,相互之間不受到任何制約。 同步的目的就是爲了線程安全,對於線程安全來

原创 Java多線程之深入理解synchronize關鍵字

synchronize鎖重入: 關鍵字synchronize擁有鎖重入的功能,也就是在使用synchronize時,當一個線程的得到了一個對象的鎖後,再次請求此對象是可以再次得到該對象的鎖。 當一個線程請求一個由其他線程持有的鎖

原创 Java性能優化

1、java的性能優化 1、減少gc的壓力,優先級比較低的線程,它是一個守護線程 回收堆內存。 2、儘量的避免new操作 2、String,StringBuffer,StringBuilder String 不能變長度 jvm

原创 第四課 如何構建一個多線程NIO系統

NIO提高工作效率的方式 註冊多個selector 註冊多個ServerSocketChannel

原创 第八課 protocol buffer實戰

1.protocol buff是一種協議,是谷歌推出的一種序列化協議 2.Java序列化協議也是一種協議 3.兩者的目的是,將對象序列化成字節數組,或者說是二進制數據 java序列化示例 public class JAVA2Byte

原创 Tomcat7性能優化

目的 通過優化tomcat提高網站的併發能力。當我們今天我們將這個優化講完之前 優化完成後看能達到什麼層次。 服務器資源 服務器所能提供CPU、內存、硬盤的性能對處理能力有決定性影響。 硬件我們不說了 這個方面是錢越多

原创 Zookeeper Watcher核心機制·安全認證(ACL)·實際應用

zookeeper有watch事件,是一次性觸發的,當watch監視的數據發生變化時,通知設置了該watch的client,即watcher。 同樣,其watcher是監聽數據發送了某些變化,那就一定會有相應的事件類型和狀態類型 事件類型

原创 Mysql性能調優

目標 瞭解什麼是優化 掌握優化查詢的方法 掌握優化數據庫結構的方法 掌握優化MySQL服務器的方法 什麼是優化? 合理安排資源、調整系統參數使MySQL運行更快、更節省資源。 優化是多方面的,包括查詢優化、更新優化

原创 第七課 Netty學習之心跳

idleStateHandler 用來檢測會話狀態 心跳其實就是一個普通的請求,特點數據簡單,業務也簡單 心跳對於服務端來說,定時清除閒置會話 channelclose(netty3) 心跳對客戶端來說,用來檢測會話是否斷開,是否重連!

原创 第十課 自定義數據包協議

客戶端發送到服務端兩條數據 give me a coffee give me a tea 服務端收到的數據: - give me a coffeegive me a tea 粘包現象 - give me - a coff

原创 Mysql索引優化

索引問題 索引是數據庫優化中最常見也 最重要的手段之一,通過索引通常可以幫助用戶解決大多數的SQL性能問題。 (Mysql的優化很大一部分都集中