一直以來對ElasticSearch的使用都是拿來查詢Log、存放訂單資料來提供查詢等等,沒有特別深入的研究他,對於效能上的調教也都還沒實際碰到過,想說在自己Lab裡面架一台ElasticSearch來玩看看,因為Elastic Search Cloud太貴,免費又只能玩30天,雖然有辦法做到無限免費仔,但實在太花本了,就直接架在地端吧!
Posted by Lynn on Saturday, July 1, 2023
來還技術債啦!!!
剛入職時接到的第一份工作是要匯出一個API回傳的資料,並處理成CSV的格式匯出讓使用者下載,因為格式單純所以那時也沒有使用任何CSV的套件,就單純回傳一個組好的物件。
那時資料量不多,所以也安安穩穩的度過了一年的時間,直到最近資料量暴增,於是發生了OOM 😆
但目前很可惜要處理這問題的人並不是我,所以想說直接來練練手好了
Posted by Lynn on Tuesday, June 27, 2023
Rust是一種偏向系統級的程式語言。主要目的是為了高效能和安全的應用程序而設計,於2010年在Mozilla研究所發表,並於2015年達到穩定版本。 詳細內容就看Wiki吧 https://zh.wikipedia.org/wiki/Rust
對這語言好奇的原因是因為連Window的Kernel都準備用Rust來取代C++了,單論效能Rust在具有額外安全保證的程式碼會比C++慢一些,但假設C++也做了一些手工檢查,兩者的效能其實是相似的。
Posted by Lynn on Sunday, June 25, 2023
常常聽到TCP、UDP等等ProtocolType,但這些東西都被封裝得好好的,實在是沒自己特別寫過,基於好玩想說來測試看看,.NET 自己有實作了TcpClient和TcpListener,實現方式也很簡單,不過官網明確說明了建議進階使用者使用Socket Class,因為TcpClient和TcpListener建立在System.Net.Sockets.Socket 之上,不過今天是想抓抓看傳輸內容,所以就直接用TcpClient和TcpListener吧,Socket Class就等下篇文章了。
TcpClient
TcpListener
Socket Class
System.Net.Sockets.Socket
這兩段程式碼看起來有差嗎?
var count = 0; //1 Console.WriteLine($"Hello World {count}"); //2 Console.WriteLine($"Hello World {count.ToString()}");
Posted by Lynn on Tuesday, June 20, 2023
.NET Developer, Open Source Enthusiast