原创 Java多線程技術研究(三)-線程池

在多線程開發中,當線程數量較多時,並且每個線程的執行時間較短,因而需要頻繁的創建線程和銷燬線程,這樣會大大較低系統的吞吐能力。這時就可以採用線程技術,實現線程執行完成後不會被銷燬,可以被反覆使用。假設一個服務器完成一項任務所需要的

原创 Java多線程技術研究(四)-Callable,Future/FutureTask,及Future設計模式

本篇博客Java多線程中另一塊重要的內容:Callable,Future,FutureTask,及Future設計模式的模擬實現。 考慮這樣一種場景: 網上購物,提交訂單後,在收貨的這段時間裏無需一直在家裏等候,可以先幹別的事情

原创 Java網絡編程(一)-Socket編程

從本篇博客開始,後面幾篇博客會着重介紹Java網絡編程相關方面的知識,主要涉及Socket編程,Http協議編程。 在網絡通訊中,我們把主動發起通信請求的程序稱爲客戶端,而在通訊中等待客戶端發起請求建立連接的程序稱爲服務端。因而

原创 Java多線程技術研究(二)-線程同步,通信及ThreadLocal

本篇博客主要介紹Java多線程之間的同步與通信,以及ThreadLocal。 一、線程同步 在多線程環境中,可能會有兩個甚至更多的線程試圖同時訪問一個有限的資源(代碼,數據庫等)。我們把多線程訪問同一代碼,產生不確定的結果,稱爲

原创 Java多線程技術研究(一)-多線程的創建及常見名詞

基礎做起,首先圍繞Java多線程進行研究,利用博客總結自己學習的內容。 1、線程基本概念 進程:指內存中運行的應用程序,進程在執行過程中擁有獨立的內存單元。當我們啓動一個應用程序時,就會生成一個新的進程。進程是資源分配的最小單

原创 一段感悟很深的話

在一篇博客中讀到一句話,感悟很深,記下來。 我不停的擦拭手中的利劍,不是因爲我喜歡它,也不是因爲它能帶來安全,只是因爲,每當下一次衝鋒的號角響起時,我能夠迅速拔出,縱橫廝殺,直至戰鬥結束,不讓自己倒下。 生活在這樣的時代,與其被

原创 測試

測試使用

原创 Java併發技術研究

1.JAVA併發編程基礎 Java從誕生開始就選擇了內置對多線程的支持。但是過多地創建線程和對線程的不當管理也容易造成問題。因而對於開發人員如何編寫優秀的併發程序是一個不小的挑戰。 1.1 多線程 1.1.1 多線程簡單示例 一個Java

原创 JBOSS引入外部jar包報錯

最近在一個工程中需要實現非對稱加解密功能,於是使用Java提供的類org.bouncycastle.jce.provider.BouncyCastleProvider,進一步引入jar包bcprov-jdk16-146.jar,在Mave

原创 Redis實戰總結-簡單介紹和常用數據結構及命令

* 序言 最近花了一些時間將《Redis實戰》,和網上關於Redis的一些博客研究了下。針對這段時間的學習做一個總結,內容如下: Redis介紹 Redis的數據結構及命令 Redis的管道及PUB/SUB機制 Redis配置、複製及持

原创 Redis實戰總結-Redis的高可用性

在之前的博客《Redis實戰總結-配置、持久化、複製》給出了一種Redis主從複製機制,簡單地實現了Redis高可用。然後,如果Master服務器宕機,會導致整個Redis癱瘓,這種方式的高可用性較低。正常會採用多臺Redis服務器構成一

原创 Redis實戰總結-配置、持久化、複製

Redis的配置主要放置在redis.conf,可以通過修改配置文件實現Redis許多特性,比如複製,持久化,集羣等。 redis.conf部分配置詳解 # 啓動redis,顯示加載配置redis.conf # ./redis-serve

原创 Jenkins+Maven+Git總結

最近花了幾天時間搭建一個Jenkins環境,實現自動更新編譯代碼,及集成FindBugs插件。本篇博客將從以下幾點對Jenkins總結: Jenkins簡介 Jenkins環境準備 Jenkins環境搭建 Jenkins環境配置 Fin

原创 Redis實戰總結-管道和發佈、訂閱機制

本篇博客重點介紹Redis的管道,發佈/訂閱機制。 Redis是一種基於Client-Server模型以及請求/響應協議的TCP服務。Client端發出請求,server端處理並返回結果到客戶端。在這個過程中Client端是以阻塞形式等

原创 如何解決Maven依賴源問題

最近利用Maven框架搭建了一個Springboot應用,應用依賴於公司內部倉庫鏡像,但是公司的鏡像不全,導致無法實現某些功能,比如實現Spring boot優雅的停止(依賴spring-boot-starter-actuator.jar