Su Frank

@SuFrank

Joined on Jul 12, 2021

  • 學習目標 使EF enum類別儲存時轉換為字串對應方式,使資料庫查詢方便檢視。 目錄 預設資料 要說明之前我們先預設實體類別的定義 以下範例資料庫對象為MySql
     Like 1 Bookmark
  • 學習目標 透過VsCode套件Remote-SSH如何連接到Linux。 目錄 [TOC] 一、前言 在測試Oracle Cloud的時候有提供免費方案可以架設VPS,剛好藉此機會來玩一下透過VsCode要如何SSH遠端,單純使用SSH遠端的方式有很多種,之前在工作中往往都是透過Putty+WinSCP來完成相關需求,這次只是單純想要試試不同的工具看看有沒有新的發現。 二、基本設定
     Like 1 Bookmark
  • 學習目的 延續透過 Docker 建立 JenkinsAgent後續的學習,在完成Jenkins Node的佈局後,接下來學習如何取得建置完成的產物。 目錄 [TOC] 一、前言 在專案建置完成後如果想要取得對應的產出物,透過master和agent要如何取得檔案,方法有很多種這邊選擇一個較簡易上手的方式,當然如果建置環境本身不是隨機銷毀的(指定docker image運行後關閉),也可以直接訪問環境來取得檔案。 二、實作步驟
     Like  Bookmark
  • 介紹 npm為現今最熱門的套件管理系統,在運行時會需要安裝Node.js。延續上一篇透過 Docker 建立 Jenkins完成後,接著我們想要再作業上操作npm相關指令,此篇就是來說明如何在Jenkins上運行。 目錄 [TOC] 一、前言 這邊會直接再所建立的Jenkins(master node)上操作,不過實際運作上建議再建立一個agent node下去執行,主要理由為安全性問題詳情可以參考文章,接著直接進入實作環節。 二、套件安裝
     Like  Bookmark
  • 介紹 Jenkins提供建置、部屬及自動化等操作,算是可以滿足各種不同的需求,也是一個非常老牌的CI/CD工具。 目錄 [TOC] 一、前言 在專案上在很多平台上使用CI/CD的操作,但唯獨沒有機會接觸到Jenkins,最近剛好比較有空花一點時間來了解一下,希望以後可以變成自己的使用工具。 二、使用Docker 建立
     Like  Bookmark
  • 介紹 之前撰寫的[透過 Docker 建立 Jenkins]最後有提到,在執行各樣CI/C官方建議使用JenkinsAgent來運行,其原因主要為安全隔離,也可以使執行不同專案的CI/CD作業時,彼此不受影響。 目錄 [TOC] 一、前言 基本上整體流程也不會太困難,這邊廢話就不多說直接進入實作 二、建立Jenkins
     Like  Bookmark
  • 介紹 在Go Lang要執行併發十分簡單,但要控制及確保參數使用還需要做一些了解,這邊針對兩種一般常使用的操作來實。 目錄 [TOC] 一、前言 在Go Lang 學習筆記 - 環境建立與基本語法結論的地方有說明GoLang的特色,該文章也有稍微提到併發的使用和等待,這邊針對使用方式在多些實作範例。 相要直接看程式碼的這邊直接附上GitHub,以下實作也是針對該專案來說明。
     Like  Bookmark
  • 學習目標 可透過docker產生Golang的image並執行。 目錄 [TOC] 實作步驟 專案建立 專案這部分可以使用我在GitHub上面的測試專案即可,此專案是用GoLang寫RestfulAPI針對資料進行CRUD的操作。
     Like  Bookmark
  • 學習目標 熟悉Go語言的建立以及基本使用及了解其優勢。 目錄 [TOC] 環境建立 當我們第一次使用時需要至官網下載安裝command使用,此外開發環境我們是用VsCode這邊在安裝Go的對應套件即可。 :::info
     Like 2 Bookmark
  • 介紹 Polly是一個OpenSource的函示庫,可透過fluent的方式去制定錯誤發生的處理規範,Jitter則是為了克服許多用戶在中斷後不斷重試,進而造成系統負擔的一個延遲策略。 目錄 [TOC] 一、前言 在工作空閒之餘想想真對以往錯誤重試的流程去優化時而發現的作法,往常在執行重試行為時只會單單使用try/catch,當發生錯誤時進而執行重試作業,如果有眾多的詢問並且都發生了失敗,此時則會使系統負擔直線上升,在此會針對兩方面下去優化 調整 RetryCode 寫法使其更好閱讀
     Like  Bookmark
  • 前言 當我們在本地端完成了測試流程,接著想要導入CI/CD的流程當中並且觀看其測試情形,這邊會將測試加入AWS中,如果不熟悉流程可以先觀看[AWS] CI/CD CodeBuilde (一)系列的文章,直接進入實作環節吧。 :::warning :bulb: 建議有AWS CodeBuild基礎在查看此文章 ::: 目錄 [TOC]
     Like 1 Bookmark
  • 目錄 [TOC] 一、前言 當一個測試完成不論結果成功或是失敗如果能拿出當下測試結果那專業程度又不同了,這邊就要來快速產生Cucumber的測試報告(.html)以便查看當前測試情形。 二、實作步驟 報告的產生一樣是藉由cypress-cucumber-preprocessor插件來進行,只需要設定相關參數即可執行,參考文件在最下方參考來源處 環境設定
     Like 1 Bookmark
  • 前置步驟 有安裝docker環境即可 實作步驟 [TOC] 一、建立RabbitMQ 1. 拉取 RabbitMQ image 這邊使用 management 的版本
     Like 2 Bookmark
  • 學習目標 了解AutoResetEvent如何控制執行序內的的執行的等待或執行。 一、前言 因專案需求想要將資料塞入Queue之後再去檢查內部使否有資料有則處理相關動作,因塞入Queue的時間點為多緒執行,導致會多重觸發檢查,此時可以使用 Thread 加 AutoResetEvent 的方式去處理此流程。 二、範例演練 在程式啟動時直接new Thread並啟動,內部使用_autoWait.WaitOne()的方式去等待程序的觸發,觸發後會再執行Queue內部檢查。 // 新建一個 AutoResetEvent 並且初始值設定為 false
     Like 1 Bookmark
  • 前言 當想要進行整合測試的時候想要從DI取得物件進行測試時,可以透過WebApplicationFactory的協助,可以將啟動應用程式的作業帶入(ex.StartuporProgram),後續可以進行測試作業。 目錄 [TOC] 實作 程示範例 這邊會使用到IClassFixture的介面來進行,此介面指定再進行測試時之前後的作業且可以共用(同一份測試檔案),且測試完成會清理資源
     Like 1 Bookmark
  • 前言 剛好在進行測試的時候遇到需要夾帶測試檔的情況,其最下方參考來源所提供的方法有很多種,但這邊只紀錄需求上用到的部分,有興趣可以去點延伸閱讀一下。 目錄 [TOC] 說明 這邊主要會使用到DeploymentItemAttribute其用處就是指定每個測試需部屬的檔案或目錄,用法我們就接著看下去吧。 實作
     Like 1 Bookmark
  • 前言 早期在寫單機的時候發現有這樣的功能,這邊把之前舊的使用方式和現在Core上使用的方式記錄一下。 說明 不會很難直接看實作吧 目錄 [TOC] 實作
     Like 1 Bookmark
  • 前言 在撰寫Task 建構函式時可以發現有一個CancellationToken的參數,這個參數一值沒有去使用到,但因任務需求要在程序下同時執行多個host任務這才發現其中的重要性,透過筆記紀錄下使用方式。 學習目標 了解CancellationToken的使用方式 目錄 [TOC] 介紹
     Like 1 Bookmark
  • 前言 這一篇是由一起學 Class and Struct (C#)的擴充研究,裡面提到了Stack和Heap兩個記憶體互相配合的方式,這邊想要實際測試看看能不能透過實作來觀看其結果。 學習目標 透過實作來更加認識ReferenceType和ValueType,並觀測Stack和Heap的資料儲存方式。 目錄 [TOC] 介紹
     Like 1 Bookmark
  • 學習目標 了解Class和Struct的差異和使用時機 目錄 [TOC] Class與Struct 直接說明其核心差異其實很簡單如下 Class 是參考類型(Reference type)
     Like 1 Bookmark