乐观锁和悲观锁介绍

如果将悲观锁(Pessimistic Lock)和乐观锁(Optimistic Lock)对应到现实生活中来。悲观锁有点像是一位比较悲观(也可以说是未雨绸缪)的人,总是会假设最坏的情况,避免出现问题。乐观锁有点像是一位比较乐观的人,总是会假设最好的情况,在要出现问题之前快速解决问题。 什么是悲观锁?…

hello hello 发布于 2024-11-30

MySQL 通过 Next-Key Locking 技术(行锁+间隙锁)避免幻读问题

在MySQL中,InnoDB引擎通过 Next-Key Locking 技术来解决幻读问题。幻读是一种事务并发问题,通常出现在 Repeatable Read 隔离级别下的范围查询操作中。幻读的现象是,事务在查询时多次执行相同的范围查询,但由于其他事务的插入或删除操作导致结果不一致,出现“幻觉”一样的记录。 Next-Key Locking 技术结合了…

hello hello 发布于 2024-11-28

功能强大,代码优雅:Java8真实案例Stream大数据集高效之旅

Java8新特性 Java8 新增了非常多的特性,我们主要讨论以下几个: Lambda 表达式 − Lambda 允许把函数作为一个方法的参数(函数作为参数传递到方法中)。 Stream API −新添加的Stream API(java.util.stream) 把真正的函数式编程风格引入到Java中。 Java 8 Stream API…

hello hello 发布于 2024-11-28

try-catch 会影响性能吗?

在编程中,异常处理是一个重要的概念,它允许程序在运行时捕获和处理错误,而不是简单地崩溃。在许多编程语言中,包括Java、C++、C#和Python, try-catch 结构是实现这种异常处理的常用机制。那么, try-catch 是否会影响性能?这篇文章我们来聊一聊。 异常处理的基本原理 在了解 try-catch…

hello hello 发布于 2024-11-28

工作中 Spring Boot 五大实用小技巧,来看看你掌握了几个?

0. 引入 Spring Boot 以其简化配置、快速开发和微服务支持等特点,成为了 Java 开发的首选框架。本文将结合我在实际工作中遇到的问题,分享五个高效的 Spring Boot 的技巧。希望这些技巧能对你有所帮助。 1. Spring Boot 执行初始化逻辑 1.1 背景…

hello hello 发布于 2024-11-28

Java CompletableFuture 介绍(二)

异常处理 你可以通过 handle() 方法来处理任务执行过程中可能出现的抛出异常的情况。 public <U> CompletableFuture<U> handle( BiFunction<? super T, Throwable, ? extends U> fn) { return uniHandleStage(null, fn); } public…

hello hello 发布于 2024-11-27

Java CompletableFuture 介绍(一)

实际项目中,一个接口可能需要同时获取多种不同的数据,然后再汇总返回,这种场景还是挺常见的。举个例子:用户请求获取订单信息,可能需要同时获取用户信息、商品详情、物流信息、商品推荐等数据。 如果是串行(按顺序依次执行每个任务)执行的话,接口的响应速度会非常慢。考虑到这些任务之间有大部分都是 无前后顺序关联 的,可以 并行执行…

hello hello 发布于 2024-11-27

吴恩达开源新作!统一 LLM 调用的 Python 包:Aisuite

近年来,大型语言模型(LLM)如雨后春笋般涌现,OpenAI、Anthropic、Google、AWS 等各大厂商纷纷推出强大的模型。 然而,开发者在调用这些模型时往往需要适配各自的接口,繁琐且效率低下。 为了解决这一痛点, 吴恩达团队 推出了开源 Python 包: Aisuite ,看名称就知道是一个AI套件。 一个统一 LLM…

hello hello 发布于 2024-11-27

开源高质量文字识别项目:Ollama-OCR

Llama 3.2-Vision 是一种多模态大型语言模型,有 11B 和 90B 两种大小,能够处理文本和图像输入,生成文本输出。该模型在视觉识别、图像推理、图像描述和回答图像相关问题方面表现出色,在多个行业基准测试中均优于现有的开源和闭源多模态模型。 本文将介绍开源的 ollama-ocr [1] 工具,它默认使用本地运行的 Llama…

hello hello 发布于 2024-11-27
上一页 下一页