实体店倒闭,开源却「慷慨」:微软开源Python库Lumos用于自动监视web程序

简介: 近日,微软又开源了一个Python库,用于自动监视网络应用程序,节省了团队65%至95%的开发时间,并且将误报率降低了90%以上。近年来,微软在开源上做出了卓越贡献。

微信图片_20220109132346.jpg


尽管微软所有实体店都倒闭了,但这家成立的快50年的大企业还是热衷于「做慈善」。

 

最近,微软的「开源版图」又增添了一抹新的色彩:Lumos库也开源了。Lumos是一个Python库,用于网络应用程序中的度量回归的自动检测与诊断。


Lumos魔咒:Python库来自动监视web应用程序


Lumos这个单词最早起源于J.K罗琳的小说《哈利波特》,意思是发光,也表示了一种魔咒。


        微信图片_20220109132349.jpg

 

常规情况下,利用随时间跟踪关键性能指标(KPI)来监视在线服务的运行状况。但这种回归需要进行后续跟踪,从而导致工作量增加。另外,跟踪每个KPI回归的根本原因很耗时,因为单个异常可能需要几天或几周的时间进行调查。

 

微软的这个Lumos利用A / B测试的原理来比较成对的数据集。每个数据集都是表格数据集,其中行对应于样本,列值包括相关指标,并提供诊断度量回归的假设。

 

Lumos首先验证数据集之间的度量回归是否具有统计显着性。然后进行总体误差检查和误差归一化,以说明两个数据集之间的总体变化。


如果在对数据进行归一化后,指标中没有统计上显着的回归,则指标的回归可以用总体的变化来解释。但是,如果度量标准中的增量具有统计意义,则根据要素对目标度量标准中的增量的贡献来对要素进行排名。

 

    微信图片_20220109132351.png      


微软研究人员说,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旗舰店」的模式宣告失败。

 

但是这家极富公信力的科技企业在开源方面可谓是异常「慷慨」。过去几年来,微软一直在开源方面做出了持续的贡献


       微信图片_20220109132353.png      


编程语言方面, 微软从拥抱 Rust 到开发基于 Rust 的安全编程语言,并将其工程开源。

 

自 2004 年以来,微软安全响应中心(MSRC)对所有的微软安全漏洞进行了分类,根据他们的统计数据,微软打的补丁中约有70% 是内存安全漏洞的修复程序。

 

内存安全漏洞这么多是因为 Windows 和大多数其他微软产品主要使用 C 和 C++ 编写,这两种「内存不安全」(memory-unsafe)的编程语言容易造成安全方面的错误,而 Rust 正是解决这个问题的良药。

 

后来,微软决定拥抱Rust,而且还开发了基于Rust 的新编程语言 Verona,从根本上杜绝内存安全方面的问题。现在微软也在尝试用Rust重写各种产品,并给大家分享了用Rust开发windows组件的体验。


      微信图片_20220109132354.png      

而为了更好的构建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上装笨重的虚拟机了。


      微信图片_20220109132356.gif

 

除此以外,还有加入 OpenJDK 项目,开源全新终端应用 Windows Terminal等。在开源方面,微软不愧于「大慈善家」的名号。

 

不知道下半年,我们还能看到微软哪些精彩的开源项目呢?


参考链接:https://venturebeat.com/2020/06/29/microsoft-open-sources-lumos-a-python-library-for-automatically-monitoring-web-app-metrics/


相关文章
|
9月前
|
人工智能 Linux 开发工具
Python从零到一:手把手带你写出第一个实用程序
Python语法简洁易懂,适合编程新手入门。它广泛应用于人工智能、自动化办公、Web开发等领域。学习Python可快速搭建项目,拥有丰富库支持和强大社区资源。通过本教程,你将掌握基础语法、环境搭建、程序逻辑控制及实战项目开发,开启编程之旅。
1269 0
|
人工智能 自然语言处理 数据可视化
中国版“Manus”开源?AiPy:用Python重构AI生产力的通用智能体
AiPy是LLM大模型+Python程序编写+Python程序运行+程序可以控制的一切。
1004 11
|
8月前
|
设计模式 决策智能 Python
Python条件控制:让程序学会"思考"的魔法
本文深入浅出地讲解Python条件控制,从基础if语句到多分支、嵌套结构,再到简洁的三元表达式与Python 3.10新增的match-case模式匹配,结合电商折扣、会员等级、ATM系统等实战案例,全面掌握程序“智能决策”的核心逻辑。
556 0
|
12月前
|
人工智能 并行计算 开发者
CUDA重大更新:原生Python可直接编写高性能GPU程序
NVIDIA在2025年GTC大会上宣布CUDA并行计算平台正式支持原生Python编程,消除了Python开发者进入GPU加速领域的技术壁垒。这一突破通过重新设计CUDA开发模型,引入CUDA Core、cuPyNumeric、NVMath Python等核心组件,实现了Python与GPU加速的深度集成。开发者可直接用Python语法进行高性能并行计算,显著降低门槛,扩展CUDA生态,推动人工智能、科学计算等领域创新。此更新标志着CUDA向更包容的语言生态系统转型,未来还将支持Rust、Julia等语言。
828 3
CUDA重大更新:原生Python可直接编写高性能GPU程序
|
程序员 测试技术 开发工具
怎么开发Python第三方库?手把手教你参与开源项目!
大家好,我是程序员晚枫。本文将分享如何开发Python第三方库,并以我维护的开源项目 **popdf** 为例,指导参与开源贡献。Popdf是一个PDF操作库,支持PDF转Word、转图片、合并与加密等功能。文章涵盖从fork项目、本地开发、单元测试到提交PR的全流程,适合想了解开源贡献的开发者。欢迎访问[popdf](https://gitcode.com/python4office/popdf),一起交流学习!
398 21
怎么开发Python第三方库?手把手教你参与开源项目!
|
11月前
|
PyTorch 算法框架/工具 C++
人工智能算法python程序运行环境安装步骤整理
本教程详细介绍Python与AI开发环境的配置步骤,涵盖软件下载、VS2017安装、Anaconda配置、PyCharm设置及组件安装等内容,适用于Windows系统,助你快速搭建开发环境。
|
11月前
|
Linux 数据库 数据安全/隐私保护
Python web Django快速入门手册全栈版,共2590字,短小精悍
本教程涵盖Django从安装到数据库模型创建的全流程。第一章介绍Windows、Linux及macOS下虚拟环境搭建与Django安装验证;第二章讲解项目创建、迁移与运行;第三章演示应用APP创建及项目汉化;第四章说明超级用户创建与后台登录;第五章深入数据库模型设计,包括类与表的对应关系及模型创建步骤。内容精炼实用,适合快速入门Django全栈开发。
591 1
|
数据采集 人工智能 测试技术
Python有哪些好用且实用的Web框架?
Python 是一门功能强大的编程语言,在多个领域中得到广泛应用,包括爬虫、人工智能、游戏开发、自动化测试和 Web 开发。在 Web 开发中,Python 提供了多种框架以提高效率。以下是几个常用的 Python Web 框架:1) Django:开源框架,支持多种数据库引擎,适合新手;2) Flask:轻量级框架,基于简单核心并通过扩展增加功能;3) Web2py:免费开源框架,支持快速开发;4) Tornado:同时作为 Web 服务器和框架,适合高并发场景;5) CherryPy:简单易用的框架,连接 Web 服务器与 Python 代码。这些框架各有特色,可根据需求选择合适的工具。
682 14
|
11月前
|
机器学习/深度学习 前端开发 API
python3如何使用QT编写基础的对话框程序
Qt与Python结合形成了PyQt/PySide,为桌面应用开发提供强大支持。通过简单安装PyQt5或PySide6,开发者可快速搭建跨平台GUI应用。本文从创建基础对话框入手,介绍布局管理、信号与槽机制、对话框模式及样式表美化等核心功能,并探讨模态窗口、事件驱动编程和资源打包等内容。最后,引导读者探索模型视图架构、多线程处理等进阶技术,逐步掌握用Python+Qt开发高效桌面应用的技能。
402 0

推荐镜像

更多