-
8大高并发锁最全详解(图文全面总结)
来源:mikechen的互联网架构 在Java并发场景中,会涉及到各种各样的锁,比如:分段锁、公平锁,独享锁、共享锁、乐观锁,悲观锁等等,感觉特别的繁杂,一句话很难描述清楚,但又特别的重要。 下面我就通过图文并茂的方式,一起来梳理和详解最全锁! ——嘀嘀!上车了!准备上车了!!—— 乐观锁 VS 悲观锁 乐观锁与悲观锁是一种广义上的概念,在Java并发编程···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
一口气搞懂分库分表 12 种分片算法,大厂都在用
来源:程序员小富 前言 本文是《ShardingSphere5.x分库分表原理与实战》系列的第五篇文章,我们一起梳理下ShardingSphere框架中的核心部分分片策略和分片算法,其内部针为我们提供了多种分片策略和分片算法,来应对不同的业务场景,本着拿来即用的原则。 这次将详细介绍如何在ShardingSphere-jdbc中实战 5 种分片策略和 12···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
负载均衡原理最全详解(万字图文总结)
来源:mikechen的互联网架构 负载均衡是大型架构必经之路,也是大厂最喜欢考察的内容,下面我就全面来详解负载均衡 为什么需要负载均衡 当系统面临大量用户访问,负载过高的时候,通常会使用增加服务器数量来进行横向扩展,使用集群和负载均衡提高整个系统的处理能力。 从单机网站到分布式网站,很重要的区别是业务拆分和分布式部署,将应用拆分后,部署到不同的机器上,···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
vivo 消息中间件测试环境项目多版本实践
作者:vivo 互联网中间件团队 - Liu Tao 在开源 RocketMQ 基础之上,关于【测试环境项目多版本隔离】业务诉求的落地与实践。 一、背景 在2022年8月份 vivo 互联网中间件团队完成了互联网在线业务的MQ引擎升级,从RabbitMQ 到 RocketMQ 的平滑升级替换。 在业务使用消息中间件的过程中,提出了开发测试环境项目多版本隔离···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
3万字80道Java基础经典面试题总结(2024修订版)
来源:哪吒编程 大家好,我是哪吒。 本系列是《10万字208道Java经典面试题总结(附答案)》的2024修订版。 1、说说跨平台性 我们希望编写好的代码和程序,最好可以在任意平台和环境下运行,而不需要根据不同的平台,编写不同的代码。 比如,我编写的一个博客管理系统,我希望它可以在windows中运行,也可以在Linux环境下运行,也可以在MacOS环境下···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
通过方法引用获取属性名的底层逻辑是什么?
来源:江南一点雨 很多小伙伴可能都用过 MyBatis-Plus,这里边我们构造 where 条件的时候,可以直接通过方法引用的方式去指定属性名:LambdaQueryWrapper<Book>qw=new LambdaQueryWrapper<>();qw.eq(Book::getId,2 ); Listlist=bookMapp···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
6大SpringCloud组件详解(图文全面总结)
来源:mikechen的互联网架构 微服务是非常重要的分布式系统,其中SpringCloud是典型微服务代表,而且大厂也经常考察,下面重点详解6大SpringCloud组件 Spring Cloud Spring Cloud ,是基于 SpringBoot框架 的一个开源微服务框架,提供了一整套的微服务解决方案。 Spring Cloud 提供了集成了 E···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
《哪吒面经》4万字102道Java多线程经典面试题
来源:哪吒编程 大家好,我是哪吒。 本篇文章是Java多线程经典面试题。 1、创建线程的有哪些方式? (1)通过继承Thread类定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行体。创建Thread子类的实例,即创建了线程对象。调用线程对象的start()方法来启动该线程。(2)通···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
面试官:如何设计和实现一个带过期时间的本地缓存?
来源:JAVA日知录 在日常开发中有很多这样的场景:有一些业务系统的配置信息,数据量不大,修改频率不高,但是访问很频繁。如果每次程序都从数据库或集中式缓存中获取,受限于硬盘 I/O性能、远程网络访问限制等,程序的执行效率不高。在这样的业务场景中,我们可以通过本地缓存来提升数据访问的效率。 今天我们来基于ConcurrentHashMap与Scheduled···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
复杂性、耦合度和内聚性
来源:小技术君 我们遇到的任何软件系统很可能都过于复杂,一次无法完全理解 — 人类的思维无法理解大量实体及其关系。我们倾向于通过建立抽象来简化现实:一旦我们将许多闪亮的金属、玻璃和橡胶定义为“汽车”,我们就可以谈论“高速公路”、“停车场”和“乘客” — 我们生活在我们创造的抽象世界中。同样,我们编写的软件由服务、进程、文件、类、过程等组成 — 这些模块隐藏···
- 发布时间:2025-05-17
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])