實體店倒閉,開源卻「慷慨」:微軟開源Python庫Lumos用于自動監視web程序
盡管微軟所有實體店都倒閉了,但這家成立的快50年的大企業還是熱衷于「做慈善」。
最近,微軟的「開源版圖」又增添了一抹新的色彩:Lumos庫也開源了。Lumos是一個Python庫,用于網絡應用程序中的度量回歸的自動檢測與診斷。
Lumos魔咒:Python庫來自動監視web應用程序
Lumos這個單詞最早起源于J.K羅琳的小說《哈利波特》,意思是發光,也表示了一種魔咒。
常規情況下,利用隨時間跟蹤關鍵性能指標(KPI)來監視在線服務的運行狀況。但這種回歸需要進行后續跟蹤,從而導致工作量增加。另外,跟蹤每個KPI回歸的根本原因很耗時,因為單個異常可能需要幾天或幾周的時間進行調查。
微軟的這個Lumos利用A / B測試的原理來比較成對的數據集。每個數據集都是表格數據集,其中行對應于樣本,列值包括相關指標,并提供診斷度量回歸的假設。
Lumos首先驗證數據集之間的度量回歸是否具有統計顯著性。然后進行總體誤差檢查和誤差歸一化,以說明兩個數據集之間的總體變化。如果在對數據進行歸一化后,指標中沒有統計上顯著的回歸,則指標的回歸可以用總體的變化來解釋。但是,如果度量標準中的增量具有統計意義,則根據要素對目標度量標準中的增量的貢獻來對要素進行排名。
微軟研究人員說,Lumos是用于監視多種功能的指標,涵蓋呼叫、會議和公共交換電話網(PSTN)服務等。實際應用中,Lumos是基于Apache Spark的大數據分析服務的,在Azure Databricks上運行,并根據優先級,復雜性和指標類型配置了多個任務。任務是異步完成的,因此只要檢測到異常,就會觸發Lumos工作流程。Lumos確定其為合法問題之后會生成故障單。
研究團隊聲稱Lumos節省了團隊65%至95%的開發時間,并且將誤報率降低了90%以上。
同時,Lumos已經被應用在Skype和Microsoft團隊的開發人員團隊的數百萬次會話中,從而使工程師能夠檢測到數百項指標變化。
Lumos開源地址:https://github.com/microsoft/MS-Lumos
「大慈善家」微軟的開源版圖
微軟在2020年的情況也不容樂觀,前幾日剛官宣關停所有的線下實體店,這就意味著微軟想要復制「APPLE旗艦店」的模式宣告失敗。
但是這家極富公信力的科技企業在開源方面可謂是異常「慷慨」。過去幾年來,微軟一直在開源方面做出了持續的貢獻。
編程語言方面, 微軟從擁抱 Rust 到開發基于 Rust 的安全編程語言,并將其工程開源。
自 2004 年以來,微軟安全響應中心(MSRC)對所有的微軟安全漏洞進行了分類,根據他們的統計數據,微軟打的補丁中約有70% 是內存安全漏洞的修復程序。
內存安全漏洞這么多是因為 Windows 和大多數其他微軟產品主要使用 C 和 C++ 編寫,這兩種「內存不安全」(memory-unsafe)的編程語言容易造成安全方面的錯誤,而 Rust 正是解決這個問題的良藥。
后來,微軟決定擁抱Rust,而且還開發了基于Rust 的新編程語言 Verona,從根本上杜絕內存安全方面的問題。現在微軟也在嘗試用Rust重寫各種產品,并給大家分享了用Rust開發windows組件的體驗。
而為了更好的構建Linux生態,2019 年微軟直接在 Windows 中安上了一顆“Linux 內臟”,這顆 Linux 內臟其實是今年 5 月份在 Windows 10 上推出的全新版本 WSL(Windows Subsystem for Linux),新版本 WSL 2 使用了全新的架構,這是一個真正的 Linux 內核,它改變了 Linux 二進制文件與 Windows 和計算機硬件的交互方式。
2019年5月,微軟在 Windows 10 上推出了全新的WSL(Windows Subsystem for Linux),這時的WSL相當于Win的一個子系統,而稍后推出的WSL 2使用了全新的架構,實現了真正的linux內核,你再也不用windows上裝笨重的虛擬機了。
除此以外,還有加入 OpenJDK 項目,開源全新終端應用 Windows Terminal等。在開源方面,微軟不愧于「大慈善家」的名號。
不知道下半年,我們還能看到微軟哪些精彩的開源項目呢?