黑毛到白毛的攻城獅之路

Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification.
- Bertrand Meyer

Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems.
- Charles Connell

註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
註2:本部落格的內容授權請參閱部落格底部的授權宣告。

2019年12月29日 星期日

Reactive Programming(二):Flow API

›
本系列的文章為 Modern Java in Action / Project Reactor 的讀書筆記,因此內容可能會有點跳躍。
2019年11月6日 星期三

Reactive Programming(一)

›
本系列的文章為 Modern Java in Action / Project Reactor 的讀書筆記,因此內容可能會有點跳躍。
2019年10月11日 星期五

為何在 Dockerfile 中使用 tail 是 anti-pattern

›
最近因為一個蠻莫名的問題,花了點時間在研究依靠 tail 來把 log 輸出到 docker log driver,然後發現其實這個作法算是一種 anti-pattern。目前認知到的問題有兩個: 1. tail 可能無法如預期地運作 在 stackoverflow 上,有好幾篇...
2019年10月1日 星期二

將 AWS ECS 的 log 導向 Splunk

›
花了好多天的時間在研究,然後終於稍微搞清楚想要將 AWS ECS 上的應用程式的 log 導去 Splunk 時,需要注意的地方有哪些,以及它導出時是怎麼做的。不過在紀錄之前要先提一下,這篇當中不會提到如何建置 Splunk 服務,因為在我的狀況中 Splunk 是其他公司內的團...
2019年9月28日 星期六

Logback 輸出 JSON 格式的 log

›
Logback 預設通常是會輸出一行一行純文字的 log,不過如果想要輸出 JSON 格式的話,也有看起來應該是第三方貢獻給 logback 的 extension 可以使用。 Maven 設定 <properties> <slf4j.version>1...
2019年9月18日 星期三

Vespa 的 keep-rank-count 和 rerank-count

›
在文件 [1] 上對於 keep-rank-count 的描述如下: How many documents to keep the first phase top rank values for. Default value is 10000. 而對於 rerank-c...
2019年9月16日 星期一

(書籤) 多研究些架構,少談些框架

›
多研究些架構,少談些框架(1) -- 論微服務架構的核心概念 多研究些架構,少談些框架(2)-- 微服務和充血模型 多研究些架構,少談些框架(3)-- 微服務和事件驅動 多研究些架構,少談些框架(4)-- 架構師是技術的使用者而不是信徒
2019年9月1日 星期日

Bloom Filter

›
當我們想要快速地知道某個資料是否曾經在系統中儲存過的時候,基本的作法就是時間複雜度 O(n) 或者是空間複雜度 O(n) 的選擇。 時間複雜度 O(n):在存放的資料當中從第一個一直查到最後一個,花費 O(n) 的時間複雜度、同時沒有額外的空間複雜度需求,就能知道指定的某個資料到...
2019年8月25日 星期日

利用 Jackson 序列化、反序列化 JSON

›
JSON 的表示在資料傳送時很方便,不過在程式碼裡就不見得了,尤其像是 Java 這樣的強型別語言,要操作 JSON 常常得寫上一堆麻煩的程式碼。這也就是為什麼會有許多 JSON parser 的開源專案的原因~吧。以前我在做這些事情時都是用 GSON 來處理的,不過由於 GSO...
2019年7月28日 星期日

Vespa 的資料與索引型態

›
Vespa 裡面支援了許多資料型態(data type),包括 int、long、byte、double、boolean、string、struct(物件)、collection(例如 array、weighted set)等等,可以參考官方文件 [1],這些資料型態最主要的影響...
‹
›
首頁
查看網路版

關於我

Wayne Yeh
檢視我的完整簡介
技術提供:Blogger.