草庐IT

云原生可观察性的基本理念和方法论:可观察性(Observability)是指系统内部的运行过程可以被检测、分析、记录和展示出来,从而对系统行为、资源利用、健康状况、安全情况等进行监控和管理

作者:禅与计算机程序设计艺术1.简介可观察性(Observability)是指系统内部的运行过程可以被检测、分析、记录和展示出来,从而对系统行为、资源利用、健康状况、安全情况等进行监控和管理。可观察性是云原生时代的一个重大发展方向,也是机器学习、微服务、容器技术、DevOps、Serverless等技术框架的基石。可观察性建设在整个云原生架构下,由底层基础设施(例如,网络、存储、计算资源)、中间件、应用系统共同构建,具有高度的透明性、灵活性、弹性、可扩展性。云原生系统通过抽象化的方式将复杂的系统结构简化,方便技术人员了解其运行过程,实现更高效的管理。本文将详细阐述云原生可观察性的基本理念和方法

从Sysstat到Metric:数据库可观测性的巨大进步

我是从Oracle5开始使用Oracle的,不过Oracle5、6的时代,我只是帮用户安装Oracle而已,真正的开始关注数据库的内部,尝试调优数据库和解决数据库的故障是从Oracle7.1开始的。因此我对v$sysstat有着十分深厚的感情,虽然从Oracle7到Oracle9,以至于到Oracle11,v$sysstat中的指标数量增加了许多,但是对这个系统视图的用法没有改变。2007年的时候,我和一个当时供职于OracleACS的朋友一起为某个运营商优化一套短信平台系统,那个朋友一看到用户的数据库是Oracle10g,立马就说:“老徐,这个项目还是你来干吧,我从Oracle6干到现在,不

JavaFX - 数据模型类中的可观察集合

下面是一段简单的JavaFX代码,用于说明我的问题。Listlist1=newArrayList();list1.add("foo");...someListView=newListView();ObservableListsomeObservableList=FXCollections.observableList(list1);someListView.setItems(someObservableList);...someObservableList.add("bar");如果我没理解错的话,调用setItems方法后,不仅列表的内容会显示在ListViewGui组件中,如果添加

可观测性革命 - 揭秘OpenObserve开源高性能云原生平台

 OpenObserve简介OpenObserve 是一个开源的云原生可观测性平台,与Elasticsearch相比,存储成本降低了约140倍(实际结果可能因测试数据而有所不同),测试用例包括真实的日志数据,其显著降低运营成本,并提高了易用性。它可以扩展到PB级别的数据量,具有很高的性能,您晚上可以睡得更好。如果您正在寻找一款适用于日志、指标和跟踪的可观测性工具,请查看OpenObserve 以及其在可观测性方面如何帮助您构建更好的软件并节省观测成本。我们构建 OpenObserve 时遵循以下设计原则:1. 使用 暴力搜索 进行日志查询,而非倒排索引或bitfunnel;2. 使用 Rust

阿里云故障洞察提效 50%,全栈可观测建设有哪些技术要点?

本文根据作者在「TakinTalks稳定性社区」公开分享整理而成#一分钟精华速览#全栈可观测是一种更全面、更综合和更深入的观测能力,能协助全面了解和监测系统的各个层面和组件,它不仅仅是一个技术上的概念,更多地是技术与业务的结合。在“以业务为导向”的大前提下,全栈可观测正在成为趋势。本文分享了阿里云可观测平台服务作为全球分布的超大业务系统,同时也作为服务全球企业用户的可观测平台提供方,在故障洞察提效中遇到的业务挑战,以及6个关键技术点和2个应用案例。背景全栈可观测是一个技术和业务相结合的领域,单从技术维度理解,可观测包含了基础设施、应用服务、客户端等等,而是更广义的维度则关注这项技术如何支撑企业

翱翔天空,观测大地——美团可观测性平台Raptor的“飞天”之路

F-22战斗机是第五代隐身战斗机,其各项能力是世界公认的名列前茅,能够“ControltheSky”。F-22的绰号为“Raptor”,译为“猛禽”。而这正是美团可观测性平台Raptor名称的由来。Raptor作为美团的可观测性平台,融合了前端监控、基础设施监控、应用层监控,同时也给业务提供指标、链路、部分日志监控能力,并提供丰富大盘报表及实施告警功能。在WOT全球技术创新大会2023·北京站的《可观测性技术与实践》专场中,来自美团的技术专家任天带来了主题为《美团可观测性平台:Raptor建设与实践》的精彩分享,详细介绍了Raptor的“飞天”建设之路。如何“ControltheSky”?如何

java - 用来自 RxJava 的可观察对象替换回调

我使用监听器作为回调来观察Android的异步操作,但我认为用RxJava替换这个监听器可能会很棒,我是这个库的新手,但我真的很喜欢它,而且我一直在Android项目中使用它。这是我要重构的代码:publicvoidgetData(finalOnResponseListenerlistener){if(data!=null&&!data.isEmpty()){listener.onSuccess();}else{listener.onError();}}一个简单的回调:publicinterfaceOnResponseListener{publicvoidonSuccess();pub

java - 在 Java 中可观察

我正在尝试理解Observer和Observable。这是我想弄清楚的一个例子:publicclassIntegerDataBagextendsObservableimplementsIterable{privateArrayListlist=newArrayList();publicvoidadd(Integeri){list.add(i);setChanged();notifyObservers();}publicIteratoriterator(){returnlist.iterator();}publicIntegerremove(intindex){if(indexbag.a

使用 OpenTelemetry 构建可观测性 05 - 传播和行李(Propagation & Baggage)

我们开发的应用程序可能具有不同的形态和架构:有些是单体应用,有些是微服务。为单体应用程序添加遥测数据相对来说简单,因为所有数据都在同一进程中。然而对于微服务应用程序,情况可能会更具挑战性。通常,分布式微服务应用程序的不同服务之间仅通过网络连接。然而,当我们想要创建有效的链路追踪数据,就要考虑到下面的问题:即使是微服务应用程序,我们也希望观察到从开始到结束的用户路径,这意味着跨越多个服务的边界。这就是我们所说的分布式链路追踪。不过我们如何实现这一点呢?我们如何使链路追踪信息贯穿可能是分布在多个进程,并且是不同的基础架构上呢?传播(propagation)在OpenTelemetry中,解决这个挑

使用 OpenTelemetry 构建可观测性 06 - 生态系统

过去的五篇文章讨论了如何使用OpenTelemetry来构建可观测性的技术细节。我认为在本博文系列的结尾介绍有关OTel生态系统的信息,为读者提供更全面的了解非常重要。OpenTelemetry的发展非常迅速,对于刚接触它的人来说,可能会感到有些不知所措或困惑,不知道在哪里找到有效的信息或资源。OpenTelemetry是一个CNCF项目。但是,在CNCF项目中OpenTelemetry的表现如何?以拉取请求、问题和提交代码的数量来衡量,OpenTelemetry是第二活跃的CNCF项目,仅次于Kubernetes:数据源(XCorp)OpenTelemetry的未来发展前景广阔,充满希望。我