原创 第一章 Shiro簡介

1.1 簡介 Apache Shiro是java的一個安全框架。目前使用Apache Shiro的人越來越多,因爲它相當簡單,對比Spring Security,可能沒有Spring Security功能強大,但是在實際工作時可能並不需要

原创 深入理解Java內存模型(三)——順序一致性

數據競爭與順序一致性保證 當程序未正確同步時,就會存在數據競爭。java內存模型規範對數據競爭的定義如下: 在一個線程中一個變量;在另一個線程讀同一個變量;而且寫和讀沒有通過同步來排序; 當代碼中包含數據競爭時,程序的執行往往產生違反直

原创 libgdx遊戲引擎(七)之多遊戲界面的實現

        libgdx的遊戲框架:                  也就是說,我們一開始都是新建一個AndroidApplication然後調用initialize()方法啓動一個實現了ApplicationListener的

原创 Oracle存儲過程

一、存儲過程 1、定義 所謂存儲過程(Stored Procedure),就是一組用於完成特定數據庫功能的SQL語句集,該SQL語句集經過編譯後存儲在數據庫系統中。在使用時候,用戶通過指定已經定義的存儲過程名字並給出相應的存儲過程參數來調

原创 libgdx遊戲引擎(六)之資源異步加載

        作爲一個非常棒的遊戲開發引擎,Libgdx肯定是拿來做遊戲的,而遊戲就有一個最大的特點,就是圖片資源和音頻資源都非常地龐大,越是精美的遊戲,越需要強大的圖形渲染來支撐。      我們不可能直接在UI線程中去加載,因此加載

原创 深入理解Java內存模型(五)——鎖

鎖的釋放-獲取建立的happens before關係 鎖是java併發編程中最重要的同步機制。鎖除了讓臨界區互斥執行外,還可以讓釋放鎖的線程向獲取同一個鎖的線程發送信息。下面是鎖釋放-獲取的示例代碼: class MonitorExamp

原创 第一章 dubbo簡介

      Dubbo是阿里巴巴公司開源的一個高性能優秀的服務框架,使得應用可通過高性能的RPC實現服務的輸出和輸入功能,可以和Spring框架無縫集成。       主要核心部件: Remoting:網絡通信框架,實現了sync-ove

原创 四、Cocos2dx之動作(CCAction)

一、內存自動回收 Cocos2d-x提供了一種類似java的內存回收機制,在java中定義的對象實例,不用擔心他什麼時候被釋放,因爲java虛擬機在變量不再使用時自動釋放內存,而在C++中,不再使用這個變量時,我們需要手動釋放(使用del

原创 HDFS的系統組成介紹

一、HDFS框架簡述 HDFS設計目標 1)容錯性; 2)流式數據訪問; 3)大規模數據集; 4)簡單的一致性模型; 5)移動計算到數據附近; 6)可移植性; 二、HDFS分解簡述 NameNode/DataNode HDFS採用Mas

原创 Ubuntu 12.04搭建hadoop單機版環境

一、在Ubuntu下創建hadoop用戶組和用戶 1、創建hadoop用戶組: sudo addgroup hadoop 如圖: 2、創建hadoop用戶: sudo adduser -ingroup hadoop hadoop 如圖:

原创 分佈式文件系統簡介

        早期使用網絡中的文件共享往往都是建立一個文件服務器,將網絡中的所有文件都共享在這個文件服務器上,這樣就給此服務器帶來了比較大的磁盤容量負荷和網絡帶寬的負荷,所以在早期的文件訪問採用此方式;隨着網絡技術的發展,Windows

原创 第四章 dubbo之helloworld

該例子用maven來構建,客戶端和服務端之間採用組播技術進行通信,並未使用zookeeper。 服務端代碼: 服務端代碼結構: 服務端pom文件: <project xmlns="http://maven.apache.org/POM/

原创 java BIO NIO AIO理論篇

java中的IO主要源自於網絡和本地文件 IO的方式通常分爲幾種,同步阻塞的BIO、同步非阻塞的NIO、異步非阻塞的AIO 在JDK1.4出來之前,我們建立的網絡連接的時候採用BIO模式,需要先在服務端啓動一個ServerSocket,然

原创 圖文解說:Nginx + tomcat配置集羣負載均衡

        開發的應用採用F5負載均衡交換機,F5將請求轉發給5臺hp unix服務器,每臺服務器有多個webserver實例,對外提供web服務和socket等接口服務。之初,曾有個小小的疑問爲何不採用開源的apache、Nginx

原创 查看linux服務器情況的常用命令

判斷Linux服務器CPU情況的依據如下: 具有相同的core id的CPU是同一個core的超線程。(Any cpu with the same core id are hyper-threads in the same core);具