会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
SevenCoding
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
12
13
14
15
16
17
18
19
下一页
2024年11月25日
Redis究竟为什么这么快?
摘要: Redis为什么这么快? 完全基于内存,数据存在内存中,绝大部分请求是纯粹的内存操作,非常快速,跟传统的磁盘文件数据存储相比,避免了通过磁盘IO读取到内存这部分的开销。 数据结构简单,对数据操作也简单。【Redis中的数据结构】是专门进行设计的,每种数据结构都有一种或多种数据结构来支持。Redis正
阅读全文
posted @ 2024-11-25 08:15 程序员Seven
阅读(1881)
评论(2)
推荐(4)
2024年11月22日
Redis中有事务吗?有何不同?
摘要: 与关系型数据库事务的区别 Redis事务是指将多条命令加入队列,一次批量执行多条命令,每条命令会按顺序执行,事务执行过程中不会被其他客户端发来的命令所打断。也就是说,Redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。 Redis事务和关系型数据库的事务不太一样,它不保证原子性,也
阅读全文
posted @ 2024-11-22 08:15 程序员Seven
阅读(468)
评论(0)
推荐(0)
2024年11月21日
万字长文带你深入Redis底层数据结构
摘要: Redis数据库的数据结构 Redis 的键值对中的 key 就是字符串对象,而 value 就是指Redis的数据类型,可以是String,也可以是List、Hash、Set、 Zset 的数据类型。 其实是Redis 底层使用了一个全局哈希表保存所有键值对,哈希表的最大好处就是 O(1) 的时间
阅读全文
posted @ 2024-11-21 08:15 程序员Seven
阅读(951)
评论(0)
推荐(2)
2024年11月20日
Redis中常见的数据类型及其应用场景
摘要: 五种常见数据类型 Redis中的数据类型指的是 value存储的数据类型,key都是以String类型存储的,value根据场景需要,可以以String、List等类型进行存储。 各数据类型介绍: Redis数据类型对应的底层数据结构 String 类型的应用场景 常用命令 存放键值:set key
阅读全文
posted @ 2024-11-20 08:15 程序员Seven
阅读(653)
评论(0)
推荐(3)
2024年11月19日
Mysql篇-语句执行计划详解(explain)
摘要: 概述 使用 explain 输出 SELECT 语句执行的详细信息,包括以下信息: 表的加载顺序 sql 的查询类型 可能用到哪些索引,实际上用到哪些索引 读取的行数 Explain 执行计划包含字段信息如下:分别是 id、select_type、table、partitions、type、poss
阅读全文
posted @ 2024-11-19 08:15 程序员Seven
阅读(623)
评论(1)
推荐(2)
2024年11月14日
Mysql篇-三大日志
摘要: 概述 undo log(回滚日志):是 Innodb 存储引擎层生成的日志,实现了事务中的原子性,主要用于事务回滚和 MVCC。 redo log(重做日志):是 Innodb 存储引擎层生成的日志,实现了事务中的持久性,主要用于掉电等故障恢复; binlog (归档日志):是 Server 层生成
阅读全文
posted @ 2024-11-14 08:15 程序员Seven
阅读(628)
评论(0)
推荐(4)
2024年11月12日
Mysql篇-Buffer Pool中的三大链表
摘要: 为什么要有 Buffer Pool? 虽然说 MySQL 的数据是存储在磁盘里的,但是也不能每次都从磁盘里面读取数据,这样性能是极差的。 要想提升查询性能,那就加个缓存。所以,当数据从磁盘中取出后,缓存内存中,下次查询同样的数据的时候,直接从内存中读取。 为此,Innodb 存储引擎设计了一个缓冲池
阅读全文
posted @ 2024-11-12 08:15 程序员Seven
阅读(398)
评论(0)
推荐(0)
2024年11月11日
Mysql数据类型面试题15连问
摘要: 整数类型的 UNSIGNED 属性有什么用? MySQL 中的整数类型可以使用可选的 UNSIGNED 属性来表示不允许负值的无符号整数。使用 UNSIGNED 属性可以将正整数的上限提高一倍,因为它不需要存储负数值。 例如, TINYINT UNSIGNED 类型的取值范围是 0 ~ 255,而普
阅读全文
posted @ 2024-11-11 08:15 程序员Seven
阅读(630)
评论(0)
推荐(1)
2024年11月7日
一起了解早期使用的各种垃圾收集器
摘要: 以上是 HotSpot 虚拟机中的 7 个垃圾收集器,连线表示垃圾收集器可以配合使用。 并行收集: 指多条垃圾收集线程并行工作,但此时用户线程仍处于等待状态。 并发收集: 指用户线程与垃圾收集线程同时工作(不一定是并行的可能会交替执行)。用户程序在继续运行,而垃圾收集程序运行在另一个CPU上 吞吐量
阅读全文
posted @ 2024-11-07 08:15 程序员Seven
阅读(294)
评论(0)
推荐(1)
2024年11月5日
一文夯实垃圾收集的理论基础
摘要: 如何判断一个引用是否存活 引用计数法 给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加 1;当引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。 优点:可即刻回收垃圾,当对象计数为0时,会立刻回收; 弊端:循环引用时,两个对象的计数都为1,导致两个对象都无法被释
阅读全文
posted @ 2024-11-05 08:15 程序员Seven
阅读(347)
评论(2)
推荐(0)
2024年11月4日
说说Java的类加载机制?究竟什么是双亲委派模型?
摘要: 首先引入一个概念,什么是Java类加载器? 一句话总结:类加载器(class loader)用来加载 Java 类到 Java 虚拟机中。 官方总结:Java类加载器(英语:Java Classloader)是Java运行时环境(Java Runtime Environment)的一部分,负责动态加
阅读全文
posted @ 2024-11-04 08:15 程序员Seven
阅读(594)
评论(2)
推荐(3)
2024年10月31日
对象一定分配在堆中吗?聊聊TLAB和逃逸分析技术
摘要: TLAB TLAB是虚拟机在堆内存的eden划分出来的一块专用空间,是线程专属的。在虚拟机的TLAB功能启动的情况下,在线程初始化时,虚拟机会为每个线程分配一块TLAB空间(包含在 Eden 空间内),只给当前线程使用,这样每个线程都单独拥有一个空间,如果需要分配内存,就在自己的空间上分配,这样就不
阅读全文
posted @ 2024-10-31 08:15 程序员Seven
阅读(165)
评论(0)
推荐(0)
2024年10月30日
深入理解Java中的FutureTask:用法和原理
摘要: 前言 Callable、Future和FutureTask是jdk1.5,java.util.concurrent包提供的异步框架 这里先讲一下什么是异步?异步是指起多个线程,多个线程之间互不干扰,各自执行各自的任务,在代码中可能书写顺序有先有后,但有可能写在后面的线程会比写在前面的线程先执行任务,
阅读全文
posted @ 2024-10-30 08:15 程序员Seven
阅读(349)
评论(0)
推荐(0)
2024年10月29日
聊聊jvm的内存结构, 以及各种结构的作用
摘要: 什么是JVM 定义:Java Virtual Machine,JAVA程序的运行环境(JAVA二进制字节码的运行环境) 内存结构 JVM 内存布局规定了 Java 在运行过程中内存申请、分配、管理的策略,保证了 JVM 的高效稳定运行。不同的 JVM 对于内存的划分方式和管理机制存在着部分差异。这也
阅读全文
posted @ 2024-10-29 08:15 程序员Seven
阅读(531)
评论(0)
推荐(2)
2024年10月28日
史上最全ThreadLocal 详解
摘要: 概述 线程本地变量。当使用 ThreadLocal 维护变量时, ThreadLocal 为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程。 每个线程都有一个 ThreadLocalMap ( ThreadLocal 内部类),Map中元素的键为
阅读全文
posted @ 2024-10-28 08:15 程序员Seven
阅读(826)
评论(0)
推荐(1)
2024年10月24日
彻底搞懂ScheduledThreadPoolExecutor
摘要: 前言 项目中经常会遇到一些非分布式的调度任务,需要在未来的某个时刻周期性执行。实现这样的功能,我们有多种方式可以选择: Timer类, jdk1.3引入,不推荐。 它所有任务都是串行执行的,同一时间只能有一个任务在执行,而且前一个任务的延迟或异常都将会影响到之后的任务。可能会出现任务执行时间过长而导
阅读全文
posted @ 2024-10-24 08:00 程序员Seven
阅读(1733)
评论(0)
推荐(2)
2024年10月23日
面试题:如何能够保证T2在T1执行完后执行,T3在T2执行完后执行?——CountDownLatch原理
摘要: CountDownLatch的使用方式 CountDownLatch用于某个线程等待其他线程执行完任务再执行,与thread.join()功能类似。常见的应用场景是开启多个线程同时执行某个任务,等到所有任务执行完再执行特定操作,如汇总统计结果。 面试题:如何能够保证T2在T1执行完后执行,T3在T2
阅读全文
posted @ 2024-10-23 08:00 程序员Seven
阅读(154)
评论(0)
推荐(0)
2024年10月22日
Tomcat线程池详解,为什么SpringBoot最大支持200并发?
摘要: Q:经典面试题,SpringBoot 应用可以同时并发处理多少请求? A:SpringBoot 应用并发处理请求数主要由两个因素影响,使用的 Servlet容器(默认使用 Tomcat,常用的还有 jetty、undertow) 和 配置项。所以在默认配置下,SprigBoot 应用可以并发处理 2
阅读全文
posted @ 2024-10-22 08:00 程序员Seven
阅读(1954)
评论(0)
推荐(4)
2024年10月21日
多线程交替顺序打印ABC的多种方式
摘要: 面试题:有 3 个独立的线程,一个只会输出 A,一个只会输出 B,一个只会输出 C,在三个线程启动的情况下,请用合理的方式让他们按顺序打印 ABC。 使用lock,Condition import java.util.concurrent.locks.Condition; import java.u
阅读全文
posted @ 2024-10-21 10:13 程序员Seven
阅读(413)
评论(0)
推荐(0)
2024年10月16日
手写生产者消费者模型
摘要: 前言 生产者-消费者模式是一个十分经典的多线程并发协作模式,弄懂生产者-消费者问题能够让我们对并发编程的理解加深。 所谓的生产者-消费者,实际上包含了两类线程,一种是生产者线程用于生产数据,另一种是消费者线程用于消费数据,为了解耦生产者和消费者的关系,通常会采用共享的数据区域,就像是一个仓库,生产者
阅读全文
posted @ 2024-10-16 23:12 程序员Seven
阅读(441)
评论(0)
推荐(1)
上一页
1
···
12
13
14
15
16
17
18
19
下一页
公告