原创 關於消息隊列的使用(轉載)

一、消息隊列概述 消息隊列中間件是分佈式系統中重要的組件,主要解決應用耦合,異步消息,流量削鋒等問題 實現高性能,高可用,可伸縮和最終一致性架構 使用較多的消息隊列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,Me

原创 Java ZIP文件壓縮與解壓縮

最近需要用到Java的zip文件壓縮與解壓縮,找了一堆的資料和參考代碼,沒有一個能夠很好的解決問題。要不就是壓縮出錯,要不就是壓縮後的文件目錄組織不正確,要不就是中文亂碼,總之問題一大堆。沒辦法只能自己編碼搞定。 java裏面有個包叫ja

原创 分佈式事務

在Java中,分佈式事務主要的規範是JTA/XA, 其中:JTA是Java的事務管理器規範, XA是工業標準的X/Open CAE規範,可被兩階段提交及回滾的事務資源定義, 比如某數據庫實現了XA規範,則不管是JTA,還是MSDTC,都可

原创 關於分佈式事務、兩階段提交、一階段提交、Best Efforts 1PC模式和事務補償機制的研究

1.XA XA是由X/Open組織提出的分佈式事務的規範。XA規範主要定義了(全局)事務管理器(Transaction Manager)和(局部)資源管理器(Resource Manager)之間的接口。XA接口是雙向的系統接口,

原创 【Java深入學習系列】之CPU的分支預測(Branch Prediction)模型

背景 先來看段c++代碼,我們用256的模數隨機填充一個固定大小的大數組,然後對數組的一半元素求和: #include <algorithm> #include <ctime> #include <iostream> int mai

原创 ThreadPoolExcutor詳解

1、概念:      用於管理java的多線程。線程的生命週期包括創建、就緒、運行、阻塞、銷燬,當有大量的線程任務需要創建時,內存的開銷就大了,此時,使用線程池,在一定程度上能夠很好的緩解線程的大開銷。

原创 Java 併發工具包 java.util.concurrent 用戶指南

譯序 本指南根據 Jakob Jenkov 最新博客翻譯,請隨時關注博客更新:http://tutorials.jenkov.com/java-util-concurrent/index.html。 本指南已做成中英文對照閱讀版的

原创 PDFBox – How to read PDF file in Java

1. Get PDFBox pom.xml <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactI

原创 ElasticSearch安裝部署,基本配置(Ubuntu14.04)

ElasticSearch部署文檔(Ubuntu 14.04) 安裝java sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get

原创 如何優化Java代碼

通過使用一些輔助性工具來找到程序中的瓶頸,然後就可以對瓶頸部分的代碼進行優化。一般有兩種方案:即優化代碼或更改設計方法。我們一般會選擇後者,因爲不去調用以下代碼要比調用一些優化的代碼更能提高程序的性能。而一個設計良好的程序能夠精簡代碼,從

原创 GitLab事故之技術詳敘

本文對GitLab事件進行了全盤迴顧,繼續追蹤GitLab在2月1日發佈的申明,追溯各種問題根本原因。然後陳列了恢復在線後,GitLab聲明瞭哪些下一步舉措。最後摘錄了一些網友在Twitter和YouTube的評論,大多數人都對GitL

原创 HDFS簡單入門

本文地址:http://www.cnblogs.com/archimedes/p/hadoop-simple.html,轉載請註明源地址。 爲什麼我們需要HDFS 文件系統由三部分組成:與文件管理有關軟件、被管理文件以及實施文件管理

原创 RocketMQ性能壓測分析

原創文章,轉載請註明出處:http://jameswxx.iteye.com/blog/2093785   一   機器部署 1.1  機器組成 1臺nameserver 1臺broker  異步刷盤 2臺producer

原创 ubuntu如何在線安裝java7?

root@localhost:~# sudo apt-get install oracle-java7-installer sudo: unable to resolve host localhost.localdomain

原创 Spring 動態數據源配置

一、     目的 不同的用戶登錄到具有表結構相同的各自數據庫(一個oracle 服務器),來操作各自的數據,而dao 不知道這些改變。 二、     實現方法 1、分析applicationContext.xml   數據源be