Art的辦公桌

有兩個螢幕真好

0%

前陣子因為工作需要,研究了一下如何取得 youtube 聊天室訊息,今天就稍微分享一下過程跟心得吧

閱讀全文 »

先前在 2020 的時候為了練習程式碼分析工具,找到了 sonarQube 也因此撰寫了幾篇練習文章,但 2022 的今天在使用當初文章內的方法已經不適用了。可能是因為軟體更新的關係,所以這次特別紀錄一下重新練習的經過做個紀錄。先前的文章也就不再更新,僅在開頭處再加註一下更新資訊。

閱讀全文 »

今天寫的是一個很簡單的 tip,因為使用 rider 但是團隊其他人並沒有使用,這樣子 IDE 產生出來的一些檔案如果也寫到專案的 .gitignore 好像也不太好,以往都是很熟悉的團隊成員,所以偷懶直接加上去也沒關係,但如果是剛到新團隊這樣幹就不太好了

閱讀全文 »

熔斷機制這個名詞我自己的理解是核心觀念就是類似電路過載保護的概念。家裡面的繼電器負責的就是提供一個保護機制,當同一電流迴路的用電負載超出安全電流,則繼電器就會跳脫,使得電路斷路,達到隔離的作用。原因是連續通過的電流會讓電線過熱(這個有興趣的話好像可以去看看電磁學,我都還給老師了沒有記得很詳細),容易使電線的絕緣體老化(也就是電線外面那層塑膠皮),甚至是燃燒的情況,從而有電線走火的危機

上面那個說法我不確定離開學校那麼久之後有沒有講錯,但大致上的觀念就是這樣:當系統發生問題,透過保護機制將發生問題的系統斷開,不讓問題繼續擴大

REF: 過載保護 - 中文百科

閱讀全文 »

分散式追蹤系統

系統架構從單體轉變成微服務之後,使用者發出的單次請求往往會涉及到多個服務之間的呼叫,以往採用的日誌服務也較難以窺見全貌,當我們需要追蹤某一次請求中間發生了那些事情,我們期望能獲取的資訊不外乎是這次的請求,總共經過哪些服務,每個服務花費了多久的時間,呼叫的順序等等,這就是分散式追蹤系統能夠幫我們做到的事情。只不過每一家系統的 API 都不太一樣,所以 W3C 也有提供一份Trace Context - W3C,讓大家都用同一個標準來實現分散式追蹤。

在這之前看到一堆像是 RequestId, TraceId, SpanId, ParentId, ActionId,可能還有很多我沒有列出來的名詞,真的是有看沒有懂,現在至少可以從 W3C 的建議中明確知道一些名詞與他們的用途,其他的應該就是各家廠商自己的定義了,那就有用到再說囉

閱讀全文 »

以往使用 ELK 來記錄資訊,是一件非常複雜繁瑣的事情,與 ELK 還有一堆 beat 打交道,首先要面對的是不熟悉的 linux 系統,接著是聽都沒聽過的一堆設定方式跟眉眉角角,太久沒用我連 SSL 都忘記怎麼用,更別提複雜的設定語法。而使用 Serilog + Seq 就相對簡單很多,查詢語法也比 Kibana 友善。

閱讀全文 »

Azure Search DocumentAzure Cognitive Search documentation(認知搜尋文件) 這項服務的 Nuget 套件,也就是以前說的 Azure Search,這項服務可以讓使用者的搜尋體驗變得較為友善-透過自動完成、同義字比對、模糊比對、模式比對、篩選和排序

一般情況下大部分我們自己做的搜尋都還在篩選排序等等,要做到同義字比對與模糊比對就比較複雜,或者說需要付出較高的企業成本,而採用Azure Search就是一個可以考慮的解決方案了,接下來就著重在如何使用的部分,透過一個簡單的範例來說明。

閱讀全文 »

常常看到一些網站有人使用美美的指令列工具,並且能夠提示當前 repo 的分支,甚至是.NetCore 版本,就覺得很酷,現在來分享一下如何在 Windows 使用指令列也能夠做到美美的提示。

最新消息是 oh-my-posh 已經不再直接支持 powershell,本篇的作法已經過時

閱讀全文 »

最近打算開始學習 .NET 6,自然就要先做一些準備工作,第一步就是 CLI 的 AutoComplete 功能

閱讀全文 »