自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Redis队列解决超卖超卖问题

有可能面试被问到,所以 这里只是简单的进行一个记录主要思路:内存处理秒杀类的商品抢购,至于数据库则是通过消息队列异步来更新1、redis 中 缓存将要被秒杀的商品数量 对列明:sku:awards2、因为 redis 是单线程的,所以可以将并发请求串行化,而且 Redis List 的 pop 操作是原子性的。3、所有请求打到 Redis 上,都是从 sku:awards 队列上 pop 出一个元素:A. 如果有,说明还有商品,那么需要把用户ID加入到Redis 的 Set 名为 c

2022-02-13 00:50:17 1910 1

原创 力扣原题:部门工资前三高的员工

# Write your MySQL query statement belowselect d.Name as Department , e1.Name as Employee , e1.Salary from Employee e1 inner join Department d ON e1.DepartmentId = d.IdWHERE 2 >= (SELECT COUNT(DISTINCT e2.Salary) FROM ...

2022-01-30 18:47:55 4766

原创 链表相加 力扣原题

题目给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0 之外,这两个数都不会以 0开头。Input:l1 = [2,4,3], l2 = [5,6,4]Output:[7,0,8]Explanation:342 + 465 = 807.思路经过分析,我们不难发现,根据加法原则,从低位开始相加,并且考虑进位标志。然而,链表...

2022-01-27 13:40:15 141

原创 新版本MyCat的使用

一.简介MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。MyCat发展到目前的版本,已经不是一个单纯的MySQL代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、

2021-12-26 23:00:33 466

原创 Redis缓存穿透\击穿\雪崩

redis缓存穿透(查不到)概念在默认的情况下,用户请求数据时,会先在缓存当中查找,若没有找到缓存即缓存未命中,数量少可能问题不大,可是一旦大量的请求数据(例如秒杀场景)缓存没有命中的话,就会转移到数据库上,造成数据库极大的压力,就有可能导致数据库崩溃,网络安全当中也有人恶意使用这种手段进行攻击被称为洪水攻击.解决方案:布隆过滤器对所有可能查询的参数以Hash形式存储,以便快速确定存在这个值,在控制层先进行拦截校验,校验不通过则直接打回,减轻了存储系统的压力.缓存空对象..

2021-09-15 22:51:32 54

原创 Redis

测试性能redis-benchmark是一个压力测试工具,官方自带的性能测试工具redis-benchmark加命令参数简单测试:# 测试:100个并发连接 100000请求redis-benchmark -h localhost -p 6379 -c 100 -n 100000基础知识redis默认有16个数据库,默认使用第0个数据库keys *:查看当前数据库中所有的key。flushdb:清空当前数据库中的键值对。flushall:清空所有数据库...

2021-09-15 21:12:28 2829

原创 mysql索引

mysql官方对索引的定义为:索引是帮助mysql高效获取数据结构,提取句子主干,就可以得到索引的本质:索引是数据结构索引的作用:提高查询的速度 确保数据的唯一性 可以加速表跟表之间的连接,可以表与表之间的参照完整性 使用分组和排序进行数据检索时,可以显著减少分组和排序的时间 全文检索字段进行搜索优化分类主键索引(Primary key) 唯一索引 (unique) 常规索引(Index) 全文索引(FullText)主键索引主键:某一属性组能唯一标识一...

2021-08-31 15:37:15 68

原创 linux安装jdk并发布一个springboot项目

首先java -version查看jdk版本如果有openjdk先卸载rpm -qa|grep jdk #检查#卸载-e --nodeps强制卸载rpm -e --nodeps jdk.... 卸载openjdk:1.先rpm -qa|grep jdk 检查jdk版本信息[root@LeiShen software]# rpm -qa | grep jdkjava-1.7.0-openjdk-1.7.0.231-2.6.19.1.el7_6.x8...

2021-08-26 00:44:10 145

原创 关于获取数据库中的时间不对的问题

一般获取数据库中的时间时,如果数据库中的时间值没有错误的话,但是后台拿到的数据库跟数据库中的不一样的话一般就是时区问题 ,这种现象一般在连接数据库的url中设置东八区时区就可以了spring.datasource.url=jdbc:mysql://localhost:3306/students?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2b8...

2021-08-23 23:25:19 830

原创 JUC并发编程2

线程池线程池:七大参数,四中拒绝策略池化技术: 程序本质 :占用系统资源,要去优化资源的使用==>池化技术资源的创建和销毁十分浪费系统资源池化技术就是事先准备一些资源,如果有人要用就来我这里拿,用完还给我,以此提高效率线程池的好处:1.降低资源的消耗2.提高响应速度3.方便管理线程池三大方法:ExecutorService Service = Executors.newSingleThreadExecutor();//单个线程ExecutorServi..

2021-08-21 12:22:35 83

原创 JUC并发编程

JUC版生产者与消费者的问题Condition接口的生产者消费者问题: await()跟signal()方法能够精准的通知,能够实现线程的执行顺序,await方法应该写在while循环里边,防止并发带来的线程不安全.import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantL...

2021-08-20 11:39:43 54

原创 mybtis-plus

mybatis plus官方文档:https://mp.baomidou.com/悲观锁与乐观锁乐观锁: 顾名思义就是非常乐观,它总是认为不会出现问题 , 无论干什么都不去上锁,如果出现了问题,再次更新值测试悲观锁: 顾名思义十分悲观,它总是认为会出现问题,无论干什么都会上锁,再去操作乐观锁实现方式: 1.取出记录时,获取当前的version 2.更新时,带上这个version 3.执行更新时,set version=new ver...

2021-08-18 23:45:32 99

原创 javax.net.ssl.SSLException: closing inbound before receiving peer‘s close_notify的解决办法

数据库连接url后面加上useSSL=false即可

2021-08-17 17:15:43 78

原创 前台日期处理

比如现在有个前台注册的页面<!DOCTYPE html><html lang="en" xmlns:th="http://www.thymeleaf.org"><head> <meta charset="UTF-8"> <title>用户页面</title></head><body><form th:action="@{/user/add}" method="post"&gt

2021-08-17 00:24:04 87

原创 SpringCloud Hystrix

1.1Hystrix:服务熔断:分布式面临的问题复杂的分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候或将有不可避免的失败!1.2服务雪崩比如现在有三个服务,Service A的流量波动很大,流量经常会突然性增加!那么在这种情况下,就算Service A能扛得住请求,Service B和Service C未必能扛得住这突发的请求。此时,如果Service C因为抗不住请求,变得不可用。那么Service B的请求也会阻塞,慢慢耗尽Service B的线程资源,Ser

2021-08-16 14:08:55 117

原创 spring cloud学习

1.1spring cloud是什么springcloud官网: https://spring.io/projects/spring-cloud#learnspring cloud,基于springboot提供了一套微服务的解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFix的开源组件做高度封装之外,还有一些选型中立的开源组件,springcloud利用了springboot的开发便利性,巧妙地简化了分布式系统的基础设施的开发...

2021-08-15 22:50:01 241

原创 spring Security与thymeleaf与Security的整合

安全简介在 Web 开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。如果在应用开发的后期才考虑安全的问题,就可能陷入一个两难的境地:一方面,应用存在严重的安全漏洞,无法满足用户的要求,并可能造成用户的隐私数据被攻击者窃取;另一方面,应用的基本架构已经确定,要修复安全漏洞,可能需要对系统的架构做出比较重大的调整,因而需要更多的开发时间,影响应用的发布进程。因此,从应用开发的第一天就应该把安全相关的因素考虑进来,并在整个应用的开发过程中。市面.

2021-07-29 00:04:25 607

原创 SSM框架整合

创建数据库环境1.创建一个存放书籍的数据库CREATE DATABASE `ssmbuild`; USE `ssmbuild`; DROP TABLE IF EXISTS `books`; CREATE TABLE `books` ( `bookID` INT(10) NOT NULL AUTO_INCREMENT COMMENT '书id', `bookName` VARCHAR(100) NOT NULL COMMENT '书名', `bookCounts` IN..

2021-07-17 14:20:53 108

转载 Spring MVC-第一个spring mvc程序

配置版1、新建一个Moudle , springmvc-02-hello , 添加web的支持!2、确定导入了SpringMVC 的依赖!3、配置web.xml , 注册DispatcherServlet<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XM.

2021-07-15 23:22:41 73

原创 Spring-AOP详解

什么是AOPAOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。AOP在Spring中的作用提供声明式事务;允许用户自定义切面以下名词需要了解下...

2021-07-14 19:51:48 80

原创 spring整合mybatis详细笔记

提前声明:所有源码均省略java导包的方法导包(jar包)1.Spring所需的包<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.10.RELEASE</version>...

2021-07-13 18:10:03 207

原创 Spring--快速上手spring

HelloSring导入包注:spring 需要导入commons-logging进行日志记录 . 我们利用maven , 他会自动下载对应的依赖项 .<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.10.RELEASE</...

2021-07-11 20:22:51 68

原创 Mybatis入门以及配置优化

持久化1. 即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是2. 将内存中的对象存储在数据库中,或者存储在磁盘文件中、XML数据文件中等等。3. JDBC就是一种持久化机制。文件IO也是一种持久化机制。4. 在生活中 : 将鲜肉冷藏,吃的时候再解冻的方法也是。将水果做成罐头的方法也是.什么是持久层1.完成持久化工作的代码块 . ----> dao层 【DAO (Data Access Object) 数据访问对象】2.层与层之间有...

2021-06-28 22:28:51 64

原创 Servlet+html+css+jsp+mysql实现用户登录

以下是项目结构:

2021-06-05 22:41:06 468 3

空空如也

空空如也

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

TA关注的人

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