原创 【Redis】Redis布隆過濾器

緩存擊穿介紹 什麼是緩存擊穿 我們通常使用redis作爲數據緩存,當請求進來時先通過key去redis緩存查詢,如果緩存中數據不存在,需要去查詢數據庫的數據。當數據庫和緩存中都不存在的數據來查詢時候,請求都打在數據庫的請求中。如

原创 mac上常用軟件的下載

兩個常用下載網站 http://www.xclient.info http://www.lapulace.com photoshop下載 https://xclient.info/s/adobe-photoshop-cc.h

原创 【分佈式鎖】Redis實現分佈式鎖

在分佈式應用中進行邏輯處理時常會遇到併發問題,例如:執行訂單修改狀態,需要查詢訂單並更新訂單狀態,這是非原子性操作,存在併發問題。防止一個用戶在同一之間內創建多個訂單;以上的問題需要通過分佈式鎖來解決。 下面來介紹一下redis分佈式

原创 junit單元測試web項目的方法

在項目開發中,常通過junit單元測試來測試自己方法邏輯。下面主要展示,junit測試web項目的方法步驟。包括service、dao層的方法和使用Mock測試cotroller層的方法。 以下測試用例時基於公司的項目展示的,所以不便

原创 jvm虛擬機模型實例演示

通過一個代碼實例,來說明變量,方法,對象和類之間在jvm所存放的位置。 public class JvmHeapStackDistribute { public static void main(String[] args)

原创 5. scala集合(二)

scala元組 元組與其他集合的區別在於,一個元組中可以存放不同類型的元素. 元組也是不可變的 創建元組(Tuple) Tuple1和Tuple2和Tuple3…等的區別 tuple2可以存放兩個元素,tuple3可以存放

原创 4. scala的集合

List集合的創建 指定泛型的創建 通過List[String]方式來指定是String類型 ``` def listType(): Unit ={ val listl : List[String] = List("A","B

原创 windows環境下安裝spark

前言 花了近兩週的時間學習了scala的語法,然後就迫不及待的想要玩一下spark的開發了。這裏先介紹一下spark在windows環境下的安裝步驟和方法。 因爲spark大數據的計算肯定是基於分佈式集羣的方式才能發揮其巨大的作用,所以

原创 java線程池介紹(一)

今天看了一下java併發包中的API,這裏做一個總結。 首先我們先看一下,java線程池相關的類以及他們的關係uml圖 從類圖和源碼中可以瞭解到,Executors類是提供線程池創建的類,而實現Executo接口系列的類則是提供線

原创 java多線程之Lock介紹

java.util.concurrent包中有關於Lock鎖的定義。它提供了ReentrantLock、ReetrantReadWriteLock.ReadLock 和 ReetrantReadWriteLock.WriteLock,重入

原创 3. Scala數組

數組 數組的創建和賦值 聲明類型 數組必須用val來修飾,表示不可變的數組 new Array[String](10) 是用來創建一個String類型的數組,並開闢長度爲10的空間 arrays(0)給第0個元素賦值 pri

原创 idea創建maven工程的spark項目

idea工具可以創建maven工程的spark項目,今天就試着做了一下,然後寫了一個基於集合創建RDD的小的demo,並且遇到了不少的坑,在這裏總結一下。 創建maven工程的spark項目 這個項目是基於scala語言進行開發的

原创 Scala的模式匹配和正則表達式

Scala的模式匹配 模式匹配類似於switch case的含義 模式匹配作用於方法或函數上 模式匹配作用於類上–>樣例類 模式匹配可以匹配固定類型的參數 match和case之間聯合使用 case 1 => "one" 表

原创 Springboot中Spring-cache與redis整合

也是在整合redis的時候偶然間發現spring-cache的。這也是一個不錯的框架,與spring的事務使用類似,只要添加一些註解方法,就可以動態的去操作緩存了,減少代碼的操作。如果這些註解不滿足項目的需求,我們也可以參考spring-

原创 java的lambda表達式用法

lambda表達式的用法 lambda的三個組成部分 一個括號內用逗號分隔的形式參數,參數是函數式接口裏面方法的參數 IOperation operation = (param) -> ADD_NUM + param; 一個箭頭符號