原创 Spring Cloud 之服務註冊&發現

包括服務註冊中心,服務提供方(註冊服務),服務使用方(調用服務) 註冊中心: 1. 使用spring-cloud-starter-eureka-server,主類中使用@EnableEurekaServer,開啓服務註冊功能,增加服

原创 nmon使用總結

Nmon:是一個分析aix和linux性能的免費工具(其主要是ibm爲自己的aix操作系統開發的,但是也可以應用在linux操作系統上) nmon_analyser:是nmon的一個工具可以把nmon生成的報告轉化成excel報表的形式供

原创 常用的表擴展字段方案

關於表擴展字段,之前看了一些前輩的文章結合自己在實際項目中的經驗,做一下總結: 1. 開始設計時,增加一些reserve字段 優點:簡單,支持索引 缺點:太少可能起不到作用,太多也不行,影響性能 2. version+ext方式,即在表

原创 Spring Cloud 之服務網關

服務網關(API GATEWAY) 服務網關是微服務架構中一個不可或缺的部分。通過服務網關統一向外系統提供REST API的過程中,除了具備服務路由、均衡負載功能之外,它還具備了權限控制等功能。 1. 引入依賴spring-clou

原创 nginx.conf配置詳解

ginx的配置文件nginx.conf配置詳解如下: user nginx nginx ; #Nginx用戶及組:用戶 組。window下不指定 worker_processes 8; #工作進程:數目。根據硬件調整,通常等於CPU數量或

原创 輕量級測試工具ContiPerf

ContiPerf 是一個輕量級的測試工具,基於JUnit 4 開發,可用於性能測試等。可以指定在線程數量和執行次數,通過限制最大時間和平均執行時間來進行性能測試。 使用步驟: 1. maven 引入 <dependency> <grou

原创 Spring Cloud 之消息總線

客戶端獲取到最新的配置信息需要執行refresh,可以利用webhook的機制每次提交代碼發送請求來刷新客戶端,當客戶端越來越多的時候,需要每個客戶端都執行一遍,這種方案就不太適合了。使用Spring Cloud Bus可以完美解決這一問

原创 Docker安裝Nginx環境

1. docker hub上查詢 nginx docker search nginx 2. 下載最新版的 nginx docker pull nginx 3. 運行 nginx docker run -p 80:80 --name myn

原创 Spring Security實踐

Spring Security提供Basic Auth的鑑權方式,在一些涉及敏感信息的場景,例如應用監控等,可引入使用。 1. 配置依賴 <dependency> <groupId>org.springframework.boot</gr

原创 Docker鏡像源修改

docker默認的源爲國外官方源,下載速度較慢,可改爲國內,加速方案一修改或新增 /etc/docker/daemon.json# vi /etc/docker/daemon.json{"registry-mirrors": ["http

原创 Redis分佈式鎖詳解

在互聯網分佈式服務部署中,通常會遇到多個進程操作同一個資源的情況,例如秒殺等,此文章主要介紹使用Redis實現分佈式鎖。 Redis爲單進程單線程模式,採用隊列模式將併發訪問變爲串行訪問。通常使用setnx(即set not exie

原创 Supervisor進程管理

Supervisor(http://supervisord.org/)是用Python開發的一個client/server服務,是Linux/Unix系統下的一個進程管理工具,不支持Windows系統。它可以很方便的監聽、啓動、停止、重啓

原创 Docker私有倉庫

Docker官方提供了公有的registry:Docker Hub,企業內部可自建私有倉庫。常見的可以有2種方式:docker-registry或基於gitlab【registry方式】1. openssl生成證書openssl req

原创 Docker storage存儲

docker的默認存儲位置爲:/var/lib/docker,可通過命令查詢:# docker info | grep "Docker Root Dir"裏面包括Images, containers, volumes若需要修改默認的存儲位

原创 Snowflake雪花算法

分佈式系統中,一些業務場景需要獲取全局唯一ID,常用方法爲:twitter的snowflake、UUID/GUID、mongodb的objectId。 【UUID】 1. 使用36位的UUID,jdk的u