Time of Update: 2018-12-06
在這裡分享下對AbstractQueuedSynchronizer原理和源碼的學習資料,對於核心思想這裡介紹的比較簡單,建議大家還是網上搜下aqs的論文,先看論文,然後再看java concurrents包裡的源碼,會理解的更加透徹。一、核心思想: 1、 同步狀態的原子操作 2、 線程的阻塞和喚醒 3、 維護一個隊列,出入隊列都是原子操作 二、 基本操作: 1、 入隊列: a) 添加到chl隊列,並且設定其前任節點的singal狀態,並阻塞 2、 出隊列: a)
Time of Update: 2018-12-06
昨天查了一天的資料,運氣不錯,收穫不小,解決了一個老大難問題:JBoss記憶體緊張的問題。這是一個困擾了我兩年整的問題,就是從前年這個時候,用JBoss 3.2.1架站以來,始終是一個大問題。不大的網站,1G的記憶體都不夠用,經常要消耗500Mb的交換記憶體(swap)。 原來是自己犯了非常低級的錯誤,不懂JAVA_OPTS各參數的含義造成的。之前的JAVA_OPTS是 -Xms 520m -Xmx 1220m -Xss 15120k
Time of Update: 2018-12-06
掌握基礎理論和經典的設計方法,比去追逐一些所謂的新技術要實用得多.從別人的Blog上看來的,雖然一直有這個想法,但一直沒有很好的總結一句話來概括。我覺得目前的技術,稱得上“創新”的不多,主要是應對複雜的、多變的需求,在這樣的環境下,掌握基礎知識顯得更為重要。從作業系統中可以學習多進程、多線程的設計,用到自己的高效能並發項目的設計開發中;從電腦網路的原理中,學習路由、網關、OSI等多層、訊息傳遞的設計理念,可以用在訊息整合的企業整合應用中,還有TCP/IP的原理與設計,都是很值得認真學習的。做工程
Time of Update: 2018-12-06
其初始空間(即-Xms)是實體記憶體的1/64,最大空間(-Xmx)是實體記憶體的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等選項可進行設定執行個體,以下給出1G記憶體環境下java jvm 的參數設定參考:JAVA_OPTS=”-server -Xms800m -Xmx800m -XX:PermSize=64M-XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true ”JAVA_OPTS=”-server
Time of Update: 2018-12-06
本文基於"流"式思想解決Job調度的問題:1.關於Job調度的基本要點: 什麼時候啟動Job、執行中的Job監控、某個Job可能需要幾步完成、Job資訊的儲存介質、控制同一時間啟動並執行Job個數2.方案: 1).儲存介質: 以javaBean的形式儲存在zookeeper上 2).調度的思想: a).三棵樹——prepare、working、failed,其結構分別為prepare/粒度/javaBean;working樹結構為:working/粒度/步驟數/javaBea
Time of Update: 2018-12-06
JGroup是當前被廣泛使用的可靠組間通訊的工具之一。例如OSCache以及JBossTreeCache都是用的是JGroup。
Time of Update: 2018-12-06
本文結合Hive paper的中文版,以及google的一些資料,對Hive的基本組成進行了總結:1、組件: 中繼存放區(Metastore )-儲存“系統目錄以及關於表、列、分區等的中繼資料”的組件。 驅動(Driver )- 控制 HiveQL 生命週期的組件,當 HiveQL 查詢穿過 Hive時。該驅動管理著交談控制代碼以及任何會話的統計。 查詢編譯器(Query Compiler) -
Time of Update: 2018-12-06
1.graph錯誤 玩hadoop和KVM的肯定遇到過這個問題:不知怎麼搞的,從virt-manager中點開虛擬機器竟然看不到虛擬機器的圖形化介面!多麼蛋疼的問題! google上也沒有結果,但是仔細看資料會發現可以通過vncviewer 127.0.0.1 x(x是虛擬機器的vnc連接埠號碼)查看到圖形化介面,但是為什麼在virt-manager中看不到;為了使hadoop
Time of Update: 2018-12-06
rpm.bin 與bin
Time of Update: 2018-12-06
Bootloader的簡稱(系統啟動載入器)。一個不嚴謹的比喻,Bootloader就想相當於電腦裡面的BIOS,最主要的作用是引導系統正確啟動,它是Android作業系統(包括控制台)和手機硬體聯絡的橋樑。有些地方直接把Bootloader說成刷機模式,但是準確的說Bootloader是刷機的基礎,Bootloader正好處在開機與進系統的中間階段,真正實現刷機的是在解鎖Bootloader之後安裝的Recovery(類似於Ghost)。解鎖引導程式限制後,使用者將可以使用到更多的功能,比如重
Time of Update: 2018-12-06
昨天在群裡看到有朋友說起zookeeper的安裝問題,在此分享下本人工作中安裝zookeeper(下面簡稱zk)的經驗,後面將會介紹一些生產環境中對zk的常見使用方法。1.安裝包: 帶stable標籤的zk tar包,請自行google,解壓。2.安裝注意點: zk的安裝就三個注意的地方: 1)。conf下log4j.properties:log4j中路徑和策略的指定,生產環境中,所有的日誌寫入日誌儲存盤中,所以需要修改此設定檔(ps:修改了也不會生效,還要修改啟動指令碼,見3);
Time of Update: 2018-12-06
1. 什麼是WAP網關? WAP網關是一個軟體。它串連Internet或者Intranet,使得WAP電話可以來訪問其中的資源。有些網關可能具有將HTML檔案轉換為WML頁面的功能。
Time of Update: 2018-12-06
任何一種語言的學習掌握都離不開結構和演算法的思想,本文將從結構方面剖析Pig常用操作後的結構,總結了其中的一些容易犯錯的地方。 詳細文法介紹請參考http://pig.apache.org/docs/r0.8.1/piglatin_ref2.html#Casting+Relations+to+Scalars;個人的總結請參考下一篇pig常用文法總結,教你快速入門——演算法篇結構: LOAD 後的資料結構為: A: {col1: int,col2: int,col3:
Time of Update: 2018-12-06
軟體的設計是有原力在推動的,原力包括下表左側第一列部分 表1:影響的不同程度 全球行業企業系統應用功能管理不重要的邊際的重要的關鍵的效能管理重要的重要的關鍵的關鍵的複雜性管理重要的關鍵的重要的邊際的變化管理不重要的關鍵的關鍵的重要的IT資源管理不重要的關鍵的重要的邊際的技術轉移管理關鍵的重要的重要的邊際的 表2:在各層次上起作用的角色 全球行業企業系統應用功能管理 架構師開發人員效能管理 架構師開發人員複雜性管理 專案經理架構師開發人員變化管理 專案經理架構師 IT資源管理CTO專案經理
Time of Update: 2018-12-06
用telnet發郵件(支援smtp認證)1.用telnet連到遠程伺服器可以telnet mail.test.com 25或者telnet mail.test.com smtp2.跟伺服器打招呼HELO mail.test.com伺服器應該返回250如果伺服器smtp需要驗證,進行第三步,否則到第四步3.輸入AUTH LOGIN會一次提示你334 VXNlcm5hbWU6和334
Time of Update: 2018-12-06
CentOS5.4安裝jboss-5.1.0.GA-jdk6一、先下載安裝jdk-6u18-linux-i586.bin cd /usr/java chmod a+X jdk-6u18-linux-i586.bin sh jdk-6u18-linux-i586.bin 接下來配置環境變數 vi /etc/profile 末尾加入: export JAVA_HOME=/usr/java/jdk1.6.0_18 export
Time of Update: 2018-12-06
我們首先來看看(公司專屬應用程式系統)整合的基本概念和技術概念、術語,除了基本概念,我們會說一說類似SOA這樣的整合模式的類型,如點對式、中心輻射、管道,明白EAI、EII的區別,也會提到未來整合技術——XTP。一、基本概念首先我們明確一些基本概念(我自己的理解): A2A:兩個應用之間的整合B2B:兩個商業團體之間的整合B2C:商業團體與終端使用者之間的整合,比如internet上的技術整合類型:比如介面層的整合、資料層的整合、功能層的整合語義整合EAI:兩個應用之間資料和商業過程的整合訊息、
Time of Update: 2018-12-06
本文主要來源於google資料的自我總結,對常用的pig文法即“演算法”進行了總結基礎概念: relation bag tuple field data 關係(relation) = 包(bag) 一個包是一個元組(tuple)的集合,在pig中用{}擴起來表示一個包 一個元組(tuple)是若干個欄位的有序集合(order set),在pig的資料結構中,用()擴起來標識一個元組 一個欄位(field)是列資料(data)的標識; 和資料庫的對應關係: pig
Time of Update: 2018-12-06
今天早上幫一新人遠程搭建Hadoop叢集(1.x或者0.22以下版本),感觸頗深,在此寫下最簡單的Apache Hadoop搭建方法,給新人提供協助,我盡量說得詳盡點;點擊查看Avatorhadoop搭建步驟。1.環境準備: 1).機器準備:安裝目標機器要能相互ping通,所以對於不同機器上的虛擬機器要採取"橋串連"的方式進行網路設定(如果是宿主方式,要先關閉宿主機防火牆;上網方式的具體配置方法請google
Time of Update: 2018-12-06
先明確一下概念: 公開金鑰加密私密金鑰解密, 沒問題,也可以說是 "公用祕密金鑰加密系統 " 私密金鑰加密公開金鑰解密,一般不這麼說,應叫 "私密金鑰簽名,公開金鑰驗證 ",也可以說是“公用密鑰簽名系統” 再來說一下 "公用密鑰簽名系統 "目的:(如果暈就多看幾遍,這個沒搞清,後面的代碼就更暈) A欲傳(資訊)給B,但又怕B不確信該資訊是A發的。 1.A選計算(資訊)的HASH值,如用MD5方式計算,得到:[MD5(資訊)] 2.然後用自已的私密金鑰加密HASH值,得到:[私密金鑰(MD5(