自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(128)
  • 收藏
  • 关注

原创 弹窗相关操作

2.点击按钮(弹窗修改),设置赋值事件,选择赋值组件(即弹窗中的隐藏标签)1.拖动一个标签进入弹窗,设置隐藏属性,点击表单,替换查询参数值。3.添加表单查询事件和打开或关闭弹出层事件。

2024-08-31 10:01:43 323

原创 缓存方案总概

为了使用有限容量的内存,必然会有一定的缓存淘汰方法,去淘汰掉冷性缓存,提高内存使用率。大量的请求来请求同一个数据 ,但是缓存和数据库中都没有,就会造成数据库的巨大压力。大量的请求来请求同一个数据,缓存中没有,请求都跑到数据库层面,造成数据库压力大。大量的请求查询不同的数据,但此时缓存失效,大量的请求来到了数据库。

2024-08-04 23:46:01 355

原创 redis

可配置的方式,每处理一个命令记录一次,或者每一批命令记录一次,可’appendfsync’配置,记录到一个类似binlog的文件中;无序的集合,不允许只重复,提供添加、查找、删除操作。,另外支持 交集、差集、并集操作,周期性的将redis中的缓存喜爱那个dump.rdb文件中存储一份,恢复时,直接加载此文件。Redis 由C语言编写,是基于内存级别的数据库,通常作为缓存使用。链表结构,类似数据结构中的双端链表,支持两端进出已经中间的范围查询。常规:get、set、del、exists、append。

2024-08-04 23:33:35 916

原创 CPU占用率很高,相应很慢排查思路

〇 prio,线程的优先级,Java中的线程优先级分为1~10个级别,数字越高表示优先级越高,优先级高的线程能够有更高的概率优先得到CPU的执行。执行jstack命令,打印PID=80972进程的线程dump日志,然后通过管道命令grep从线程dump日志中查找到CPU占用率最高的线程。〇 os_prio,表示操作系统层面的线程优先级,Java中配置的线程优先级最终会映射到操作系统中的线程优先级。可以看到,CPU占用率100%的PID是80972,定位到该进程之后,我们再从线程的dump日志中去定位.

2024-05-29 17:07:20 577

原创 BIO、NIO、多路复用

当用户向服务器发起请求时,应用服务器会为每一个用户请求分配一个线程,如果http请求不做任何事情或者做的事情很慢,势必会造成应用服务器不必要的线程开销。应用服务器上面的线程也是这样的情况,不管当前http请求有多慢,线程也无法抽身去做其他事情,这就是BIO模式。tomcat默认使用的是BIO模式,但是在9.0之后采用的是NIO模式。9.0之前的tomcat可以采用jetty替换,jetty则是典型的NIO模式,而且他是模块化的架构,可以把不需要的功能简化掉,从而提升jetty性能。

2024-05-12 23:23:28 287

原创 利用vite创建vue项目

在运行 npm install 命令之后,npm 还会自动更新 package.json 文件中的 package-lock.json(或 yarn.lock)文件,以记录确切的包版本和依赖关系。在 Vite 项目中,vite.config.ts 文件是一个 TypeScript 文件,位于项目根目录下。在HBuilderX工具上打开刚刚创建前端项目,修改 vite.config.ts 文件中的项目启动端口号,添加如下内容,然后保存文件。需要注意的是,vite.config.ts 文件是可选的。

2024-04-11 23:49:29 1590

原创 nodejs安装

步骤 6 :点击 Install(安装) 开始安装Node.js。你也可以点击 Back(返回)来修改先前的配置。Node.js官网下载 安装包及源码下载地址为:https://nodejs.org/en/blog/release/v17.3.1。步骤 5 : 点击树形图标来选择你需要的安装模式,默认选择第一个即可 , 然后点击下一步 next(下一步)根据自身系统下载对应的安装包 (我这里为Windows11 64位)点击 Finish(完成)按钮退出安装向导。,如果出现版本号则表示安装成功。

2024-04-11 09:07:10 407

原创 计算机组成原理——计算机系统概述

冯诺依曼 现代计算机结构

2024-02-07 15:15:50 1007

原创 Java面试

AQS就是AbstractQueuedSynchronizer抽象类,AQS其实就是JUC包下的一个基类,JUC下很多内容都是基于AQS实现了部分功能,比如ReentrantLock,ReentrantReadWriteLock,ThreadPoolExecutor,阻塞队列,CountDownLatch,Semaphore,CyclicBarrier等等都是基于AQS实现。首先AQS提供了一个由volatile修饰,并且采用CAS方式修改的int类型的state变量。

2024-01-30 10:39:04 966

原创 final

引用类型变量所指向的对象之所以可以修改, 是因为引用变量不是直接指向对象的数据, 而是指向对象的引用的. 所以被final修饰的引用类型变量将永远指向一个固定的对象, 不能被修改;在上图中, 变量p指向了0003这块内存, 0003内存中保存的是对象p的句柄(存放对象p数据的内存地址), 这个句柄值是不能被修改的, 也就是变量p永远指向p对象. 但是p对象的数据是可以修改的.相信大家都具备基本的常识: 被final修饰的变量是不能够被改变的. 但是这里的"不能够被改变"对于不同的数据类型是有不同的含义的.

2024-01-20 15:58:56 401

原创 MySQL——深入数据库原理(事务及锁)

(建行APP的资产计数是当时将两张银行卡的余额做相加实现的,也就是先查第一张卡,然后再查第二张卡,你查看余额的这个事务包含了查卡一和卡二两个步骤)在这个执行事务第一步拿到卡一的10元时,你妈妈突然把卡二的钱转到卡一,并且此你妈妈的这个事务已提交。当你的事务再去读卡二时读到的是0元,两卡相加10元。基于MVCC原理,在事务开启之前,innodb会记录一个当前事务的ID,通过当前只能读取比自己事务id小于或等于的数据值的原则,相当于建立了一个视图,这样每次读取的数据都是不变的,从而解决了不可重复的的问题。

2024-01-14 14:41:20 933

原创 MysqL——深入MySQL原理(架构及执行流程)

架构 存储结构

2024-01-12 16:04:28 1139

原创 MySQL——性能优化与关系型数据库

数据库相关介绍

2024-01-11 23:26:34 1318

原创 MySQL——SQL语句进阶

SQL高级语句

2024-01-11 16:16:24 526 1

原创 ThreadLocal

ThreadLocal

2024-01-11 16:15:02 366

原创 JVM——新生代 、老年代、永久区

新生区,老年区,永久区。

2024-01-11 16:11:45 477

原创 Mysql——索引相关的数据结构

磁盘存储相关数据结构

2024-01-11 16:05:15 1087 2

原创 MySQL 面试题

binlog用于记录数据库执行的写入性的DDL和DML(不包括查询)信息,以二进制的形式保存在磁盘中。DDL:用于定义和管理数据库中的对象,例如表、视图、索引等。常见的DDL语句包括CREATE、ALTER和DROP语句。CREATE用于创建新对象,ALTER用于修改现有对象的结构,而DROP用于删除对象。DML:用于对数据库中的数据进行操作,例如插入、查询、更新和删除数据。常见的DML语句包括SELECT、INSERT、UPDATE和DELETE语句。

2024-01-11 15:46:27 931

原创 操作系统——I/O设备的概念和分类

I/O设备概念和分类

2024-01-09 16:43:31 447

原创 操作系统——I/O控制器

操作系统 I/O控制器

2024-01-09 16:40:33 1080

原创 MYSQL学习之buffer pool的理论学习

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

2024-01-08 13:44:59 1036

原创 分布式缓存 -- 基础

其中,ribbon可自定义负载均衡规则(ribbon也提供提供了一些,比如随机分配、按权值分配等等)两种配置方式,一种在启动类的注解上,另一种在yml的配置文件上。Ribbon 提供 @LoadBalanced 注解,外搭配RestTemplate来做客户端的负载均衡。的负载均衡器:拿到客户端的请求,根据均衡器内部的算法分配给各个服务,此次。一般来说,eureka-client中已经整合了ribbon的客户端。的负载均衡器:在客户端将各个服务的信息拿到,在。通信的负载均衡工具,提供完善的超时重试机制。

2024-01-06 13:01:23 390

原创 分布式初步

分布式初步

2024-01-04 22:21:31 357

原创 各种工具安装锦集

使用docker安装各种工具安装教程

2023-05-26 14:27:22 120

原创 如何使用ssh密钥的方式实现无密码scp传输文件

如何使用ssh密钥的方式实现无密码scp传输文件

2023-05-25 14:53:04 1432

原创 面向对象设计

面向对象

2023-03-23 02:36:51 376

原创 MultipartFile

MultipartFile

2023-03-04 16:34:31 353

原创 Optional

optional基础使用

2023-02-02 16:08:58 137

原创 Vue入门(一) 什么是Vue

什么是vue

2022-12-31 21:00:13 109

原创 海上钢琴师

拿钢琴来说吧,琴键有开始,也有尽头,你知道一共有八十八个键,这是绝对没错的,琴键是有限的,你才是无限的,你在琴键上创作的音乐才是无限的,我喜欢这样,我可以这样生活。琴键无穷无尽,那个键盘是无限的,如果键盘是无限的,在那个键盘上你就无法演奏音乐,你坐错琴凳了,这是上帝的钢琴。陆地对我来说是一艘太大的船,太美丽的女人,太漫长的航程,太浓郁的香水,他是一段我不知道该怎么演奏的音乐,我无法离开这艘船,大不了我可以离开我的生命,反正对别人来说我也不存在,你是个例外马克斯,你。我看不到的东西 ,你能明白吗?

2022-12-24 14:48:19 102

原创 idea上传git

idea上传git项目

2022-07-27 13:45:21 2438

原创 ActiveMQ

JMSActiveMq回归正题,说一下amqamq是JMS其中的一个落地产品消息体api发送和接收高可用持久化延时发送+定时投递签收机制集群和容错Spring 整合可以解决什么问题利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型在分布式环境下提供应用解耦,弹性收缩。冗余存储,流量削峰,异步通信,数据同步等功能。发送者把消息发送给消息服务器。消息服务器将消息存放在若干队列/主题中,在合适的时候,消息

2022-07-10 00:08:51 1223

原创 开发小记~

积沙成山

2022-07-05 17:59:32 1733

原创 SpringSecurity

用户认证通过后,为了避免用户的每次操作都进行认证可将用户的信息保证在会话中,会话就是系统为了解决认证之后,在进行常规操作是防止再次认证。常见方式有session ,token用户认证成功后,在服务端生成用户相关的数据保存在session中,发送给客户端的session_id存放到cookie中,这样用户客户端请求时带上session_id就可以验证服务端是否存在session数据,已完成用户的合法校验,用户认证成功后,服务端生成token,客户端可以放到cookie或者localStorage等存储中,每次

2022-06-30 11:04:23 266

原创 Elasticsearch基础

下载网址:https://www.elastic.co/cn/downloads/past-releases#elasticsearchHTML1 :我爱我的祖国,我爱编程HTML2 :我爱编程,我是个快乐的小码农分词器将内容进行分词处理,搜索时,es数据库将想要查询的字段对分词后的结果进行挨个匹配 效率低下倒排索引是按照分词与文档进行映射POST请求 加 _update 为修改操作,只修改指定的的字段普通查询查询全部数据查询name为小胖的为什么会出现这样的情况?我们知道 字

2022-06-25 18:25:01 306

原创 CompletableFuture

Future是Java5新加的一个接口,它提供了一种异步并行计算的功能。如果主线程需要执行一个很耗时的计算任务,我们就可以通过future把这个任务放到异步线程中执行。主线程继续处理其他任务,处理完成后,再通过Future获取计算结果。但是Future对于结果的获取,不是很友好,只能通过阻塞或者轮询的方式得到任务的结果阻塞的方式和异步编程的设计理念相违背,而轮询的方式会耗费无谓的CPU资源。因此,JDK8设计出CompletableFuture。CompletableFuture提供了一种观察者模式类似的机

2021-09-14 18:04:57 355 1

原创 开发宝典~~

JSONObject JSONArray 使用方法类似于map 直接转化成String JSONObject indexData = new JSONObject(); indexData.put("assetId", assetId); indexData.put("assetType", assetType); indexData.put("indexValue", indexValue); indexD.

2021-06-08 15:32:15 1089 2

原创 insertSelective和insert的区别

先上例子比如User里表里面有三个字段:id name age password User u=new user();u.setName("bill");mapper.insertSelective(u); insertSelective执行对应的sql语句的时候,只插入对应的name字段sql语句如下:insert into tb_user (name) value ("bill")insert则是每个字段都要添加一遍insert into tb_user (id,name,age,

2021-05-22 17:25:38 540

原创 spring boot前端

建立目录结构请求进来,先去找Controller看能不能处理,不能处理的所有请求又都交给静态资源处理器,静态资源就会去指定的这几个目录去找资源。如果静态资源也找不到,那就赶回404;我们只有登录之后才能能访问一些动态请求,所以一般在发起请求时会设置拦截器,如果我们来拦截/**,那麽就会把静态资源也给拦截,为了访问静态资源方便,我们会给访问静态资源的的方式将一个前缀,设这一个标志,让拦截器去放行这些静态资源请求。比如:http://127.0.0.1:8080/resources/aa.jpg,

2021-04-14 16:58:03 1145

原创 Mybatis动态语句

如果采用JDBC进行处理,需要根据条件是否取值进行SQL语句的拼接,一般情况下是使用StringBuilder类及其append方法实现,还是有些繁琐的。如果你有使用JDBC或其他类似框架经验,你能体会到拼接语句的痛苦。类如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号,利用动态SQL这一特性可以彻底摆脱这一痛苦。mybatis在简化操作方法提出了动态SQL功能,将使用java代码拼接sql语句改变为在XML文件中。相比而言,大大减少了代码量和复杂性。Myatias也可以在注解中

2021-04-07 09:54:23 195

空空如也

空空如也

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

TA关注的人

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