开发运维

OpenTelemetry并非可观测性的“神奇按钮”

OpenTelemetry 已成为可观测性体验的重要组成部分,随着其持续发展,它日益满足开发人员和运维人员的DevOps需求。然而,作为当前的主要开源项目之一,它仍需完善。它的功能…

Python 对象的行为是怎么区分的?

我们知道所有类型对象在底层都由结构体 PyTypeObject 实例化得到,但内部字段接收的值不同,得到的类型对象就不同。类型对象不同,那么实例对象的表现就不同,这也正是一种对象区…

面试官:你能实现一个 JavaScript 模板引擎吗?

Hello,大家好,我是 Sunday。这个问题具体是这样的:请为字符串增加一个 render 方法,可以实现如下最终的打印。const template = '我是 ${name…

记一次 .NET某工控WPF程序被人恶搞的卡死分析

一、背景1. 讲故事这一期程序故障除了做原理分析,还顺带吐槽一下,熟悉我的朋友都知道我分析dump是免费的,但免费不代表可以滥用我的宝贵时间,我不知道有些人故意恶搞卡死是想干嘛,不…

每个前端开发人员都应该了解的软件工程原理

作为前端开发人员,我们常常专注于创建漂亮的用户界面。然而,我们必须牢记,美也在于内在,完美像素的方法也应转化为我们的代码组织和结构。在本文中,我们将探讨一些基本的软件工程原则,每个…

一图胜千言!深度掌握 Python 绘图

据可视化是数据科学家传达洞见和讲述数据故事的关键工具。作为 Python 开发者,我们拥有丰富的可视化库和工具,能够创建各种引人入胜的图表。本文将探索一些鲜为人知但实用的可视化类型…

Python 中 Globals 函数的妙用

globals 函数是 Python 内置的一个非常有用的函数,它返回当前全局符号表的一个字典对象。符号表是一个包含了变量名和变量值的映射,而全局符号表则包含了所有在当前模块级别定…

十个强大的 Python 库,提升开发效率,事半功倍!

作为一款高度灵活和广泛使用的编程语言,Python拥有无数宝藏般的库,它们能极大地增强开发者的能力,让繁重的任务变得轻而易举。本文笔者总结了十个强大的Python库,建议收藏!1.…

关于 Python 的 12 个异常处理技巧

在Python的世界里,异常就像那些偶尔闯入代码乐园的小捣蛋。它们可能因数据错误、资源不足、逻辑冲突等问题引发,如果不妥善处理,轻则导致程序中断运行,重则引发难以预料的后果。所以,…

Git 不要只会 Pull 和 Push,这五条提高效率的命令得掌握!

使用 Git 作为代码版本管理,早已是现在开发工程师必备的技能。可大多数工程师还是只会最基本的保存、拉取、推送,遇到一些commit管理的问题就束手无策,或者用一些不优雅的方式解决…

Spring如何管理Bean的生命周期呢?

我们都知道,在面试的过程中,关于 Spring 的面试题,那是各种各样,很多时候就会问到关于 Spring的相关问题,比如 AOP ,IOC 等等,还有就是关于 Spring 是如…

Python 操作系统交互的 15 个实用命令

对于Python初学者而言,掌握如何使用Python与操作系统进行交互是一项非常实用的技能。这不仅能够让你的脚本更加灵活强大,还能在自动化任务处理、文件管理等方面大显身手。下面,我…

彻底搞清楚Vue3的DefineExpose宏是如何暴露方法给父组件使用

前言众所周知,当子组件使用setup后,父组件就不能像vue2那样直接就可以访问子组件内的属性和方法。这个时候就需要在子组件内使用defineExpose宏函数来指定想要暴露出去的…

京东二面:为什么Netty要创造FastThreadLocal?

FastThreadLocal 从字面意义上来看,它是“Fast”+“ThreadLocal”的结合体,寓意为快速的 ThreadLocal。那么,问题来了,Netty 为什么要再…

SpringBoot多租户3种架构实现方案详解

环境:SpringBoot3.3.01. 简介多租户表示应用程序的单个运行实例同时为多个客户机(租户)服务的体系结构。这在SaaS解决方案中非常常见。在这些系统中,隔离与各种租户相…

聊聊主流消息队列的认证和鉴权!

大家好,我是君哥。我们在使用消息队列时,经常关注的是消息队列收发消息的功能。但好多时候需要对客户端有一定的限制,比如只有持有令牌的客户端才能访问集权,不允许 Producer 发送…

消息队列的六种经典使用场景和 Kafka 架构设计原理详细解析

我是码哥,可以叫我靓仔。今天来聊一聊 Kafka 消息队列的使用场景和核心架构实现原理,帮助你全面了解 Kafka 其内部工作原理和设计理念。。Apache Kafka 是一个高吞…

2024 年面向前端开发的七个最佳图表库

现在越来越多的应用程序趋向于通过图表或图形进行数据可视化。怎么实现呢?简单,使用库或底层技术就行。作为开发人员,了解和掌握图表库将能起到巨大作用:不但可以大大提高效率、节省时间,还…

从基础概念到进阶思考,完整的递归思维学习

无论是刷算法题,还是日常开发,递归都是一个非常常用的解决问题的思路。利用递归思维,我们可以使用少量的代码解决复杂的问题。不过在刚开始的时候,递归通常没有那么容易理解,我们就从图示中…

为什么 Go Protobuf 不支持标签注入?

大家好,我是煎鱼。前几天我们交流了 gogo/protobuf 前两年开始 Deprecated,作者最终放弃更新的事情,还是挺让人深思的。其作者在最终对官方 protobuf 库…

大型前端应用如何做系统融合?

1. 背景介绍1.1业务介绍A平台与B平台同属于同一系统链路上,前者主要致力于为用户提供注册入驻服务,后者则专注于提供具体业务操作服务。两者皆为运营人员所依赖的在线管理工具。1.2…

12306技术内幕,你知道吗?

对于未公开的技术部分,只能结合已公开的信息,去做大胆的猜想。本文提到的一些解决方案,并不一定是标准的实现,一些观点旨在引发大家的思考。12306的成就创下全球最大实时票务交易系统世…

一篇带你学习 CSS 实现卷轴滚动效果

「庆余年2」 终于开播了~最近起点读书APP内上架了庆余年典藏书,最大的特色是里面新加入了全新的阅读皮肤,一个拟物化的卷轴滚动效果,效果如下:就是在拖动页面时,卷轴会随着页面的滚动…

Python虚拟环境的15个管理技巧

今天我们将一起探索如何高效管理你的Python虚拟环境,这是每位开发者旅程中的必备技能。对于初学者来说,掌握虚拟环境意味着你可以为不同的项目配置独立的Python环境,避免库版本冲…

接口防抖(防重复提交)技术实现方案

在Web开发和应用程序设计中,接口防抖(防重复提交)是一个重要的技术考虑点。当用户频繁触发某一事件,如点击提交按钮,若系统没有相应的防抖机制,可能会导致数据重复插入、资源浪费以及服…

.NET中的数据校验:特性与反射的完美结合

在.NET开发中,数据校验是一个不可或缺的部分,它确保应用程序接收到的数据是有效和可靠的。为了实现高效且灵活的数据校验,我们可以结合使用特性和反射。这种组合提供了一种声明式的方式来…

我们一起了解Java垃圾收集

Java 的垃圾收集机制在 Java 应用程序开发中至关重要。此机制对于通过消除不再使用的对象来释放内存空间得过程来说至关重要。在这篇文章中,我带大家深入了解下 Java 垃圾收集…

关于 Python 的 24 个常用模块简介

大家好!今天,我们将一起揭开24个常用模块的神秘面纱,助你在编程道路上快速升级!模块一:os - 系统交互大师import os # 查看当前工作目录 print(os.getcw…

深度解析:Elasticsearch 写入请求处理流程

版本:Elasticsearch 8.x今天来看下 Elasticsearch 中的写入流程。不想看过程可以直接跳转文章末尾查看总结部分。最后附上个人理解的一个图。从我们发出写入请…

六个Python开发者很少用到但功能强大的模块

一、前言每种流行的通用编程语言都有一个功能丰富、组织良好的标准库,可以帮助开发者使用预先开发的函数或类来提高编码效率。一些编程语言提供预导入的对象或函数来访问标准库,例如JavaS…

Python 角色权限隔离,你完全相信装饰器

在开发 Web 应用程序时,角色权限验证是一项非常重要的功能。它确保只有具备特定角色或权限的用户才能访问某些敏感或受限资源。在Python中,我们可以使用装饰器来实现角色权限验证,…

C# 类(Class):构建面向对象程序的基础

在C#编程中,类(Class)是面向对象编程(OOP)的核心概念之一。类是创建对象的模板,它定义了对象的属性和方法。通过类,我们可以封装数据和相关操作,从而实现代码的重用、扩展和维…

Node 之父新作:一个全新的 NPM 下载源工具!

在前端开发中,使用第三方 npm 模块可以显著提高我们的工作效率。我们既可以创建并分享自己的模块到 npm 仓库,供其他开发者使用,也可以从仓库中获取他人的模块以加快开发进程。然而…

Golang 状态机设计模式,你知道多少?

导言在我们开发的许多项目中,都需要依赖某种运行状态从而实现连续操作。这方面的例子包括:解析配置语言、编程语言等在系统、路由器、集群上执行操作...ETL(Extract Trans…

Python 字符串格式化方法性能与可读性对比

你是否曾经为在 Python 中如何格式化字符串而头疼?在这篇文章中,我们将探讨两种主要的方法——format() 和 f-string,并且深入讨论它们的性能与可读性。Pytho…

JavaScript的五项前沿技术,你知道吗?

从单子到模式匹配,我们将引导您了解高级开发人员使用的最新、最棒的 JavaScript 技术。译自Top 5 Cutting-Edge JavaScript Techniques,…

JWT:为何众多技术大牛都不推荐你使用?

随着Web技术的不断发展,身份验证与授权机制也在不断演变。其中,JSON Web Token(JWT)作为一种开放标准(RFC 7519)定义的方式,用于在网络之间安全地传输信息,…

C# 调用外部程序的三种实现方式

C#开发中,经常需要调用外部程序或命令。这种需求可能源于多种原因,比如执行特定的系统命令、调用第三方工具或脚本,或是与其他语言编写的程序进行交互。C#提供了多种方式来调用外部程序,…

了解结构化数据与非结构化数据的差异

介绍数据用途广泛,有多种形式,并且可以通过多种方式进行组织。一种常见的分类是结构化或非结构化数据,具有不同的存储、处理和分析方法。了解这些差异有助于从任何数据集中提取有价值的见解。…

一道字节面试题,把群友整不会了,关于 useMemo 用法的另外一个延伸

群友在一次字节的面试中,被要求实现 useToggle。useToggle 表示两个状态的来回切换。群友一想,这还不简单,于是就咔咔一顿写,两三笔就把该功能实现了。function…