原创 四、Redis基礎命令--列表
1、列表類型內部是使用雙向鏈表(double linked list)實現的,所以想兩端添加元素特快,時間複雜度是O(1),獲取越接近兩端的元素速度越快。不過代價是通過索引訪問元素的速度會比較慢。 2、每個鍵最多能容納的字段數量與列表相
原创 七、Redis 基礎命令---任務隊列
1、優勢:松耦合 易於擴展 ,消費者可以擴展多個,分佈在不同的服務器中 2、LPUSH RPOP 3、BRPOP命令和RPOP相似,唯一區別:當列表中沒有元素時,BRPOP命令會一直阻塞住鏈接,知道有新
原创 Effective_java之二:慎用重載函數
每週寫一篇技術博客的願望一直沒實現, 從這周開始每週五晚10點是寫博客的時間 OOP的一個重要特性就是多態,實現多態的目的有多種途徑。比如:重載overload、重寫overwite、面向接口編程等等。但是在實際應用中應該慎用重載,這也
原创 公平鎖與非公平鎖
總括: 在Java的ReentrantLock構造函數中提供了兩種鎖:創建公平鎖和非公平鎖(默認)。代碼如下: public ReentrantLock() { sync = new
原创 一、Redis 基礎命令---總括
1、redis命令不區分大小寫,但是KEY區分大小寫。 2、redis-cli -h 127.0.0.1 -p 6379 根據IP/PORT鏈接服務端 3、redis-server --port 6380 --port參數設置服務端
原创 二、Reids基礎命令--字符串
11、一個字符串類型的KEY允許存儲的數據的最大容量是 512MB 12、INCR 使key加1,key不存在時默認是0 。返回遞增後的值。 127.0.0.1:6379> incr num
原创 三、Redis基礎命令--hash
1、散列(hash)類型的字段值只能是字符串類型,不支持其他數據類型。即:散列類型內部不能嵌套其他類型。 每個鍵最多能容納的字段數量與列表相同都是 2^32 - 1 個元素。內部用來存儲字段數量的變量類型應該是Integer,因
原创 Java併發之內存模型-JMM
1、總括 併發編程模型主要處理兩個問題:線程之間如何通信及線程之間如何同步。通信:線程之間以何種機制來交換信息;同步:程序用來控制不同線程之間操作發生相對順序的機制。 發生線程安全性的時機: 變量
原创 多線程總結
一、 每一個線程實質上是一核處理器。 二、 線程本地緩存就是處理器緩存。 三、 避免數據同步的策略:使用ThreadLocal(spring singleton 實例)、不共享變量。 四、 工作內存指
原创 JVM GC之一找出不可達對象並回收
JAVA運行時數據區域 1、程序計數器:當前線程所執行的字節碼的行號指示器。一個處理器只會執行一條線程中的指令,爲了線程切換後能回覆到正確的執行位置,所以每條線程都需要一個獨立的計數器。各條線程之間互不影響,獨立存儲,屬於‘線
原创 單實例懶漢模式幷包保證成功
a) public static Singleton getInstance() { b) if (instance == null) { c) synchronized (instance
原创 JVM GC 之二對象分配
Java體系中的內存自動管理其實是解決兩大問題:給對象分配內存和回收分配個對象的內存。 一般情況下對象是在堆上分配(但也可能是經過JIT(Java即時編譯)編譯後被拆散爲標量類型並間接的在棧上分配),對象主要是分配在
原创 八、Redis 基礎命令---管理--持久化--RDB
1、Redis 支持兩種方式的持久化,一種是RDB , 一種是AOF 。可用單獨使用也可以二者結合使用。 2、RDB A、RDB方式是Redis默認採用的持久化方式,通過快照(snapshotting)完成的。當符合一定條件
原创 五、Redis 基礎命令---無序集合
1、集合中的每個元素都是唯一的,沒有順序的。 2、集合與列表的對比 集合 列表 存儲內容 最多 2^32-1個字符串 最多 2^32-1個字符串 有序性 無序 有序 唯一性 唯一 不唯一 3、集合內部使用的是值爲空的散
原创 apache-cxf-2.2.4生成webservice客戶端
1、首先下載apache-cxf-2.2.4工具包,本博客中已提供 2、執行命令: D:\D_software\develop_software\apache-cxf-2.2.4\bin>wsdl2java -d D:\F_pack\活動