自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 redis优化场景之批量处理

redis 在项目中是很常用的一个缓存工具,但是目前在我们系统中的一个使用场景中,竟然发现方法中执行最耗时的地方就是redis在调用get方法的时候,用jprofile分析一下方法的执行,发现redis的这个方法被调用了上万次。是在嵌套循环中调用的。当时想着这么多网络IO肯定是不行的,咋整呢。突然脑袋灵光乍现,想到了redis 的keys命令,批量把redis 的缓存都拿出来放到本地,然后从本地获取。但是这样等于把redis中的内存都放到本地了,有点离谱。Redis 的SCAN命令和KEYS。

2024-07-18 09:54:22 445

原创 FilterChainProxy分析

重点理解责任链一个设计的逻辑:1、肯定要有个调度者2、调度者有一个方法能拿到所有的处理器3、定义一个接口和方法,所有的处理器实现这个方法,方法中包含一个入参就是调度者4、调度者中拿到处理器以后,调用这个方法,调用的时候把自身传进去。具体可根据业务的实际情况设计原来的设计模式我记得是每一个处理器里面注入下一个处理器,感觉还是有耦合性,不如这个设计好,记录一下以后实践。

2024-07-02 16:50:41 323

原创 jacob解决word弹窗导致程序卡住的问题

jacob 程序卡住 弹窗 word

2024-05-27 11:15:58 509

原创 优先级队列使用及失效处理

个,也就是消息队列如果消息不到250个那就会被消费者一下取出,如下图 消息的状态会都是unacked,不是ready。那么消息就无法根据有优先级排序了,优先级队列就会失效。springboot 默认预取数是。具体预取数为多少根据项目需要。

2024-05-22 15:52:00 351

原创 rabbitMQ总结

MQ(message queue),本质是个队列,FIFO 先入先出,只不过队列中存放的内容是message,还是一种跨进程的通信机制,用于上下游传递消息。互联网架构中,MQ 是一种非常常见的上下游“逻辑解耦 + 物理解耦” 的消息通信服务。使用 MQ 之后,消息发送上游只需要依赖 MQ,不用依赖其他服务。

2024-05-22 15:33:53 1180

原创 neo4j插件使用

apoc Neo4j Desktop

2024-05-09 14:00:35 819

原创 neo4j数据批量插入测试

和。: 内嵌模式下,数据库会作为你的应用程序的一个部分,与你的应用程序代码在同一个Java进程中运行。你的代码可以直接访问数据库,而无需通过网络进行通信,这使得读写操作的性能非常高。​ 此外,内嵌模式允许你的应用程序直接访问Neo4j的API,提供更底层的数据库操作。然而,内嵌模式的缺点是: 在独立服务器模式下,Neo4j数据库作为一个独立的服务器运行,你的应用程序通过网络与数据库服务器进行通信。这允许了多个应用程序可以同时连接到数据库服务器,有利于构建高并发、分布式的应用。

2024-05-01 14:46:53 1263

原创 复制对象属性

自定义对象间属性复制

2023-06-15 11:41:39 124

原创 SpringCloud学习

就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以进行交互,这就是微服务Spring Cloud 的首要目标就是通过提供一系列开发组件和框架,帮助开发者迅速搭建一个分布式的微服务系统。Spring Cloud 是通过包装其他技术框架来实现的SpringCloud 就是微服务理念的一种具体落地实现方式,帮助微服务架构提供了必备的功能Dubbo+Zookeeper 半自动化的微服务实现架构(别的管理没有)SpringCloud Netflix 一站式微服务架构。

2023-05-20 08:37:37 651

原创 zk不适合注册中心原因

在 CAP 模型中,zookeeper 是 CP,意味着面对网络分区时,为了保持一致性,他是不可用的。因为 zookeeper 是一个分布式协调系统,他的核心算法是 Zab,所有设计都是为了一致性。1、当注册中心的服务规模超过一定数量的时候,zk不能很好的工作,不能支持很高的tps和TCP长连接2、zk的写请求是不是可扩展的3、zk提供的Service Health Check功能很弱,基于zk的session活性检查和临时节点监听机制上,不能真正反应服务的健康状态。

2023-04-24 09:58:51 607

原创 SpringCloud复习

​ 软件设计每一个版本都在变化,所以软件设计应该是渐进式发展。软件从一开始就不应该被设计成微服务架构,微服务架构固然有优势,但是它需要更多的资源,包括服务器资源、技术人员等。追求大公司所带来的技术解决方案,刻意地追求某个新技术,企图使用技术解决所有的问题,这些都是软件设计的误区。技术应该是随着业务的发展而发展的,任何脱离业务的技术是不能产生价值的。在初创公司,业务很单一时,如果在 LAMP 单体构架够用的情况下,就应该用 LAMP,因为它开发速度快,性价比高。随着业务的发展,用户量的增加,

2023-04-23 20:58:50 1064

原创 ACID怎么保证的

原子性是指一个事务是一个不可分割的工作单位,其中的操作要么都做,要么都不做。​ 原子性的实现利用Innodb的undo log。undo log名为回滚日志,是实现原子性的关键,当事务回滚时能够撤销所有已经成功执行的sql语句,他需要记录你要回滚的相应日志信息。例如。

2023-04-19 10:03:17 121

原创 idea常用快捷键以及docker部署

1、idea 快捷键ctrl+鼠标点击或者crtl+alt+hctrl+GF4或者选中类名,右键选择 diagrams。

2023-02-26 21:45:04 197

原创 docker总结

1、先 build/commit 一个新的镜像2、登录docker login -u username -p password 登录hub仓库,再使用命令推送ps:用户名不是登陆账号,这里使用 zhangjj0073、打标签标签要根据dockerHup内仓库的id来设置4、push查看仓库5、从个人仓库拉取镜像。

2023-02-19 14:38:30 549

原创 js中null和undefined区别

1、undefined不是关键字,而null是关键字;var null=“” //会报错2、undefined和null被转换为布尔值的时候,两者都为false;3、undefined在和null进行==比较时两者相等,全等于比较时两者不等4、使用Number()对undefined和null进行类型转换时前者为NaN,后者为05、undefined本质上是window的一个属性,而null是一个对象;

2022-12-11 10:39:20 1791

原创 常用快捷键

idae 技巧

2022-12-01 12:26:29 93

原创 Spring如何解决循环依赖

比较容易理解的一篇文章​ Spring如何解决循环依赖是经常会被面试官问到的一个问题,这个问题算是关于Spring的一个高频面试题,因为如果不刻意研读,相信即使读过源码,面试者也不一定能够一下子思考出其中的原理。本文主要针对这个问题,从源码的角度对其实现原理进行讲解,彻底搞懂Spring究竟是如何解决循环依赖的。

2022-11-29 18:41:01 91

转载 谈谈RPC

一直以来都没有深究过RPC和HTTP的区别,不都是写一个服务然后在客户端调用么?HTTP和RPC最本质的区别,就是,而。我们都知道 HTTP 协议是在传输层协议 TCP 之上的,所以效率来看的话,RPC 当然是要更胜一筹啦!HTTP和RPC的相同点是,底层通讯都是基于socket,都可以实现远程调用,都可以实现服务调用服务。

2022-11-29 16:21:12 435

原创 mysql零碎小知识

支持时间的类型有:TIME、DATETIME和TIMESTAMP;支持日期的类型有:DATE、DATETIME和TIMESTAMP;支持小数秒的类型有:TIME、DATETIME和TIMESTAMP;特殊的类型:YEAR;MySQL 8.0不支持两位的YEAR类型;小数秒的精度可选值是0-6,默认是0,3代表毫秒,6代表微秒,而2代表10毫秒(如0.11就是110毫秒);存储TIMESTAMP值时会将时间从当前时区转换成UTC时间,返回时再转换回当前时区;

2022-11-13 11:16:54 187

原创 Sprting Data Jpa

JPA(Java Persistence API)即java持久化API,它的出现主要是为了简化持久层开发以及整合ORM技术,结束Hibernate、TopLink、JDO等ORM框架各自为营的局面。JPA是在吸收现有ORM框架的基础上发展而来,易于使用,伸缩性强。ORM映射元数据:支持XML和注解两种元数据的形式,元数据描述对象和表之间的映射关系API:操作实体对象来执行CRUD操作查询语言:通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合。

2022-11-06 14:52:06 247

原创 mysql随笔

# 1、编写一个 SQL 查询,查找所有至少连续出现三次的数字。

2022-08-14 17:45:54 92

原创 mysql随笔

二维数组也可以用in。

2022-08-13 22:23:59 105

原创 多线程学习入门

多线程入门学习

2022-06-13 09:06:02 209

原创 MySQ之 一条update 语句最终持久化到磁盘

MySQ之 一条update 语句最终持久化到磁盘1. update语句执行流程update T set c = c+1 where id = 2;执行器先调用存储引擎的接口获取“id=2”的数据行。如果这一行所在的数据页在内存中,则存储引擎直接返回给执行器;否则需要存储引擎先去磁盘中获取数据,读取到内存中,然后再返回。执行器拿到存储引擎返回的这行数据,对其进行更新操作,将c的值加+1,得到新的数据,在调用存储引擎接口,写入这行数据。存储引擎收到执行器写入的这行数据的新结果,先将这条更新

2022-05-10 11:33:58 491

原创 mysql-日志分析

title: MySQL三大日志(binlog、redo log和undo log)详解前言MySQL 日志 主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。其中,比较重要的还要属二进制日志 binlog(归档日志)和事务日志 redo log(重做日志)和 undo log(回滚日志)。今天就来聊聊 redo log(重做日志)、binlog(归档日志)、两阶段提交、undo log (回滚日志)。redo logredo log(重做日志)是InnoDB存储引擎独有的,.

2022-05-03 16:11:49 318

原创 MySQL索引分析

提前看看下面索引的详细执行索引原理感谢WT-AHA对本文的完善,相关 PR:https://github.com/Snailclimb/JavaGuide/pull/1648 。何为索引?有什么作用?索引是一种用于快速查询和检索数据的数据结构。常见的索引结构有: B 树, B+树和 Hash。索引的作用就相当于目录的作用。打个比方: 我们在查字典的时候,如果没有目录,那我们就只能一页一页的去找我们需要查的那个字,速度很慢。如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了

2022-05-01 22:39:46 153

原创 mysql开发设计部分规范

title: MySQL高性能优化规范建议作者: 听风,原文地址: https://www.cnblogs.com/huchong/p/10219318.html。JavaGuide 已获得作者授权。数据库命令规范所有数据库对象名称必须使用小写字母并用下划线分割所有数据库对象名称禁止使用 MySQL 保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)数据库对象的命名要能做到见名识意,并且最后不要超过 32 个字符临时库表必须以 tmp_为前缀并以日期为后缀,备份表必须以 b.

2022-05-01 22:29:25 96

原创 mysql隐式转换导致的索引失效分析

本次测试使用的 MySQL 版本是 5.7.26,随着 MySQL 版本的更新某些特性可能会发生改变,本文不代表所述观点和结论于 MySQL 所有版本均准确无误,版本差异请自行甄别。原文:https://www.guitu18.com/post/2019/11/24/61.html前言数据库优化是一个任重而道远的任务,想要做优化必须深入理解数据库的各种特性。在开发过程中我们经常会遇到一些原因很简单但造成的后果却很严重的疑难杂症,这类问题往往还不容易定位,排查费时费力最后发现是一个很小的疏忽造成的,.

2022-05-01 22:15:33 641

原创 SQL语句在MySQL中的执行过程

本篇文章会分析下一个 sql 语句在 MySQL 中的执行流程,包括 sql 的查询在 MySQL 内部会怎么流转,sql 语句的更新是怎么完成的。在分析之前我会先带着你看看 MySQL 的基础架构,知道了 MySQL 由那些组件组成以及这些组件的作用是什么,可以帮助我们理解和解决这些问题。一 MySQL 基础架构分析1.1 MySQL 基本架构概览下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的。先简单介绍一下下图涉及的一些组件

2022-05-01 10:23:15 112

转载 mysql基本操作

基本操作/* Windows服务 */-- 启动MySQL net start mysql-- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值之间有空格)/* 连接与断开服务器 */mysql -h 地址 -P 端口 -u 用户名 -p 密码SHOW PROCESSLIST -- 显示哪些线程正在运行SHOW VARIABLES -- 显示系统变量信息数据库操作/* 数据库操作 */ -------

2022-05-01 09:47:25 268

原创 PLSQL语法

PLSQL介绍plsql是Oracle对sql999 的一种拓展,基本每一种数据库都会对sql进行拓展。Oracle对sql的拓展就叫做plsqlsql999 是什么?(1)是操作所有关系型数据库得规则(2)是第四代语言(3)是一种结构化查询语言(4)只需发出合法合理的命令,就有对应的结果显示sql的特点(1)交互性强,非过程话(2)数据库操纵能力强,只需发送命令,无需关注如何实现(3)多表操作时,自动导航简单,例如select emp.empno,emp.sal,dept.d

2022-04-30 20:49:23 2250

原创 oracle和mysql 部分细节对比

oracle和mysql 部分细节对比1、黑窗口登录oracle和mysql 区别oracle 登录sqlplus sys/system#123@83.25.78.42/TIMSDB as sysdbasqlplus TIMS/TIMS#123@83.25.78.42/TIMSDBmysql 登录(此方法限于本地有mysql服务)mysql -uroot -p+password(paddword为数据库登录密码)2、oracle 和 mysql 的b+树索引有什么区别?

2022-04-22 22:21:34 1672

原创 oracle使用总结

常用sql优化总结优化器执行计划sql 优化相关order by ,distinct 等影响性能的慎用union 和 union all 的使用is null /is not null 的优化使用in 和 exists 的使用驱动表选择好,如果可以的话先确定最小范围的驱动表,然后再去关联其它表表分区并行sql优化相关可以参考 sql优化页面响应比较慢的ajax 同步改异步(根据实际情况)初始化默认查询时,增加默认的查询条件提升sql查询性能案例1 大数据量的表修改数据

2022-04-11 21:30:53 1396

原创 前端js学习笔记

前端学习笔记欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;

2021-08-29 11:05:09 130

aspose.words 和aspose.cells

可视化使用的

2024-09-02

neo4j 社区版对应的apoc 插件依赖

neo4j 社区版对应的apoc 插件依赖

2024-05-09

neo4j社区版下载,免费下载

neo4j社区版下载,免费下载

2024-05-09

mysql索引分析以及常见问题

索引相关知识点整理以及问题分析

2022-09-03

mysql日志相关整理

mysql日志相关

2022-09-03

多线程入门学习,可做参考

自己敲代码

2022-06-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除