在學習一項新技術時,我們先按照官網上的 demo 把環境搭建起來。今天先搭建乙個單機版測試環境。
這裡有2個選擇:
如果學習原始碼後,希望參與到 soul 開源專案中,fork 到自己賬號下,再 clone 自己賬號下的 soul 專案。
這裡,我建議大家採用第2種方式,也以第2種方式演示。
git clone
為了方便後續拉取最新**,設定 upstream 遠端倉庫
git remote add upstream
# 後續拉取最新**時使用
git checkout master
git pull upstream master
後續如果提交 pr 時,會建立單獨的 branch 修改**後上傳,目前我們只是閱讀原始碼,所以建立乙個 read 的分支,互不影響。
git checkout -b read
2.啟動 mysql
soul-admin 模組需要把一些資料持久化到 mysql中。
3.啟動 soul-admin 專案
在 idea 裡找到 soul-admin 模組,按照各自資料庫配置,修改配置檔案(我的是3306埠號,使用者名稱root,沒有密碼)
啟動完成後,進入控制頁面 使用 admin/123456 登入。歡迎頁面如下:
在外掛程式列表下,所有頁面都是空白的。
4.啟動 soul-bootstrap,這就是 soul 閘道器服務專案,預設埠號是9195。
5.接入 http 應用。
啟動 examples 下的 soul-examples-http。
再次訪問管理頁面的 devide 外掛程式,有了如下選擇器。
在 soul-examples-http 專案下的 controller 層,可以看到這些介面資訊,如下圖這個介面 /order/findbyid。
此時可以直接訪問這個介面 http://localhost:8188/order/findbyid?id=95
也可以通過閘道器來訪問這個介面 http://localhost:9195/http/order/findbyid?id=95
今天就先體驗到這裡,明天我們繼續深入的探索 http 服務是如何接入的。
文章是本人一邊學習一邊記錄的,如有錯誤,請批評指正,謝謝。
Soul原始碼閱讀 1 初識 Soul
無論我們學習什麼東西之前,都要先搞清楚我們要學習的是什麼,就像一些哲學思考先要給出清晰的定義,否則後面的一切都無從談起。從今天開始,我來和大家一起,學習一款非常優秀的開源閘道器專案 soul。soul 是什麼呢?先來看下官網作者的定義 這是乙個非同步的,高效能的,跨語言的,響應式的api閘道器。我希...
soul原始碼閱讀(十)soul所有外掛程式介紹續
目錄 hystrix外掛程式 sentinel外掛程式 resilience4j外掛程式 monitor外掛程式 waf外掛程式 sign外掛程式 rewrite外掛程式 global外掛程式 webclient外掛程式 webclientresponse外掛程式 tars外掛程式 總結 上篇已介紹...
soul原始碼閱讀(九)soul所有外掛程式介紹
目錄 soul所有外掛程式列表 介紹每個外掛程式 context path外掛程式 divide外掛程式 dubbo外掛程式 springcloud外掛程式 sofa外掛程式 ratelimiter外掛程式 什麼是context path,就是使用者每次用乙個url訪問soul閘道器的時候,會根據c...