原创 利用Canal實現數據庫改動就更新redis功能

此功能設計到三個微服務: service_business: 負責查詢數據庫數據。 service_business_api:存feigin遠程調用接口。 service_canal:負責canal功能。 service_business

原创 Canal的starter如何放入maven庫

Canal是阿里的產品,中央倉庫是沒有的,所以需要手動放入自己的maven倉庫。 下面 是從阿里下載的statrer: 地址欄輸入cmd進入命令行模式。 輸入“mvn install”命令進行安裝。安裝路徑根據maven安裝路徑下的co

原创 Vue工程與java工程聯合調試

在後端代碼沒有開完完成時,前端是通過easyMock來完成代碼的測試。當前端代碼和後端代碼都開發完成後,我們需要進行前後端代碼的聯調,也就是讓前端代碼直接訪問後端代碼,測試記錄bug再修復系統。這裏以前端VUe工程爲例。 前端給的工程 環

原创 lua、Canal實現廣告緩存原理分析

lua是什麼 Lua [1] 是一個小巧的腳本語言。它是巴西里約熱內盧天主教大學(Pontifical Catholic University of Rio de Janeiro)裏的一個由Roberto Ierusalimschy、Wa

原创 使用lua從mysql數據庫導出數據到redis與Nginx緩存

安裝lua 有linux版本的安裝也有mac版本的安裝。。我們採用linux版本的安裝,首先我們準備一個linux虛擬機。 安裝步驟,在linux系統中執行下面的命令。 //下載 curl -R -O http://www.lua.org/

原创 微服務鑑權代碼實現(Spring Cloud)

用戶進入網關開始登陸,網關過濾器進行判斷,如果是登錄,則路由到後臺管理微服務進行登錄 用戶登錄成功,後臺管理微服務簽發JWT TOKEN信息返回給用戶 用戶再次進入網關開始訪問,網關過濾器接收用戶攜帶的TOKEN 網關過濾器解析TOKE

原创 微服務網關Gateway

微服務網關概述 ​ 不同的微服務一般會有不同的網絡地址,而外部客戶端可能需要調用多個服務的接口才能完成一個業務需求,如果讓客戶端直接與各個微服務通信,會有以下的問題: 客戶端會多次請求不同的微服務,增加了客戶端的複雜性 存在跨域請求,在一

原创 加密算法介紹

加密算法種類有: 可逆加密算法 解釋: 加密後, 密文可以反向解密得到密碼原文. 對稱加密 【文件加密和解密使用相同的密鑰,即加密密鑰也可以用作解密密鑰】 解釋: 在對稱加密算法中,數據發信方將明文和加密密鑰一起經過特殊的加密算法處理後,

原创 JWT

JWT JSON Web Token(JWT)是一個非常輕巧的規範。這個規範允許我們使用JWT在用戶和服務器之間傳遞安全可靠的信息。 一個JWT實際上就是一個字符串,它由三部分組成,頭部、載荷與簽名。 頭部(Header) 頭部用於描述關於

原创 網關限流介紹及實現

網關可以做很多的事情,比如,限流,當我們的系統被頻繁的請求的時候,就有可能 將系統壓垮,所以 爲了解決這個問題,需要在每一個微服務中做限流操作,但是如果有了網關,那麼就可以在網關係統做限流,因爲所有的請求都需要先通過網關係統才能路由到微服務

原创 網關自定義全局過濾器

通過網關過濾器,實現一些邏輯的處理,比如ip黑白名單攔截、特定地址的攔截、用戶進行攔截等。 package com.changgou.filter; import org.springframework.cloud.gateway.fil

原创 FastDFS文件上傳實現

文件信息封裝 文件上傳一般都有文件的名字、文件的內容、文件的擴展名、文件的md5值、文件的作者等相關屬性,我們可以創建一個對象封裝這些屬性,代碼如下: public class FastDFSFile { //文件名字 pr

原创 分佈式ID生成解決方案---snowflake(雪花算法)

snowflake是Twitter開源的分佈式ID生成算法,結果是一個long型的ID。其核心思想是:使用41bit作爲毫秒數,10bit作爲機器的ID(5個bit是數據中心,5個bit的機器ID),12bit作爲毫秒內的流水號(意味着每個

原创 文件存儲微服務搭建

創建文件管理微服務service_file,該工程主要用於實現文件上傳以及文件刪除等功能。 (1)修改pom.xml,引入依賴 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h

原创 FastDFS搭建

我們使用Docker搭建FastDFS的開發環境 拉取鏡像 docker pull morunchang/fastdfs 運行tracker docker run -d --name tracker --net=host moruncha