九大微服务监控工具详解 Prometheus Prometheus 是一个开源的系统监控、和报警工具包,Prometheus 被设计用来监控“微服务架构”。 图片 主要解决: 监控和告警:Prometheus 可以对系统、和应用程序进行实时监控,并在出现问题时发送告警; 数据收集和存储:它通过各种方式(如HTTP接口、推送网关......等)收集指标数据,并将其存储在时间序列数据库中。 查询和可视化:Prometheus 开发运维 2024-06-05 醒在深海的猫
一文搞懂 Spring 循环依赖 一 循环依赖 1.1 什么是循环依赖 首先,什么是循环依赖?这个其实好理解,就是两个 Bean 互相依赖,类似下面这样: @Service public class AService { @Autowired BService bService; } @Service public class BService { @Autowired AService aService; } AService 开发运维 2024-06-05 大猫
微服务架构落地及其演进 微服务架构的定义: 图片 如何筛选微服务: 图片 三种场景可以考虑使用微服务 (Are you tall enough?) 规模大(团队超过10人) 业务复杂度高(系统超过5个子模块) 需要长期演进(项目周期超过半年) 其他因素筛选微服务 软件功能变化频繁,快速迭代,缩短交付周期为核心的业务。 模块有独立的生命周期,服务复用,降本增效,减少重复造轮子 有独立的隔离性需求和扩展性需求(容错) 简化的 开发运维 2024-06-05 LOVEHL^ˇ^
Genai技术栈架构指南—十个工具,你知道哪个? 现代数据湖参考架构中可以找到的这 10 项功能,以及每个功能的供应商工具和库。 译自The Architect’s Guide to the GenAI Tech Stack — 10 Tools,作者 Keith Pijanowski。 我之前写过关于现代数据湖参考架构,解决了每个企业面临的挑战 — 更多数据、老化的 Hadoop 工具(特别是 HDFS)以及对 RESTful API(S3)和 开发运维 2024-06-05 大猫
Go语言中的context包到底解决了啥问题? Go语言,自2009年发布以来,凭借其简洁、高效、并发能力强等特点,迅速在开发者社区获得了广泛的关注和应用,特别是在服务器端开发、云计算、容器技术和微服务架构等领域。例如,Docker 和 K8S 等知名的容器技术都是使用Go语言开发的。 为什么需要Context包? 认识 goroutine 首先让我们来认识下 goroutine。 Go语言的高并发、高性能都来源于它的并发模型:goroutin 开发运维 2024-06-05 捡田螺的小男孩
利用Spring Boot和Elasticsearch进行人脸数据的高效检索 本专题致力于深入探讨如何通过SpringBoot3.x框架与OpenCV库实现高效的人脸检测和人脸识别系统。通过系统化的10篇文章,从基础概念到高级应用,结合代码示例和实战案例,逐步引导大家掌握从零开始构建完整人脸检测与识别系统的全过程。 利用Spring Boot和Elasticsearch进行人脸数据的高效检索 在人脸识别系统中,高效的数据存储和检索方案是系统性能的关键。Elasticsear 开发运维 2024-06-05 爱可生开源社区
一个开源且全面的C#算法实战教程 前言 算法在计算机科学和程序设计中扮演着至关重要的角色,如在解决问题、优化效率、决策优化、实现计算机程序、提高可靠性以及促进科学融合等方面具有广泛而深远的影响。今天大姚给大家分享一个开源、免费、全面的C#算法实战教程:TheAlgorithms/C-Sharp。 项目介绍 一个C#实现的各种算法集合,这些算法涵盖了计算机科学、数学和统计学、数据科学、机器学习、工程等多个领域。这些实现及其相关文档旨 开发运维 2024-06-05 张二河
Go 新提案:用 #err 标识符去做错误处理! 大家好,我是煎鱼。 前几天看 Reddit 社区里的讨论,发现 Go 这一门编程语言,错误处理永远是讨论的议题之一。本着追踪网友脑洞 Proposal 的基础上,周末看到个被反对比较多的 Go2 错误处理提案。 图片 今天结合分享给大家,好的坏的都可以看看别人的想法。 问题背景 在 Go 这门编程语言中,错误处理机制主要是依赖于 if err != nil 的方式。因此在对函数做一定的封装后。 代 开发运维 2024-06-05 LOVEHL^ˇ^
Python动态创建类,为编程带来极大的灵活性和扩展性 引言 在Python中,动态创建类是一种强大的能力,允许开发者在运行时创建新的类或动态地修改现有类的结构。这种能力为编程带来了极大的灵活性和扩展性。本文将探讨动态创建类的几种方法,以及其在实际编程中的应用。 使用type()函数创建类 type()函数不仅可以用来检查对象的类型,还可以用来创建新的类。它接受类名、继承的父类元组和包含属性的字典作为参数,返回一个新的类。以下是一个简单的示例: MyC 开发运维 2024-06-05 大猫
Python 大神教你如何优雅地清理大数据 大家好,今天我要带大家一起探索一下Python中的两个重要的数据清洗工具——Pandas和CSV库。 首先,我们来谈谈什么是数据清洗。简单来说,数据清洗就是对原始数据进行整理、转换和校验的过程,以便于后续的分析或挖掘。数据清洗对于数据分析至关重要,因为一个未经清洗的数据集可能会包含错误、缺失值或者不一致的信息,这会严重影响到我们的分析结果。 那么,在Python中有哪些常用的工具可以帮助我们进行数 开发运维 2024-06-05 贤蛋大眼萌
Kafka 如何基于 KRaft 实现集群最终一致性协调 一、架构概览 Zookeeper 提供了配置服务、分布式同步、命名服务、Leader 选举和集群管理等功能,在大数据时代的开始很多开源产品都依赖 Zookeeper 来构建,Apache Kafka 也不例外。但是随着 Kafka 功能的演进和应用的场景越来越多: 基于 Zookeeper 的协作模式,使得 Kafka 的集群一致性维护越来越复杂; 受到 Zookeeper 性能的限制,使得 开发运维 2024-06-04 爱可生开源社区
React Native V0.74 稳定版发布 React Native 最近有个令人兴奋的消息——V0.74 版本在几天前发布了,包含了超过1600个提交。亮点如下: Yoga 3.0 新架构:默认无桥模式 新架构:批量 onLayout 更新 新项目使用 Yarn 3 下面我们深入了解每个新亮点。 Yoga 3.0 首先了解一下 React Native 中的 Yoga 是什么。 Yoga —— 布局引擎 Yoga 是一个由 Meta 开发 开发运维 2024-06-04 穿过生命散发芬芳
用 Arthas 定位 Spring Boot 接口的超时问题,让应用起飞! 背景 公司有个渠道系统,专门对接三方渠道使用,没有什么业务逻辑,主要是转换报文和参数校验之类的工作,起着一个承上启下的作用。 最近在优化接口的响应时间,优化了代码之后,但是时间还是达不到要求;有一个诡异的100ms左右的耗时问题,在接口中打印了请求处理时间后,和调用方的响应时间还有差了100ms左右。比如程序里记录150ms,但是调用方等待时间却为250ms左右。 下面记录下当时详细的定位& 开发运维 2024-06-04 Escape
Rust 开发到底用 RustRover 与还是 VS Code Rust 插件? Rust 是近年来迅速崛起的一门系统级编程语言,以稳定性、安全性和性能著称。随着 Rust 的普及,开发者对开发工具的需求也与日俱增。在众多的开发环境中,JetBrains 的 RustRover 和微软的 Visual Studio Code (VS Code) Rust 插件是两个备受关注的选择。本文将对这两款工具进行详细的对比,从功能、使用体验、性能以及扩展性等多个方面入手,帮助开发者选择最 开发运维 2024-06-04 张二河
记一次 .NET 某质量检测中心系统崩溃分析 一、背景 1. 讲故事 这些天有点意思,遇到的几个程序故障都是和Windows操作系统或者第三方组件有关系,真的有点无语,今天就带给大家一例 IIS 相关的与大家分享,这是一家国企的.NET程序,出现了崩溃急需分析。 二、WinDbg 分析 1. 为什么会崩溃 崩溃原因相对还是好找的,双击dump文件之后错误信息马上就列出来了,参考如下: This dump file has an excepti 开发运维 2024-06-04 剑圣无痕
使用 Visual Studio 分析 .NET Dump 内存泄漏和高CPU使用率是在日常开发中经常遇到的问题,它们可能会导致应用程序性能下降甚至崩溃。今天我们来讲讲如何使用Visual Studio 2022分析.NET Dump,快速找到程序内存泄漏问题。 什么是Dump文件? Dump文件又叫内存转储文件或者叫内存快照文件。用于存储程序运行时的状态信息的文件,这些文件通常包含了程序运行时的内存内容、线程信息、堆栈调用信息、异常信息等数据。Dump文 开发运维 2024-06-04 竹子爱熊猫
实用 Python:文件与目录管理的 17 个技巧 今天我们要一起探索的是Python编程中的一个非常实用且基础的领域——文件与目录管理。无论是处理个人数据、自动化办公任务还是构建复杂的软件系统,这些技巧都将大大提升你的工作效率。准备好了吗?让我们一起动手吧! 1. 打开与读取文件 目标:学习如何安全地打开文件并读取内容。 技巧:使用with open()语句自动管理文件资源,防止忘记关闭文件。 示例代码: with open('example.t 开发运维 2024-06-04 竹子爱熊猫
Python实现策略模式、观察者模式和责任链模式 今天我们将介绍三种行为型设计模式:策略模式、观察者模式和责任链模式。 1.策略模式 策略模式是一种行为设计模式,它允许在运行时选择算法的行为。它将算法封装在独立的策略类中,使得它们可以互相替换,而不会影响到客户端代码。在Python中,我们可以使用函数或者类来实现策略模式。 (1) 策略模式的结构 策略模式的核心是定义一个策略接口,所有的具体策略都要实现这个接口。然后,我们可以在客户端代码中使用策 开发运维 2024-06-04 捡田螺的小男孩
C# 异常处理:每个 .NET 开发者都应掌握的核心知识点 在.NET开发中,异常处理是一个至关重要的技能。它不仅能提高程序的健壮性,还能在出现问题时提供有关错误的详细信息,从而加速调试和问题解决的过程。本文将深入探讨C#中的异常处理,通过实例代码展示每个.NET开发者都应掌握的关键知识点。 异常处理基础 C#中的异常处理主要通过try-catch块来实现。try块中包含可能引发异常的代码,而catch块则负责捕获并处理这些异常。 try { // 可能抛 开发运维 2024-06-04 泡泡
使用 React Hooks 实现鼠标悬浮卡片发光的动画效果 有趣的动画效果 前几天在网上看到了一个很有趣的动画效果,如下,光会跟随鼠标在卡片上进行移动,并且卡片会有视差的效果,那么在 React 中应该如何去实现这个效果呢? 基本实现思路 其实实现思路很简单,无非就是分几步: 首先,卡片是相对定位,光是绝对定位 监听卡片的鼠标移入事件mouseenter,当鼠标进入时显示光 监听卡片的鼠标移动事件mouseover,鼠标移动时修改光的left、top,让光 开发运维 2024-06-04 宇宙之一粟