后端

Java线程<第四篇>:线程间通信

线程间通信是Java线程必须掌握的课程之一。 线程间的通信的前提是,必须要保证线程还活着,可以使用阻塞方法,将线程暂时阻塞起来,当满足一定条件时,通知被阻塞的线程继续执行。 常用的阻塞方法有:sleep、wait、CountDownLatch,sleep只能实现线程暂时停止执行,并不能做到通知的目的,CountDownLatch 是一个非常不错的方法,在《Java线程》系列的后面的文章中会重点说

Spring 事务和事务传播机制

1. 事务的回顾在 MySQL 学习阶段&#xff0c;已经了解到了事务是一组操作的集合&#xff0c;也就是把所有的操作作为一个整体&#xff0c;一起向数据库提交或者撤销操作&#xff0c;要么同时成功&#xff0c;要么同时失败一个事务的操作流程包括了&#xff0c;开启事务&#xff0c;执行事务操作&#xff0c;提交事务或回滚事务&#xff0c;对于回滚事务来说&#xff0c;如果程序

QLExpress规则引擎基本语法

开源地址( 一、背景介绍 由阿里的电商业务规则、表达式(布尔组合)、特殊数学公式计算(高精度)、语法分析、脚本二次定制等强需求而设计的一门动态脚本引擎解析工具。 在阿里集团有很强的影响力,同时为了自身不断优化、发扬开源贡献精神,于2012年开源。 QLExpress脚本引擎被广泛应用在阿里的电商业务场景,具有以下的一些特性:

Redis(十二):Redis数据倾斜及监控

1 数据倾斜 1.1 定义 对于集群系统,一般缓存是分布式的,即不同节点负责一定范围的缓存数据。我们把缓存数据分散度不够,导致大量的缓存数据集中到了一台或者几台服务节点上,称为数据倾斜。一般来说数据倾斜是由于负载均衡实施的效果不好引起的。 1.2 危害 如果发生了数据倾斜,那么保存了大量数据,或者是保存了热点数据的实例的处理压力就会增大,速度变慢,甚至还可能会引起这个实例的内存资源耗尽,从而崩溃。

AI 大模型之 Transformer 架构深入剖析

AI 大模型之 Transformer 架构深入剖析 本人掘金号&#xff0c;欢迎点击关注&#xff1a;掘金号地址 本人公众号&#xff0c;欢迎点击关注&#xff1a;公众号地址 一、引言在人工智能的发展历程中&#xff0c;Transformer 架构无疑是一座具有里程碑意义的丰碑。自从 2017 年 Google 团队在论文《Attention Is All You Need》中首

SpringBoot--配置MyBatis、Logback、PagerHelper、Druid

上篇SpringBoot--初入SpringBoot中对SpringBoot如何配置有了初步的了解,只需要配置下pom文件,写一个SpringBoot启动类,就可以启动服务进行访问了,再来看下当初的pom文件导入的依赖: &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.spring

PostgreSQL主从复制实战,告别单点故障,附主从切换与延迟监控命令。

文章目录 1.环境准备 1.1 基础环境要求 1.2 安装PostgreSQL 2.1 修改PostgreSQL主配置文件 2.2 修改客户端认证配置文件 2.3 创建复制专用用户 2.4 重启主库使配置生效 2.5 备份主库数据&#xff08;供从库初始化&#xff09; 3.从库配置 3.1 停止从库PostgreSQL服务并清理原有数据目录 3.2 解压主库备份到

SpringBoot--打包发布、异常处理,拦截器

通过前面的了解,SpringBoot其实就是帮助我们整合了SSM框架,以及其它第三方框架的一个工具。在使用方面,利用的还是SSM中的知识 一、打包部署 之前只是在本地起一个服务跑项目,当需要发布到真实服务器时,需要用到maven插件 1. 导入插件 如果是通过idel的插件新建的SpringBoot项目,pom.xml中会自动引入该插件: &lt;build&gt; &lt

【爬虫脚本自动化录制】playwright codegen使用教程

目录 1 前言 2 什么是 playwright codegen&#xff1f; 3 环境准备 3.1 安装 Playwright 3.2 安装浏览器驱动 4 codegen 基础使用 4.1 直接启动录制 4.2 操作演示 5 常用高级参数 6 实战案例&#xff1a;录制 CSDN 登录脚本 6.1 开始录制 6.2 手动操作步骤 6.3 自动生成代码示例