#Ruby

GitHub is running Ruby 2.7 in production.

Tweet

GitHub is running Ruby 2.7 in production

Ruby 2.7 是在 2019 年 12 月發布的,過了八個月後 GitHub 終於升級到 Ruby 2.7。

對 GitHub 這麼大的系統來說,升級一定會牽扯到很多套件相依性的問題,以及如何無縫接軌的問題,這些問題後面都還會串連一大堆測試工作,這些零零總總的工作負荷以八個月的時間來看是已經相當快了,有許多較小的團隊甚至沒有人力投入持續維護產品的底層架構,只好拿十年前的舊架構一直改,這其實會引發很多的風險,除了資安的風險,人力斷層的風險也會發生,最好的例子就是銀行大型主機的系統,COBOL 語言打造的古董還繼續做為銀行的核心系統運作著,而且因為太大,耦合性太高,導致改不動,或者成本高昂。


GraalVM.

GraalVM

GraalVM

GraalVM 是由甲骨文開發的多語言編譯器,GraalVM 具有支援多語言編譯的能力。

GraalVM 主要支援 Java 系的語言,包括 Java、Kotlin、Scala,以及 LLVM 所支援的語言,包括 Rust、C++、C,後來支援更多的語言,包括 JavaScript、Python、Ruby、R 等,都可以被 GraalVM 的多語言架構支援,除了多語言編譯的特性外,GraalVM 宣稱具有高效能的特性。由 GraalVM 編譯後的二進位檔,配合 GraalVM 本身的 runtime 可以把整個 GraalVM 的專案整合進其他專案內,支援的發布對象包括 Java、Node.js、Oracel 自己的資料庫平台,當然編譯後的 GraalVM 專案加 runtime 也可以獨立運作。

GraalVM 本身的目標和微軟的 .NET 和 CLR 相當類似,查看 GraalVM 的 Release Notes 可以看到一直有在發布新的進度,但開發者社群的經營與聲量卻非常小,感覺 Oracle 真的非常不擅長經營開源的「生意」。