在云原生的体系下,面对高弹性、拆分微服务以及应用动态生命周期等特点,传统监控体系如 cacti 、nagios 、Zabbix 等已经逐渐丧失了优势,难以适用和支撑,对应的新一代云原生监控体系应运而生,Prometheus 为核心的监控系统已成为云原生监控领域的事实标准。 之前公司有文章介绍过,Qunar 内部的一站式监控平台,后端存储是基于 Graphite+Whisper 做的二次开发,前端控制面是基于 Grafana 做的二次开发。而 Grafana 是支持多数据源的,其中就包含 Prometheus 数据源。所以在容器化落地期间最初计划采用的监控方案也是 Prometheus ,其本身是个 All in One 的系统,拥有强大的 PromQL ,集采集、处理、存储、查询、rule检测于一身,非常易于部署和运维。但每个系统都不是完全能够契合使用需求的,Prometheus 也一样不是完美的。 该文章将以 Qunar 容器监控实践过程和经验为基础,讲述我们监控体系构建、遇到的挑战和相应对策,以及对 VictoriaMetrics 的简单介绍与 Qunar 在过渡至 Victori
本文是支付宝体验科技沙龙第 3 期-走进蚂蚁端智能技术的回顾系列文章,蚂蚁集团客户端工程师朱木分享了蚂蚁端侧计算容器面临的挑战、思考和设计方案。
Flutter for Web(FFW)从 2021 年发布至今,在国内外互联网公司已经得到较多的应用。作为 Flutter 技术在 Web 领域的有力扩充,FFW 可以让熟悉 Flutter 的客户端同学直接上手写 H5,复用 App 端代码高效支撑业务需求;在 App 侧 FFW 也可作为 Flutter 动态下发的兜底方案。总的来说在业务和技术上 FFW 都具有相当的价值。 然而在使用 FFW 时有一个明显的问题:其编译产物 main.dart.js 较大,初始的 Hello world 工程编译后产物 js 大小为 1.2 MB,添加业务代码后 js 的大小还会继续增加。在阿里卖家的内容外投业务中,3 个页面的工程 js 大小为 2.0 MB,js 文件过大直接的影响就是页面首次首屏加载的速度。针对 js 的大小有较多优化方法,本文主要记录 main.dart.js 分片优化方案的实现。
以Flink为基础的实时计算在B站有着广泛而深入的应用。目前B站的Flink作业主要运行在三种集群环境下:纯物理机部署的YARN集群、为了提高Kafka集群资源利用率而和Kafka混部的YARN集群以及为了提高线上服务器而和K8S混部的YARN集群(这部分有计划在不远的将来使用Flink On K8S部署方式代替)。其中纯物理机YARN集群使用纯SSD盘的统一机型的服务器,包含1000+台服务器;和Kafka混部的集群目前为Flink提供了2000+ cores;和线上的K8S混部的集群已经使用了6000+ cores,并且还在持续增加。在业务方向上,B站的Flink已经应用在了包括AI、广告、数仓、数据传输和其它的很多业务上。目前B站Flink作业的最大并行度为2000。下图展示了B站实时应用的整体架构及Flink Runtime的工作范围。
本期知识小报的主要内容包括: • Lombok 之 @Builder 注解与 JSON 反序列化的冲突 • 如何动态设置日志输出级别 • JWT的生成原理和误区 • Java 8 parallelStream 避坑指南
Java缓存技术可分为远端缓存和本地缓存,远端缓存常用的方案有著名的redis和memcache,而本地缓存的代表技术主要有HashMap,Guava Cache,Caffeine和Encahche。远端缓存将在后面的博文中进行深入探讨,此处挖个坑,因此本篇博文仅覆盖了本地缓存,且突出探讨高性能的本地缓存。 本篇博文将首先介绍常见的本地缓存技术,对本地缓存有个大概的了解;其次介绍本地缓存中号称性能最好的Cache,可以探讨看看到底有多好?怎么做到这么好?最后通过几个实战样例,在日常工作中应用高性能的本地缓存。
本文简述了 GPU 的渲染管线和硬件架构,对一些常见问题进行了讨论和分析。有以下几点核心内容:(1)移动平台渲染管线 TBDR 的介绍;(2)GPU 缓存体系的介绍;(3)Warp 的执行机制;(4)常见的如 AlphaTest 或者分支对性能的影响。
Serverless 炙手可热,被称为云原生未来发展的方向。信通院报告显示:在核心业务中使用 Serverless 的用户占到18.11%,已经开始和计划使用 Serverless 技术的用户超过了70%。Serverless 广受追捧,得益于它在“快速的开发交付”、“极高的运维效率”、“极低的资源成本”这三个方面上的优势。 Serverless 可以让业务更快上云,让用户用最小的运维投入享受云带来的便利性。底层资源规划及运维交给更专业的云平台处理,使用户可以更专注业务和产品本身,从而更好地提升产品和业务的核心竞争力。 Serverless 的优势如此明显,但在实际落地使用中,无论是云厂商还是用户,均处在摸着石头过河的阶段,仍在不断学习不断试错,主要原因是 Serverless 在带来便利性的同时,也打破了传统 Serverful 模式下的种种用户使用习惯,对企业各个组织均造成了冲击;其先进的产品形态在老的架构上又引入了较高的适配复杂度。具体表现在:
为了应对大流量,现代应用/中间件通常采用分布式部署,此时不得不考虑 CAP 问题。ZooKeeper(后文简称 ZK)是面向 CP 设计的一个开源的分布式协调框架,将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用,分布式应用程序可以基于它实现诸如 数据发布/订阅、负载均衡、命名服务、集群管理、Master 选举、分布式锁、分布式队列 等功能。ZK 之所以能够提供上述一套分布式数据一致性解决方案,核心在于其设计精妙的数据结构、watcher 机制、Zab 一致性协议等,下面将依次剖析。