原创 互斥與同步(一)
一、併發的原理 1、競爭條件發生在當多個進程或者線程在讀寫數據時,其最終結果依賴於多個進程的指令執行順序。 2、臨界資源:兩個或更多的進程需要訪問的不可共享的資源。 3、臨界區:使用臨界資源的那一部分代碼。 4、互斥 互斥產生的兩個問題:
原创 互斥與同步(二)
一、管程 1、定義:管程是由一個或多個過程、一個初始化序列和局部數據組成的軟件模塊,主要特點如下: 局部數據變量只能被管程的過程訪問。進程通過調用管程的一個過程進入管程。任何時候,只能有一個進程在管程中執行,調用管程的任何其他進程被掛起。
原创 服務器併發策略
一、簡介 從本質上講,所有到達服務器的請求都封裝在IP包中,位於網卡的接收緩衝區中,這時候Web服務器軟件要做的事情就是不斷地讀取這些請求,然後進行處理,並將結果寫到發送緩衝區,這其中包含了一系列的I/O操作和CPU計算,而設
原创 java spring的相對路徑,絕對路徑等轉
一、相對路徑 關鍵字:基準目錄 1、Spring中基準目錄 ClassPathXmlApplicationContext
原创 java 併發 ConcurrentHashMap 與 HashTable源碼分析總結
一、HashTable 源碼結構大致與HashTable相同,不同的地方是對數據進行讀取操作的方法都加上了synchronized 二、ConcurrentHashMap 則使用了 ReentrantLock 來解決併發問題。 三、j
原创 linux的service相關總結
引用:鳥哥的Linux私房菜 一、與daemon(service)相關的文件位置: /etc/init.d/* 啓動腳本 /etc/sysconfig/* 初始化環境配置文
原创 linux umount 命令介紹
一、綜述 1、語法: umount 參數 掛載點或者設備名 2、常見問題 umount : /usb : device is busy問題: 解決方法:首先看是否正在使用這個設備(cd 到非/usb的路徑);或者
原创 m2eclipse issues ArtifactTransferException
1. Open folder by running this text (without Quotes) in Search Explorer of Window “%USERPROFILE%\.m2″. 2. After running
原创 hive 實現不等連結
hive本身不支持不等連結,可以使用如下方法實現不等連結 表a(id,data1)大表 表b (id,data1)小表 需求是表A減去表B select c.id , c.data1 from (select a.id as id
原创 Twitter的開放實時計算系統Storm
Twitter 在 Strange Loop 大會上公佈分佈式實時計算系統 Storm 的源代碼,可以用於各種編程語言,彌補了 Hadoop 實時性的缺失,意義重大。 據瞭解,Storm 代碼來自於 Twitter 上月收購的 Back
原创 新浪微博構架
1 概述 首先給大家介紹一下新浪微博架構發展的歷程,新浪微博在短短一年時間內從零發展到五千萬用戶,我們的基層架構也發展了3個大的版本。 2 架構演變 2.1 第一版LAMP架構 第一版就 LAM
原创 Eclipse中10個最有用的快捷鍵組合
一個Eclipse骨灰級開發者總結了他認爲最有用但又不太爲人所知的快捷鍵組合。通過這些組合可以更加容易的瀏覽源代碼,使得整體的開發效率和質量得到提升。 1. ctrl+shift+r:打開資源 1 這可能是所有快捷鍵組合中最
原创 大規模日誌收集處理項目的技術總結
大規模日誌收集處理項目的技術總結 以下是2012年一個公司內部項目的技術總結,涉及到的方面比較多比較雜,拿出來和大家分享下。如果有更好的方案或者想法請聯繫我,謝謝~! 注:文章中提到的其他系統(如哈勃Agent、EagleEye)是公司
原创 servlet生命週期和併發
對於單個servlet來說,其生命週期相當簡單:請求來臨時,servlet容器根據請求路徑匹配對應的servlet定義,調用構造函數實例化servlet。實例化之後,再調用servlet的init()方法進行初始化;如果初始化成功,就調
原创 hadoop監控之Ganglia、Nagios的一些總結
一、 關鍵資料引用: 1、http://www.ibm.com/developerworks/linux/library/l-ganglia-nagios-2/index.html 舊版本安裝以及配置 2、http://www.cent