
后端
文章平均质量分 84
在荒野的梦想
技术支持+1991477677
展开
-
推荐一些实用的慢SQL优化方案
慢 SQL 的优化,主要从两个方面考虑,SQL 语句本身的优化,以及数据库设计的优化。原创 2025-04-25 14:47:43 · 478 阅读 · 0 评论 -
Docker+Jenkins+Gitee自动化项目部署
解压需要解压到这个目录下面 /opt/develop_resource/apache-maven-3.6.3,因为后面再启动jenkins的时候需要挂载在他容器的目录里面。改完之后通过git命令上传到gitee上面后,jenkins会自动的进行构建。注意:首次进入需要获取管理员密码,可以进入Jenkins容器查看。Jenkins启动完整后进入容器查看maven是否配置正确。进入后可以新建一个账号,插件可选择性安装,这里略。这里配置的地址与前面配置的保持一致即可。进入gitee代码仓库,将密码填入,原创 2025-04-08 17:53:07 · 1378 阅读 · 0 评论 -
MySQL索引B+树
本篇文章从二叉查找树,详细说明了为什么 MySQL 用 B+ 树作为数据的索引,以及在 InnoDB 中数据库如何通过 B+ 树索引来存储数据以及查找数据相关资料MyISAM和Innodb(非聚集索引和聚集索引)、B+树的存储、MySQL的几种索引。原创 2024-06-06 09:48:22 · 873 阅读 · 0 评论 -
ConcurrentHashMap原理详解
做插入操作时,首先进入乐观锁然后,在乐观锁中判断容器是否初始化,如果没初始化则初始化容器,如果已经初始化,则判断该hash位置的节点是否为空,如果为空,则通过CAS操作进行插入。如果该节点不为空,再判断容器是否在扩容中,如果在扩容,则帮助其扩容。如果没有扩容,则进行最后一步,先加锁,然后找到hash值相同的那个节点(hash冲突)循环判断这个节点上的链表,决定做覆盖操作还是插入操作。循环结束,插入完毕。原创 2024-06-06 09:47:22 · 1569 阅读 · 0 评论 -
微服务项目将Nacos地址、命名空间、环境等配置信息,统一放在pom.xml管理教程
在Maven项目中,src/main/resources目录下的文件通常被视为资源文件,这些资源文件在构建项目时会被复制到输出目录(如target/classes),以便在运行时被访问。通过这样的配置,你可以灵活地控制哪些文件会被视为项目的资源文件,并在构建过程中将它们复制到合适的位置。这些文件也会被视为资源文件,并在构建过程中被复制到输出目录。第一个 元素指定了src/main/resources目录,它包含了true的配置,表示对该目录下的资源文件执行过滤操作。元素用于定义一个资源目录及其配置。原创 2024-04-20 17:26:31 · 761 阅读 · 0 评论 -
若依微服务版本JSON.parse: unexpected character错误排查
,若依这里是采用在配置文件当中填写具体信息的方式,来配置是否启用xss,是否是白名单,是否是匹配链接。按照后台填写的数据处理请求,如果是不启用或者是该请求为白名单,就直接将请求放过如果不通过就交给XssFilter来处理。若依框架在网关采用配置拦截器的方式来处理XSS攻击,一旦请求被过滤器拦截,就会转入到自定义的拦截器XssFilter当中,首先解决的就是判断是否启用XSS拦截器和是否需要拦截(在网关配置Xss过滤白名单接口。原创 2024-01-09 10:38:54 · 1329 阅读 · 0 评论 -
Spring Cloud Gateway网关转发websocket服务配置
客户端向 Spring Cloud Gateway 发出请求。然后在 Gateway Handler Mapping 中找到与请求相匹配的路由,将其发送到 Gateway Web Handler。Handler 再通过指定的过滤器链来将请求发送到我们实际的服务执行业务逻辑,然后返回。过滤器之间用虚线分开是因为过滤器可能会在发送代理请求之前(“pre”)或之后(“post”)执行业务逻辑。原创 2023-10-24 10:14:21 · 3800 阅读 · 0 评论 -
ThreadLocal使用及底层详解
但是在开发中我们都是使用线程池的方式,线程池的复用不会主动结束;当我们使用SimpleDateFormat的parse()方法的时候,parse()方法会先调用Calendar.clear()方法,然后调用Calendar.add()方法,如果一个线程先调用了add()方法,然后另一个线程调用了clear()方法;在java中,栈内存归属于单个线程,每个线程都会有一个栈内存,其存储的变量只能在其所属线程中可见,即栈内存可以理解成线程的私有变量,而堆内存中的变量对所有线程可见,可以被所有线程访问!原创 2022-09-20 09:12:37 · 365 阅读 · 1 评论 -
来系统学习下 lambda 表达式吧
lambda 表达式,相信大家都不陌生,就算没有用过,那应该也听说过。我也是一样,在使用新特性stream 流处理集合相关的代码时接触到这种语法,其他地方倒是不经常使用。所以也是仅仅知道一些皮毛,对于其中的原理什么的也不怎么清楚。今天准备系统的学习一番,话不多说,接下来就开始我们的学习。lambda 表达式是 Java 8 的一个新特性,可以取代大部分的匿名内部类,简化了匿名委托的使用,让你让代码更加简洁,优雅。比较官方的定义是这样的这个匿名函数没有名称,但它有参数列表、函数主体、返回类型,可能还有一个原创 2022-07-07 16:52:14 · 126 阅读 · 0 评论