原创 springboot + groovy 進行動態編程 (一)

背景和需求: 上半年在我們的錢包app裏做了一個類似餘額寶的功能,下半年開始要推廣了,和大部分公司的推廣手段一樣,邀請新用戶開戶成功之後給推廣者發獎金;舉個例子,餘額寶的年化收益是 1.7% p.a,邀請一個新用戶年化利息就加 1%,邀請

原创 springboot + groovy 進行動態編程 (二)

springboot + groovy 進行動態編程 (一)  本篇文章是編碼,上篇文章我們說到 A服務的同學需要做的是: (1)在項目啓動的時候,完成對calculate_rule表的讀取,並構造 groovy 對應的xml格式 (2)

原创 搭建ELK日誌系統(一)

先安裝elasticsearch 1、確保jdk已經安裝,這裏省略 2、參考網址 https://www.elastic.co/guide/en/elasticsearch/reference/6.0/deb.html 可知安裝方法有多種

原创 遞增重試(一)

項目中有很多地方需要重試,比如說調銀行的一個退款功能,調完之後需要我們自己去主動查詢銀行的退款結果接口,這個時候產品過來跟你說,我想調退款接口之後,先10分鐘的查,查詢幾次之後查不到結果就30分鐘的查,再然後60分鐘。。。 思考一下怎麼寫

原创 遞增重試(二)

簡易版的遞增重試請看遞增重試 背景: 這篇文章更符號實際項目中的需求,比如用戶發起一筆支付,我們後臺會去調銀行的支付接口,並提供給銀行一份支付回調地址。一般來說支付接口調用成功之後,過個幾秒鐘,銀行會回調我們提供的接口,我們在這個接口裏根

原创 用模板模式優雅寫出controller

看一下你們的項目中是怎樣寫controller的呢,是不是看起來亂亂的不清晰,下面我們用模板模式來改造一下。 基類HttpCallback public abstract class HttpCallback { protec

原创 使用map實現一個redis緩存

使用map實現一個redis緩存  定義一個cache接口 public interface Cache { <T> T get(String key); <T> T hget(String key); <

原创 【設計模式】觀察者模式:微博關注通知功能(三)

上篇是自定義觀察者模式:微博關注通知功能 ,本篇文章我們用JDK自帶的 Observer、Observable 來做,更easy。 我們先來看一下 Observer 接口,裏面只有一個 update 方法,看註釋可知: 一個類可以實現Ob

原创 按順序執行處理器、校驗器

 關於上面,一步接一步處理數據、校驗數據的流程(類似於過濾器),映射到我們代碼裏該怎麼寫呢? 方法一、 可以按照這個流程圖一步一步的寫代碼,把這個流程給寫完;但是缺點是不夠靈活,不好擴展; 方法二、 1、既然是一步一步的,有時候下一步的

原创 搭建ELK日誌系統(三)

安裝kibana 1、確保jdk已經安裝,這裏省略 2、由於我的ES是7.5.0版本的,所以這裏的kibana也安裝相同版本,否則會有問題。 cd /root/apps wget https://artifacts.elastic.co

原创 用位與運算符&簡單實現複選框功能

java裏面有一些複選框的功能,比如要記錄用戶的愛好,愛好有幾個選項,比如:籃球、乒乓球、足球、羽毛球這四個,用戶可以選擇一個或多個,那這個時候如果是你來做的話,應該怎麼設計這個字段呢? 方案一: hobby 字段,1:籃球、2:乒乓球、

原创 API網關服務:Spring Cloud Zuul —— 前言

通過前幾章的介紹,我們對於Spring Cloud Netflix下的核心已經瞭解了一大半。這些組件基本涵蓋了維護架構中最爲基礎的幾個核心設施,利用這些組件我們已經可以構建起一個簡單的微服務架構系統,比如,通過使用Spring Cloud

原创 API網關服務:Spring Cloud Zuul —— 請求路由

github:https://github.com/Maple521/springcloud/tree/master/api-gateway-%E8%AF%B7%E6%B1%82%E8%B7%AF%E7%94%B1 API網關服務:Spr

原创 API網關服務:Spring Cloud Zuul —— 請求過濾

github:https://github.com/Maple521/springcloud/tree/master/api-gateway-%E8%AF%B7%E6%B1%82%E8%BF%87%E6%BB%A4 在實現了請求路由功能之

原创 【微服務】Spring Cloud學習

eureka-server eureka-producer eureka-server高可用 ribbon-consumer 服務容錯保護:Spring Cloud Hystrix 聲明式服務調用:Spring Cloud Feign 聲