首页
沸点
课程
APP
AI用量
作品广场
专家标注
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
V哥原创技术栈
威哥爱编程
创建于2024-03-18
订阅专栏
本专栏收集 V 哥后端开发高阶内容,包括设计模式、源码剖析、算法与数据结构、高并发、分布式、鸿蒙NEXT、经验分享、招聘内推、人脉链接。
等 86 人订阅
共431篇文章
创建于2024-03-18
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
好文!12个策略解决 Kafka 数据丢失问题
生产者确认机制:生产者可以使用 Kafka 的确认机制来确保消息成功发送到 Kafka 集群。生产者可以选择等待 Kafka 的确认响应(acks)或使用同步发送方式,以确保消息不会丢失。 增加副本因
数据结构之B树的原理与业务场景
1. B树的原理 节点的出度:B树的每个节点可以有多个子节点,通常用m表示,称为出度。 键的数量:在B树中,每个节点的键数量介于m2,m2m,m之间。 分裂操作:当一个节点的键数量超过m时,它会被分
3分钟搞定Zookeeper 和 Eureka 的区别
Zookeeper 和 Eureka 都是服务发现框架,它们在分布式系统中扮演着重要的角色,但它们之间存在一些关键的区别: 1. 设计原则: Zookeeper 遵循 CP 原则,即在网络分区发生时,
15分钟面试被5连CALL,你扛得住么?
第1问:Java 项目中为什么需要锁? 在Java项目中,锁(Locks)是并发编程中非常重要的一个概念,主要用于控制对共享资源的访问以保证数据的一致性和线程安全。以下是Java项目中需要锁的一些原因
MySQL 的可重复读怎么实现的?
夏天了,都喜欢吃冰棍,就是那种通透的感觉,今天 V 哥的文章,也要让你感受一下,如何通透的理解这个问题:MySQL中可重复读的实现主要依赖于以下几个机制: 1. MVCC(多版本并发控制): 在MyS
分布式CAP、BASE理论务必了解一下
分布式系统理论是计算机科学中的一个重要分支,它关注如何设计和实现能够跨多个物理或逻辑位置运行的系统。在分布式系统中,CAP定理和BASE理论是两个非常著名的理论,它们分别描述了分布式系统设计中的一些基
什么是领域模型(domain model)?贫血模型(anaemic domain model)和充血模型(Rich Domain Model)
领域模型(Domain Model) 领域模型是软件工程中的一个概念,指的是在特定业务领域内,对现实世界中的实体、概念、业务规则和关系的抽象表达。它是应用程序设计的核心部分,用于指导软件系统的开发,并
Redis 分布式锁过期了,还没处理完怎么办?
这是一个分布式应用里很常见到的需求,关于这个问题,有经验的程序员会怎么处理呢,今天的文章,V 哥来详细说一说,把这个问题彻底讲清楚。开干! 首先,我们在设置过期时间时要结合业务场景去考虑,尽量设置一个
什么是XSS攻击?什么是SQL注入攻击?什么是CSRF攻击?
XSS攻击、SQL注入攻击和CSRF攻击是三种常见的网络安全威胁,它们分别针对不同的应用层面和安全漏洞。以下是对这三种攻击方式的详细介绍: 1. XSS攻击(跨站脚本攻击,Cross-Site Scr
InnoDB 四大特性知道吗?
InnoDB 是 MySQL 数据库中的一种存储引擎,它具有许多特性,但通常被认为有以下几个主要特点: 行级锁定:InnoDB 支持行级锁定,这意味着它在处理并发事务时,只锁定那些需要修改的行,而不是
如何保证数据库和缓存的数据一致性?
保证数据库和缓存的数据一致性是一个复杂的问题,通常需要根据具体的应用场景和业务需求来设计策略。以下是一些常见的方法来处理数据库和缓存之间的数据一致性问题: 缓存穿透:确保缓存中总是有数据,即使数据在数
【长文解析】Redis在项目中的17种使用场景
缓存:Redis 可以作为应用程序的缓存层,减少数据库的读取压力,提高数据访问速度。 会话存储:在 Web 应用中,Redis 可以用来存储用户的会话信息,如登录状态、购物车内容等。 排行榜和计数器:
Spring 怎么解决循环依赖的问题?
Spring框架解决循环依赖主要通过三级缓存来实现,这主要发生在Spring容器创建bean的过程中。以下是Spring解决循环依赖的基本步骤: 一级缓存(singletonObjects):存放已经
线程池有哪些拒绝策略?
线程池的拒绝策略是指当线程池中的线程数达到其最大容量,并且队列也满了时,线程池如何处理新提交的任务。在Java中,ThreadPoolExecutor提供了以下四种拒绝策略: AbortPolicy(
使用缓存时,先操作数据库 or 先操作缓存
如何上面是一道面试题,你要如何回答,一个去团团面试的同学回来告诉我,一个问题带出一串问题,回答不好,直接作废,换句话说,刷面试题的同学要注意了,要一串一串的刷,把相关连的问题串起来,如果只是单个问题,
这个springboot项目好用!毕设项目、学习提升
今天V哥给大家介绍一款 springboot+第三方聚合支付平台项目,内容资料里含: 项目介绍 第三方支付平台是一套适合互联网企业使用的开源支付系统,支持多渠道服务商和普通商户模式。可以对接微信支付,
表面简单实则暗藏玄机的面试题:Java数组适合做队列吗?
队列是一种先进先出(FIFO)的数据结构,它允许你在队列的一端添加元素,在另一端移除元素。由于数组的长度是固定的,一旦数组满了,你就不能继续添加新的元素,除非你创建一个新的更大的数组并将现有元素复制过
Debian常用命令
Debian是一个流行的Linux发行版,它使用APT(Advanced Package Tool)作为其软件包管理工具。以下是一些常用的Debian命令,用于系统管理和软件包管理: 系统状态和信息
用爬山算法解决离散的优化问题
爬山算法,也称为梯度上升算法或局部搜索算法,是一种简单有效的优化算法,常用于解决连续或离散的优化问题。爬山算法的基本思想是从一个随机的初始点开始,通过迭代地向局部最优的方向移动,逐步逼近全局最优解。
17个Java代码优化奇技淫巧
1. 避免不必要的对象创建 业务场景:在处理大量数据的业务场景中,频繁创建对象会增加垃圾收集的负担。 优化前: 优化后: 2. 使用合适的数据结构 业务场景:在需要频繁查找、添加、删除操作的场景中,选
下一页