logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

MySQL系列一(索引、常见索引类型、索引下推、回表、聚簇索引与非聚簇索引、索引的数据结构B+树、索引失效的场景)

索引索引是一种可以加快检索速度的结构,类似于目录运用在表中某些字段上,存储索引需要单独占据一定的空间索引的特点:索引一旦建立,数据库会自动对其进行维护,而且由数据库决定何时使用索引使用时不必指定使用的索引,由数据库决定使用哪个索引索引分类:普通索引:最基本的数据库索引,没有任何限制唯一索引:唯一索引不允许两行具有相同的索引值主键索引:为表建立一个主键就会自动创建主键索引...

文章图片
#mysql#b树#数据库
分布式锁(Redis分布式锁的问题、锁超时、Redlock、Redission)

由于锁没有同步成功,线程B就可以获取同个key的锁,这就会出现线程A还没执行完,线程B又来执行,导致并发安全问题。如果设置锁的超时时间为10s,程序没执行完但是锁已经被释放了,线程2重新获得锁,但是线程1执行完删除了线程2的锁,导致其他线程重新获得锁,可以使用。分布式锁是指所有服务中的所有线程都去获取同一把锁,但只有一个线程可以成功的获得锁,其他没有获得锁的线程必须全部等待,直到持有锁的线程释放锁

文章图片
#redis#分布式#java
Spring系列四(Spring Bean的加载流程)

2.4 获取单例:getSingleton(String beanName, ObjectFactory

文章图片
#spring#java#后端
并发编程八(线程池、ThreadPoolExecutor、参数设置、优雅关闭线程池、使用建议)

1. 线程池2. 创建线程池3. ThreadPoolExecutor的核心参数4. 任务提交给线程池之后的执行流程5. 线程池参数设置6. 线程池的五种状态7. 线程池中可用于执行任务的方法

文章图片
#java#服务器#开发语言
ShardingSphere系列二(ShardingSphere实现分库分表)

当业务系统逐渐增大时,单库单表不足以支撑起整个业务,性能会急速下降,这是就需要分库分表;垂直拆分垂直分库垂直分库针对的是系统中的不同业务进行拆分。如用户一个库,订单一个库、商品一个库…分库之后减小了单库的压力,但单机压力并不会缓解多少,可以通过把库放到不同的服务器上解决。垂直分表“大表拆小表”,基于列字段进行拆分。一般是对表中的字段较多的表进行拆分,将不常用的、数据较大、长度较长的拆分到...

文章图片
#mysql
JVM异常及解决办法

文章目录Java堆溢出虚拟机栈和本地方法栈溢出方法区和运行时常量池溢出在Java虚拟机规范中,除了程序计数器外,虚拟机内存的其他几个运行时区域都有发生OutOfMemoryError异常的可能。下面是一些常见的异常及解决方法:Java堆溢出       Java堆用于存储对象实例,只要不断的创建对象,并保证GC Root到...

文章图片
#java#eclipse#开发语言
JSP基础

文章目录JSPJSP注释JSP表达式、程序段、声明1. JSP表达式2. JSP程序段3. JSP声明URL传值表单传值JSP指令和动作1. JSP指令2. JSP动作JSPJSP运行于服务器端,能够向客户端展现内容可以变化的网页文档,以及处理用户提交的表单数据。JSP注释JSP注释可以分为两类,如下:能够发送给客户端,可以在源代码文件中显示出其内容。主要是以HTML注释语法出现。...

到底了