原创 java多線程研究: 鎖的概念

ReentrantLock和synchronized兩種鎖定機制的對比 synchronized: synchronized (lockObject) { // update object state } 這是

原创 Hadoop僞分佈式初始化

首先將環境配置好:修改主機名、網絡名、ip地址、host文件,安裝jdk、Hadoop、添加環境變量、修改Hadoop核心配置文件(core-site.xml、hdfs-site.xml、env文件中的JAVA_HOME),添加對

原创 Hadoop2.6.5架構圖+集羣搭建---使用QJM實現HA

在Hadoop 2.0.0之前,NameNode在HDFS集羣中容易形成單點故障(SPOF)。每個羣集都只有一個NameNode,如果該機器或進程變得不可用,整個羣集將無法使用,直到NameNode重新啓動或在單獨的計算機上啓動。

原创 線程資源同步---ReentrantLock加鎖

還是那個3個窗口賣100張票的問題,這次我們使用ReentrantLock類來幫助我們解決問題。 賣票程序: import java.util.concurrent.locks.Lock; import java.util.con

原创 hash表的理解

什麼是hash算法 Hash算法可以把文件轉換成一行字符串,而且每個文件有單獨的Hash值,基本不會重複,這樣通過計算兩個文件的Hash值可以很快的確定兩個文件是否相同。 Hash的運算只能從文件到Hash值,但是從Hash值到文

原创 分佈式計算架構的意義

單一應用架構當網站流量很小時,只需一個應用,將所有功能都部署在一起,以減少部署節點和成本。此時,用於簡化增刪改查工作量的數據訪問框架(ORM) 是關鍵。垂直應用架構當訪問量逐漸增大,單一應用增加機器帶來的加速度越來越小

原创 分佈式項目中:session一致性問題

如果負載均衡器以輪詢的方式向tomcat轉發session,那麼用戶的session將會出現不能和某一服務器維持會話的問題。這就是session一致性問題的一個簡單例子。 第一種解決方案: 方案:基於nginx的ip-hash

原创 dubbo配合zookeeper分佈式maven依賴

<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.so

原创 HDFS介紹

HDFS產生背景 隨着數據量越來越大, 在一個操作系統存不下所有的數據, 那麼就分配到更多的操作系統 管理的磁盤中, 但是不方便管理和維護, 迫切需要一種系統來管理多臺機器上的文件, 這就是 分佈式文件管理系統。 HDFS只是分佈

原创 集羣時間同步

時間同步的方式: 找一個機器,作爲時間服務器。 所有的機器與這臺集羣時間進行定時的同步,比如,每隔十分鐘,同步一次時間。 配置時間服務器 使用root用戶查詢是否已經安裝ntp [root@hadoop102 桌面]#

原创 配置日誌的聚集

日誌聚集概念:應用運行完成以後,將程序運行日誌信息上傳到HDFS系統上。 日誌聚集功能好處:可以方便的查看到程序運行詳情,方便開發調試。 注意:開啓日誌聚集功能,需要重新啓動NodeManager 、ResourceManager

原创 Hadoop配置歷史服務器

配置歷史服務器 爲了查看程序的歷史運行情況,需要配置一下歷史服務器。具體配置步驟如下: 配置mapred-site.xml [atguigu@hadoop101 hadoop]$ vi mapred-site.xml 在該文件裏

原创 運行Hadoop的wordcount案例

官方WordCount案例 創建在hadoop-2.7.2文件下面創建一個wcinput文件夾 [atguigu@hadoop101 hadoop-2.7.2]$ mkdir wcinput 在wcinput文件下創建一個wc.

原创 大數據概念

大數據是無法在一定時間內使用常規工具捕捉、管理、處理的數據集合,是海量、高增長率和多樣化、低價值密度的信息資產。要替代常規的數據工具如mysql等,需要新的處理模式才能具有更強的決策力和流程優化能力。 大數據主要解決海量數據存儲