原创 定時任務的原理

在jdk自帶的庫中,有兩種技術可以實現定時任務。一種是使用Timer,另外一個則是ScheduledThreadPoolExecutor。下面爲大家分析一下這兩個技術的底層實現原理以及各自的優缺點。 一、Timer 1. Timer的使用

原创 Spring數據庫事務的實現機制

事務控制的核心——Connection 在開始之前,先讓我們回憶一下數據庫較原始的JDBC是怎麼管理事務的: //僅做演示,代碼不完整,不完全規範 try { con.setAutoCommit(fal

原创 Spring 創建定時任務

我們在編寫Spring Boot應用中經常會遇到這樣的場景,比如:我需要定時地發送一些短信、郵件之類的操作,也可能會定時地檢查和監控一些標誌、參數等。 創建定時任務 在Spring Boot中編寫定時任務是非常簡單的事,下面通過實例介紹如

原创 消息隊列mq總結

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

原创 MySQL緩存之Qcache與buffer pool對比

Q:innodb buffer pool和Qcache的緩存區別? A:   1、Qcacche緩存的是SQL語句及對應的結果集,緩存在內存,最簡單的情況是SQL一直不重複,那Qcache的命令率肯定是0;   2、buffer pool

原创 什麼是Java動態代理,如何實現一個動態代理例子

Java動態代理 一、概述 1. 什麼是代理 我們大家都知道微商代理,簡單地說就是代替廠家賣商品,廠家“委託”代理爲其銷售商品。關於微商代理,首先我們從他們那裏買東西時通常不知道背後的廠家究竟是誰,也就是說,“委託者”對我們來說是不可見的

原创 redis 單線程高性能 博客-1

Redis 簡介 Redis 是一個開源的內存中的數據存儲系統, 可以用作 : 數據庫、 緩存和消息中間件。 常見的數據類型: String (字符串), Hash(散列),List(列表),Set(集合),有序集合(Sorted Set

原创 redis 單線程高性能原因 博客-2

一、前言 近乎所有與Java相關的面試都會問到緩存的問題,基礎一點的會問到什麼是“二八定律”、什麼是“熱數據和冷數據”,複雜一點的會問到緩存雪崩、緩存穿透、緩存預熱、緩存更新、緩存降級等問題,這些看似不常見的概念,都與我們的緩存服務器相關

原创 zookeeper 漫畫

          ————— 第二天 —————                                             ————————————                    

原创 Zookeeper 實現分佈式鎖

ZooKeeper 實現分佈式鎖 利用 Watcher 機制和 ZooKeeper EPHEMERAL_SEQUENTIAL 節點的特點,實現分佈式鎖。 實現原理:EPHEMERAL_SEQUENTIAL 該類節點具有順序遞增特點,不會持

原创 Hystrix完整配置列表

http://throwable.coding.me/2019/05/29/framework-hystrix-full-configuration/#%E9%9A%94%E7%A6%BB%E7%AD%96%E7%95%A5

原创 Java8 Stream API 使用指南

1. 概述 Java 8 引入的一個重要的特性無疑是 Stream API。Stream 翻譯過來是“流”,突然想到的是大數據處理有個流式計算的概念,數據通過管道經過一個個處理器(Handler)進行篩選,聚合,而且流都具有向量性,強調的

原创 Java8特性之接口默認方法

是什麼 Java8中新增了接口的默認方法,簡單來說就是讓接口可以自己有實現方法,不許要實現類去實現。 有什麼用 想象一種情況,你定義了一個接口A,假如裏面有幾個抽象方法。然後什麼B,C,D,E…一大堆類去實現了A接口裏面的幾個抽象方法。那

原创 如何優化代碼中的 if else

前段時間在閱讀別人所寫的代碼的時候 , 發現其中一些業務相關的方法體內 , 出現了比較多的if-else語句多層嵌套的情況 . 首先我個人不是不提倡寫if-else語句 , 不得不說 , 很多時候 , 在寫某些邏輯 使用if-else 去

原创 合理選擇Filter、Interceptor、Aspect?

前言 小夥伴們應該聽說過過濾器、攔截器、切面,印象上都能夠起到截斷攔截的作用,在做一些業務需求時,不知道如何選擇,今天老顧就來介紹一下他們之間的區別。 Filter過濾器 過濾器可以攔截到方法的請求和響應(ServletRequest r