golang的堆和栈 golang的堆和栈
背景在Go语言中,堆和栈是内存管理的两个重要概念,它们在存储和管理数据的方式上有很大的区别。以下是栈和堆之间的主要区别: 1. 内存分配方式栈(Stack): 栈内存是由编译器管理的,它以LIFO(后进先出)的方式分配和释放内存。 当函数被
2025-02-24
消息事务 消息事务
背景面试的时候遇到一个半消息的问题,是RocketMQ 中通过消息实现分布式事务的功能。之前没有涉及过这部分知识,在这里做个记录、 应用场景分布式系统调用的特点为一个核心业务逻辑的执行,同时需要调用多个下游业务进行处理。因此,如何保证核心业
2025-02-11
LLM大模型量化格式对比 LLM大模型量化格式对比
背景随着人工智能技术的快速发展,大型语言模型(LLM)已在自然语言处理、语音识别、图像识别等多个领域取得了显著的成果。然而,LLM的广泛应用也面临着一些挑战,如模型体积大、计算资源消耗高等问题。为了解决这些问题,模型量化技术应运而生。本文将
2025-01-15
MySQL与PostgreSQL的区别 MySQL与PostgreSQL的区别
背景MySQL 和 PostgreSQL 都是广泛使用的开源关系型数据库管理系统,但它们在架构、功能、性能和使用场景等方面有许多不同之处。以下是它们的主要区别: 1. 基本概念与架构MySQL: 由 Oracle 维护(之前是 Sun Mi
2024-12-26
defer关键字 defer关键字
背景在 Go 语言中,defer 是一个非常强大的关键字,它能够在函数执行结束后,按逆序执行注册的延迟操作。defer 在许多场景中都能提高代码的可读性与健壮性,尤其是在需要清理资源或处理结束逻辑的情况下。本文将详细介绍 defer 的使用
2024-11-16
RabbitMQ与Kafka的区别 RabbitMQ与Kafka的区别
背景Kafka 和 RabbitMQ 都是常用的消息队列中间件,但它们的设计理念、架构、性能以及使用场景有所不同 1. 基本概念Kafka: Kafka 是一个分布式流平台,主要用于高吞吐量的数据流处理。它设计初衷是处理大规模的实时数据流,
2024-10-06
ElasticSearch与MongoDB的区别 ElasticSearch与MongoDB的区别
背景在面试中,经常被问到 Elasticsearch(ES) 和 MongoDB 的区别,现在总结一下,主要是从它们的功能、架构、使用场景等方面进行区分。以下是两者的主要区别: 1. 基本概念和用途Elasticsearch (ES): 用
2024-09-26
跳表实现 跳表实现
背景有这么一道比较有意思的面试题:“Redis 的有序集合底层为什么要用跳表” Redis 的有序集合Redis 有个比较常用的数据结构叫有序集合(sorted set,简称 zset),正如其名它是一个可以保证有序且元素唯一的集合,所以它
2024-08-21
使用pytest对数据库进行校验 使用pytest对数据库进行校验
背景 业务中需要与其他方进行对接,对方提供数据 由于有异常的数据会对业务操作非常大的影响 需要将异常数据进行前置检查,未通过的数据不允许入库 pytest介绍 pytest 是一个用于 Python 的测试框架,支持简单的单元测试和复杂的
2024-07-14
gin工程错误码翻译 gin工程错误码翻译
一、背景 需要对请求参数的校验,防止用户的恶意请求。 需要对代码错误码进行翻译,返回中文 gin框架使用github.com/go-playground/validator进行参数校验, 在定义结构体时使用 binding 或 valida
2024-06-08
软件许可证名称表 软件许可证名称表
一、背景 许可证名称非常多,需要建立一个映射关系,将同类型的许可证名称统一映射为简称 在后续使用的时候,统一使用简称二、方案 建立一个许可证映射关系表 引擎分析时对许可证名称根据映射关系进行映射,统一改为简称 组件库将组件许可证统一为许可证
2024-05-04
postgre数据导入导出 postgre数据导入导出
背景 在软件交付过程中,出厂需要带上较大数据量的数据 数据量会比较大,需要一个初始导入的方案 需要在初次交付部署时进行导入 在后续维护过程中需要持续不断的导入新数据 对于数据来说,只需要增加,不需要修改,删除 全量导入方案1、PG的备份恢
2024-04-24
1 / 10