![](https://img-blog.csdnimg.cn/20191213174018383.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
项目经验
公司项目+自学项目
Java技术堆
这个作者很懒,什么都没留下…
展开
-
乐观锁与悲观锁的理解
文章目录锁概述为什么需要锁??乐观锁数据版本实现方式锁概述不管是悲观锁还是乐观锁,主要作用就是对共享资源上锁,防止多线程访问产生的线程安全问题。悲观锁:假设数据修改一定会出现线程安全问题,访问时申请对资源的锁,其他用户只能阻塞等待。乐观锁:假设数据修改一般不会出现冲突,只有在数据提交的时候才会对数据冲突与否进行检查。但是乐观锁不能解决脏读的问题。为什么需要锁??多用户环境中,会出现多个...原创 2020-02-17 10:49:23 · 175 阅读 · 0 评论 -
Timer定时器,Quartz定时器,
文章目录什么是定时任务调度线程方式Timer方式Timer简介主要构建schedule的四种用法scheduleAtFixedRate的两种用法TimerTask的两个重要函数Timer的两个函数schedule与scheduleAtFixedRate的区别Timer的缺陷Quartz框架简介添加依赖Quartz三大概念源码分析关于JobDataMap关于TriggerSimpleTriggerC...原创 2020-02-14 11:10:31 · 173 阅读 · 0 评论 -
促销系统之秒杀功能模块
文章目录秒杀活动需要解决的问题针对秒杀活动对症下药服务单一原则按钮控制库存预热Lua脚本示例订单生成、库存扣减与支付逻辑秒杀链接加盐redis集群Nginx限流&降级&熔断秒杀活动需要解决的问题高并发引起的缓存雪崩,缓存击穿,缓存穿透超卖,商家预估卖100个可以赚点还可以营销,结果多卖出200个,不发货用户投诉,平台封店,发货就血亏,怎么办。恶意请求。验证码,后台逻辑效验...原创 2020-03-24 23:37:53 · 1431 阅读 · 0 评论 -
超卖问题解决大全
文章目录什么是库存超卖??方式一:扣减库存时限制库存量大于0方式二:悲观锁方式三:乐观锁方式四:将请求放队列方式五:通过事务控制超卖方式六使用redis分布式来解决(悲观锁)基于redis实现分布式锁基于redisson开源框架实现redis分布式锁的缺点redis分布式锁优化redis分布式锁优化缺点方式七使用redis的原子操作解决超卖共享锁和排他锁共享锁和排他锁的加锁原则Spring事务-数...原创 2020-02-17 00:36:39 · 10203 阅读 · 1 评论 -
安装RabbitMQ详解
文章目录安装依赖环境安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了安装ncurses安装erlang简洁版检查erlang安装是否完成安装rabbitmq解压安装包配置全局变量启动rabbitmq管理方式开放端口供外部访问添加用户添加权限修改用户角色更多rabbitmq命令安装依赖环境安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了yum -y ...原创 2020-02-05 23:07:10 · 89 阅读 · 0 评论 -
阿里云Ecs搭建vsftp服务
文章目录vsftpd定义安装步骤vsftpd定义very secure FTP daemon非常安全的ftp守护神的缩写,是一款开源的ftp服务器软件|——支持虚拟用户安装步骤## 1. 安装 - yum -y install vsftpd安装vsftp服务 - rpm -qa |grep vsftpd检查是否安装vsftpd - 默认配置文件在/etc/vsftpd/vsftpd...原创 2019-12-22 15:34:52 · 365 阅读 · 0 评论 -
搭建Redis集群
文章目录redis单机版搭建Redis Cluster集群简介集群搭建需要什么条件搭建集群步骤注意点debug解决redis单机版搭建## 1. 解压tar.gz## 2. 进入解压后的根目录,通过make进行编译 yum install gcc## 3. 备份redis.conf配置文件,并进行配置 70 bind 127.0.0.1 --...原创 2019-12-14 00:08:01 · 163 阅读 · 0 评论 -
阿里云ECS服务器安装Mysql5.7.28 详细版
文章目录Mysql的三种安装方式详细步骤1. 解压,修改权限2.初始化mysql2.1配置默认配置my.cnf2.2进行初始化2.3配置环境变量3. 启动mysql(两种方式)默认方式启动服务的方式启动4. 登陆mysql5. 远程登陆mysqldebug详解error while loading shared libraries: libstdc++.so.6: cannot open shar...原创 2019-12-12 19:57:07 · 746 阅读 · 0 评论 -
阿里云ECS安装JDK,ZooKeeper
Linux安装JDK1.1 环境变量配置:vi /etc/profilePATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOME PATH CLASSPATH1.2 配置生效:source /ect/profile1.3 验证结果:j...原创 2019-12-06 20:21:37 · 95 阅读 · 0 评论 -
idea 红色文件处理方法
今天遇到idea红色文件的问题,导致项目编译和提交到svn出现问题,下面对解决这一问题做一下总结。1.首先我们要了解不同颜色文件代表的意思:绿色,已经加入版本控制暂未提交红色,未加入版本控制蓝色,加入版本控制,已提交,有改动白色,加入版本控制,已提交,无改动灰色:版本控制已忽略文件2.红色文件是未加入版本控制,在查找一些解决办法有的是要求Ctrl+Alt+s 打开Settings--...转载 2019-11-21 09:40:36 · 3393 阅读 · 0 评论 -
以独占方式锁定此配置文件
刚开始VMware有很多虚拟机,可就是有一些打不开并报此错误,弄了好长时间,突然某天突发奇想,竟然解决,特此记录进入虚拟机文件夹删除其他,近剩:配置文件xx.vmx,磁盘文件xx.vmdk重新打开虚拟机搞定...原创 2019-10-14 10:29:32 · 391 阅读 · 0 评论 -
Linux安装Mysql5.6.43
总结:编辑配置文件my.cnf——>编辑启动脚本mysql.server——>初始化数据库mysql_install_db——>启动数据库——>更改权限安装Mysql安装包,并进行解压 创建mysql 用户组和用户 groupadd mysql useradd -r -g mysql mysql 创建并编辑默认配置文件my.cnf...原创 2019-04-09 01:20:02 · 137 阅读 · 0 评论 -
搭建Kafka集群
一.安装JDKexport JAVA_HOME=/home/soft/jdk1.8.0_201 ——————————第一行export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA...原创 2019-04-08 16:00:45 · 103 阅读 · 0 评论 -
Spring Boot2.0+Oauth2.3.3+spring-data-redis+lettuce整合史上最全,Token的redis集群存储
文章目录token集群存储遇到的坑Lettuce 和 jedis的区别和练习引入Lettuce引入Lettuce,并配置Template设计template工具类报错: NoSuchMethod,redis.connection.RedisConnection.set([B[B)V配置令牌配置MyredisTokenStore配置认证处理器自定义认证处理器自定义密码编码器对于新技术的不断追求中,...原创 2020-02-08 01:11:02 · 963 阅读 · 0 评论 -
多台虚拟机设置静态IP上网
一.编辑 网络编辑器本地无线网络地址:192.168.1.213 我仅仅连接了无线子网ip:192.168.100.0 随意设置,不要和本地网络地址为一个网段(可能会慢) |——等于设置了一个子路由器二. NET模式设置网关:192.168.100.2 在自己设置的ip地址找一个子网ip端口转发: 上一步配置的子网ip地址...原创 2019-04-16 20:05:29 · 2109 阅读 · 0 评论 -
整合多模块bug集
bug虐我千百遍,我却待她如初见Failed to collect dependencies问题解决方法:先打包父工程,然后在打包子模块就可以解决以上问题SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer解决方法:添加插件<plugin>...原创 2019-09-17 19:26:55 · 210 阅读 · 0 评论