原创 springcloud微服務系列之服務註冊與發現組件Eureka

一、Eurake的簡介二、使用Eureka進行服務的註冊消費1、創建一個服務註冊中心2、創建服務的提供者3、創建服務的消費者總結 一、Eurake的簡介 今天我們來介紹下springcloud的核心組件Eureka,Eurake是負責微服務

原创 springcloud微服務系列——服務網關組件Zuul

大家可以關注一下公衆號“Java架構師祕籍” 前言 通過前幾篇教程的介紹,我們基本上認識了構建一個微服務系統所需要的組件,通過這些組件的結合,我們已經可以搭建一個較爲簡略的微服務系統了,比如下面的架構圖: https://img-blog

原创 Java編程——服務器設計方案之應用限流

前言 在一個高併發系統中對流量的把控是非常重要的,當巨大的流量直接請求到我們的服務器上沒多久就可能造成接口不可用,不處理的話甚至會造成整個應用不可用。比如最近就有個這樣的需求,我作爲客戶端要向kafka生產數據,而kafka的消費者則再源源

原创 Nginx支持Socket轉發過程詳解

序言 一網友在羣中問,nginx支持socket轉發嗎? 實話說,我沒做過socket轉發,但是我知道socket跟http一樣都是通過tcp或者udp通信的,我猜測啦一下nginx應該支持吧,然後又在網上查啦一下,網上說支持,也有支持的相

原创 分佈式唯一ID的幾種生成方案

前言 在互聯網的業務系統中,涉及到各種各樣的ID,如在支付系統中就會有支付ID、退款ID等。那一般生成ID都有哪些解決方案呢?特別是在複雜的分佈式系統業務場景中,我們應該採用哪種適合自己的解決方案是十分重要的。下面我們一一來列舉一下,不一定

原创 springboot整合Quartz實現動態配置定時任務

大家可以關注一下公衆號“Java架構師祕籍” 純乾貨綠色天然無污染 前言 在我們日常的開發中,很多時候,定時任務都不是寫死的,而是寫到數據庫中,從而實現定時任務的動態配置,下面就通過一個簡單的示例,來實現這個功能。 一、新建一個spring

原创 SpringBoot-Mybatis框架使用與源碼解析

大家可以關注一下公衆號“Java架構師祕籍” 純乾貨綠色天然無污染 前言: 現在微服務架構基本已經成爲一種架構正確了,而SpringBoot技術也已經被應用在各個項目中。 SpringBoot不僅僅那些傳統的好處,更多是可以與其他組件進行

原创 SpringBoot使用JdbcTemplate

前言 本文是對SpringBoot使用JdbcTemplate操作數據庫的一個介紹,,提供一個小的Demo供大家參考。操作數據庫的方式有很多,本文介紹使用SpringBoot結合JdbcTemplate。大家可以關注一下公衆號“Java架構

原创 再有人問你分佈式事務,把這篇扔給他

前言 不知道你是否遇到過這樣的情況,去小賣鋪買東西,付了錢,但是店主因爲處理了一些其他事,居然忘記你付了錢,又叫你重新付。又或者在網上購物明明已經扣款,但是卻告訴我沒有發生交易。這一系列情況都是因爲沒有事務導致的。這說明了事務在生活中的一些

原创 【Spring】—AOP之AspectJ註解方式實現聲明式事務管理

前言 這回來說下註解方式的聲明式事務管理。 正文 Demo 1、引入相關的jar包這裏寫圖片描述 2、引入AOP約束<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x

原创 回顧一下MyBatis逆向工程——自動生成代碼

前言 最近做的項目(SSM+Shiro)的數據庫表已經創建完成,一共有15張表,如果我們一個個去寫pojo/bean的代碼以及各種sql語句的話未免太過麻煩而且很容易出錯,這個時候我們就需要MyBatis逆向工程去爲我們生成這些基本的東西。

原创 基於redis分佈式鎖實現“秒殺”

最近在項目中遇到了類似“秒殺”的業務場景,在本篇博客中,我將用一個非常簡單的demo,闡述實現所謂“秒殺”的基本思路。 業務場景 所謂秒殺,從業務角度看,是短時間內多個用戶“爭搶”資源,這裏的資源在大部分秒殺場景裏是商品;將業務抽象,技術角

原创 基於SpringBoot2 & MongoDB完成自動化集成

MongoDB在企業級項目中一般用於存儲文檔信息、圖片資源等,MongoDB的內容完全是以 JSON字符串的形式進行存儲的,所以我們在獲取數據時通過簡單的 反序列化就可以完成與項目內的實體類轉換,不過這個過程是自動的,不需要我們手動進行反序

原创 【MyBatis】緩存配置

前言   使用緩存可以使應用更快的獲取數據,避免頻繁的數據庫交互,尤其是在查詢越多、緩存命中率越高的情況下,使用緩存的作用就越明顯。MyBatis作爲持久化框架,提供了非常強大的查詢緩存特性,可以非常方便地配置和定製使用。一般提到MyBat

原创 聊聊MyBatis緩存機制

前言 MyBatis是常見的Java數據庫訪問層框架。在日常工作中,開發人員多數情況下是使用MyBatis的默認緩存配置,但是MyBatis緩存機制有一些不足之處,在使用中容易引起髒數據,形成一些潛在的隱患。個人在業務開發中也處理過一些由於