2022/08/20 ~ 2023/11/09
coding 簡歷
1. 活用 redis
基於 redis 的效能與可作為雲端服務連結,因此開始架設與使用 redis 環境。
-- 將各服務 config 整合到redis,使相關環境參數不用從code或檔案尋找,也不需逐一修改
-- 以 redis 做為 cache 用,在讀取部分連線較慢的環境或資料庫時,可以當做類proxy cache,以便提高速度,部分環境可能需2-5小時才能索取完必要驗證資料,透過此功能可以在兩分鐘內完成5小時才可完成的任務。
-- 儲存資料透過lzma(Lempel–Ziv–Markov chain algorithm)壓縮後降低儲存空間。
-- 透過 rdb 建置永久與備份,並另外配合jenkins額外建置最大時常三日的多重時段備份。
2. 架restful api server : 從 fastapi 轉到 sanic
在公司部分服務操作極為繁瑣,但在測試過程又需要頻繁執行。
無論在資料取得或操作行為可能都有類似情況,為了節省時間自架api server。
-- 透過 api 自動取得特定數據或完成特定操作,中間的程序再透過 aiohttp 來達成。
-- 完成了數據的快速取得與自動化操作(重啟bot-proxy-server,執行特定bot)。
PS.可能和 jenkins 功能有些微相似,但差異在於restful api server可以輕易串接進任何程式碼中使用,而 jenkins 除了自動化的部屬建置,半自動的部份主要提供給不會寫程式的QA使用。
3. 持續撰寫新遊戲驗證
-- 期間完成了些更複雜的遊戲驗證,其中包含,廣東麻將、日本麻將。
-- 完全不重複累積撰寫驗證的遊戲數量已突破兩百多款。
4. 串接chat-bot做警報通知
為了讓各服務與自動化流程出錯時可以更即時的通知負責人,以保持服務正常運作,此外也可做為必要之警報功能提示。
-- QA 服務異常通知、各環境版本程式碼異動調整通知。
5. locust 壓力測試環境建置
用於測試環境api負載能力用
-- 自架的 api server rps 在 3000u rps可近2000,且正常運作。
6. 整合 websocket code
接手同事程式碼進行整併重購底層
-- 原有多環境下分不同 project 建置,重購後將其整併,在不影響原使用串接jenkins及各項參數配置下重購,使其可用一份程式碼配合不同環境下執行,避免改a漏b情形發生。
7. 持續整合 jenkins 串接所有服務
-- 除持續部署所有服務,並配合不同環境特殊環境調整基於不同的分支程式碼來建置環境與更新同步。