自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 用Redis缓存Web网页的分页数据

业务场景:把学生选课系统中学生群体数据放入缓存中,减少对数据库的访问,提高系统的负载能力。 实现思路:1.在用户首次登陆选课系统时,会先判断Redis缓存中是否有该缓存(这里使用的是Redis的zset数据结构来实现)。 补充:由于zset结构本身没有判断键是否存在的命令,我这里是用的是zcard(key)。zcard函数返回的是这个键对应的缓存集中的条数。 zset数据结构补充: Red...

2018-08-16 18:22:42 1073

原创 Mysql踩坑——Group by+Order by带来的问题

Mysql踩坑——Group by 问题背景 最近上线的一个统计月活用户的需求,看起来一个定时任务+几句sql统计就一步到位结束了。近几日发现生产数据没我的月活数据,于是就排查起来。 问题知道,那下一步肯定就是去排查了。 排查思路 先确定是不是任务挂了导致数据没跑出来 看了下生产的表,乍一看数据都挺正常的。然后去筛一下自己的记录,发现近几日都没有我的月活。于是上CAT服务监控系统去看下有没有相关的日志,发现有一条SQL报了超时错误。 知道错误在哪,然后正常的就是复现问题了 因为这种超时错

2021-04-30 16:47:27 995 1

原创 使用SHOW WARNINGS优化SQL

SHOW WARNINGS优化SQL 前言:记录下自己实际coding过程中遇到的问题,在度娘一番搜索也没发现啥好的解决方法。网上关于explain执行计划关于ref=func的讨论也是比较少的,所以只能求助于MySQL官网的文档,上面会有比较全面的解释。 1.问题发现 业务上有一段SQL需要在 in 的里面使用UNION查询,但是实际的效率随数据量的变化而变化。 优化前 EXPLAIN EXTENDED SELECT * FROM A WHERE id IN ( SELECT

2021-02-02 14:11:04 863

原创 ElasticSearch+Logstash+Kibana初探

ELK环境部署相关 部署的版本需要统一,否则可能会有兼容性问题,使用6.8.0. 外网访问需要放行 5601 9200 9300 三个端口 ElasticSearch 与Logstash不建议部署同台服务器 默认中间件都安装在 /usr/local/elk下(没有的话新建目录 mkdir /usr/local/elk),点此处下载(链接: https://pan.baidu.com/s/1J-fOALTN4YzbV-gqJZ_HJQ 密码: t133) 1. ElasticSearch ES不

2020-10-08 16:16:30 374

原创 JVM-Java内存模型(JMM)

文章目录Java内存模型(JMM)1. 主内存与工作内存2. 内存间交互操作3. Volatile登场4. 先行发生原则(happents-before) Java内存模型(JMM) JMM 可以屏蔽掉各种硬件和操作系统的内存访问差异,让Java程序在各个平台下都能达到一致的内存访问效果。 1. 主内存与工作内存 JMM规定所有的变量(包括实例变量、静态字段、构成数组对象的元素)都存储在主内存中,每个线程还有自己工作内存。线程工作内存保存了被该线程使用的变量的主内存的副本拷贝(不会拷贝整个对象,可能

2020-05-14 17:38:00 361

原创 JVM-类加载机制初识

文章目录JVM-类加载机制初识1. 什么是类加载机制?2. 类加载的过程1. 加载2. 验证3. 准备4. 解析5. 初始化3. 类加载器1. 类与类加载器2. 双亲委派模型 JVM-类加载机制初识 1. 什么是类加载机制? 我们所写的Java代码在经过编译后悔产生对应的class字节码文件,JVM把class文件加载到内存中,对数据进行校验、转换解析和初始化过程,最终形成可以被JVM直接使用的Java类型。 类加载的时机 整个的生命周期:加载-验证-准备-解析-初始化-使用-卸载 解析的过程不一定

2020-05-11 23:10:04 291

原创 Nginx搭建&不同域名代理同一服务器不同服务

Nginx搭建、代理服务 一. 环境搭建 下载nginx 链接:https://pan.baidu.com/s/1b6PttHknU6bnxObJIYajyg 提取码:ce8y 也可以在线安装(我是直接离线安装的) wget http://nginx.org/download/nginx-1.14.2.tar.gz 解压 下载完后,通过ftp软件把我们刚刚下载的包传到我们的服务器上去 接...

2020-05-05 22:49:21 1809

原创 Java并发

Java并发 一、基础概念 线程和进程的区别: 进程是指处于运行过程中的程序,并且具有一定的独立功能。进程是系统进行资源分配和调度的一个单位。当程序进入内存运行时,即为线程。 一个进程可以拥有多个线程组合,线程是组成进程的基本单位。 线程状态 New(新创建) Runnable(可运行) Blocked(被阻塞) Waiting(等待) Time waiting(计时等待) Termin...

2020-04-28 21:29:14 382

原创 Java泛型设计

Java泛型设计 为什么要去设计泛型? 为了可以编写被很多不同类型对象所重用的代码 泛型是如何定义? 1. 泛型类: class ClassName T是一个类型变量,可以是任意的类型,也可以有多个类型比变量。 类型变量使用大写形式,使用E表示集合的元素类型,K和V分别表示关键字和值得类型,是一个Map关系。T(需要时还可以用临近的字母U和S)表示任意类型 2. 泛型方法: T ...

2020-04-23 19:11:11 388

原创 记录MySQL启动失败/宕机-Cannot allocate memory for the buffer pool

记录MySQL启动失败/宕机-Cannot allocate memory for the buffer pool 场景是服务使用的过程中,发现tomcat都起不起来,查看tomcat日志发现是数据库连接异常。接着就是一顿操作了 排查思路: 用本地工具尝试连接,看看是不是web环境有问题或者MySQL驱动问题。 结果很显然不会是我的代码和环境问题。用工具连接也显示失败,那就会是MySQL...

2020-04-23 00:12:40 551

原创 Java异常-受查与非受查

Java异常-受查与非受查 所有的异常都是由Throwable继承而来,下级分为Error和Exception Error Error表示Java运行时系统的内部错误和资源耗尽错误,不应该抛出该类型的错误,只能通知用户,尽力安全关闭程序。 Exception 该分支派生出RuntimeException和其他异常(如I/O错误之类) 受查与非受查异常 非受查异常 派生于...

2020-04-19 14:58:11 692

原创 设计模式-观察者模式

文章目录设计模式-观察者模式1. 场景描述2. 系统设计 设计模式-观察者模式 观察者模式定义了对象之间的一对多依赖,当一个对象改变状态时,他的所有依赖者都会收到通知并自动更新 1. 场景描述 通过气象站监测的数据,对外界进行公告展示。也就是气象站统计好数据后,确认修改完,公告那边也会收到改变后的数据。 2. 系统设计 首先定义两个接口,Subject主题和Observer观察者 //主...

2020-04-18 16:03:50 234

原创 合并两个list元素报错

合并两个list元素报错 背景:做题的时候需要合并连个list,本来直接用list.addAll()觉得没啥问题,结果当然会会报错。报错信息显示java.lang.UnsupportedOperationException不能操作异常。 问题已经知道,下面看看本质是啥吧! 直接贴代码 List<String> list = Arrays.asList(list1); ...

2020-02-16 15:16:50 684

原创 JVM复习-内存区域与对象创建

JVM复习 基于JDK1.7的研究 一、Java内存区域与内存溢出 程序计数器 指示当前线程所执行的字节码的行号,编译字节码执行的命令,进而程序才能一步步的执行下去。 Java虚拟机栈 线程私有,生命周期与线程相同。 每个方法在执行时会创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等。方法从调用到执行完成的过程中,就饿对应着一个栈帧在虚拟机栈中入栈到出栈的过程。 **局...

2020-02-08 00:34:41 230

原创 基于RocketMQ的分布式事务

RocketMQ消息队列 文章目录RocketMQ消息队列基于RocketMQ的分布式事务一、分布式事务二、分布式事务解决方案三、RocketMQ事务消息实例四、分布式事务实现新用户注册送积分 基于RocketMQ的分布式事务 在介绍RocketMQ的分布式事务之前,先来了解下什么事分布式事务? 一、分布式事务 简介 在分布式系统中,不止使用一个数据库,比如订单系统使用db_order数...

2020-02-06 01:03:39 531

原创 @Configuration注解中引用bean

@Configuration注解中引用bean 背景介绍:需要在一个配置类里面引用一个bean 直接上代码 @Configuration @ComponentScan(value = "cn.loveyx815.rocketmq.mqtransaction.message") public class MQConfig { @Bean(name = "prooducer", init...

2020-02-05 18:11:08 2293

原创 maven项目pom.xml报错(非配置问题)

maven项目pom.xml报错 expected START_TAG or END_TAG not TEXT (position: TEXT seen …\ua0\r\n <d… @60:11) less… (Ctrl+F1) Inspection info: Inspects a Maven model for resolution problems. 这种就是从别的地方复制粘贴的d...

2020-02-05 11:42:10 517

原创 分布式中间件-RocketMQ消息队列-学习总结

RocketMQ消息队列 文章目录RocketMQ消息队列1.环境搭建2.实现生产者和消费者 简介:RocketMQ具有灵活的扩展性、海量消息堆积能力、支持顺序消息、支持多种消息过滤方式、支持事务消息、支持回溯消费。 四大核心组件:NameServer、Broker、Producer、Consumer,每个组件都可以部署成集群模式进行水平扩展。 Producer 生产者负责生产消息,R...

2020-01-30 14:34:54 810

原创 String、StringBuilder做为实参在方法中修改值的问题

String、StringBuilder做为实参在方法中修改字符串值的问题 场景介绍:需要在一个方法中同时修改两个字符串的值,因为不想传回一个数组,所以就尝试下直接修改字符串对象(地址引用) 下面介绍下几种修改方式: public static void changeString(String originStr){ originStr=new String("st...

2019-12-26 00:08:39 1612

原创 设计模式-策略模式(if else的终结者)

设计模式-策略模式 概念 策略模式(Strategy),定义了一组算法,将每个算法都封装起来,并且使它们之间可以互换,可以针对不同业务选择不同逻辑的执行。 场景应用 有一笔订单需要对它进行流程管理。从订单产生->订单入库->配送->确认订单完成,有这样一个流程。这里有订单入库、配送这两个动作标签,在每个订单产生动作标签的时候,执行的不同的业务处理。这里用简单的分支语句来实现...

2019-11-01 16:40:18 851

原创 Springboot中Redis学习(事务、Lua、跨域)持续更新

Redis事务 Lua脚本 Lua脚本在Redis中具备原子性,可以保证数据一致性的高并发环境。 Spring中提供了RedisScript接口,DefaultRedisScript为他的实现类 RedisScript接口: public interface RedisScript<T> { //获得脚本的sha1 String getSha1(); /...

2019-08-04 22:34:38 265

原创 Docker从入坑到放弃(环境、使用)

Docker从入坑到放弃 环境安装问题 windows7安装docker异常 :looks like something went wrong in step ‘looking for vboxmanage.exe’ 解决方案:从安装目录的 start.sh脚本开始排查,很大可能是因为电脑的环境变量没有创建成功,所以需要把脚本对应的变量打印出来看看。 打印语句: echo “$VBOX_...

2019-08-02 19:05:20 558

原创 在require.js中加载百度地图

1.先导入百度地图的API . 百度地图不支持amd模式加载,使用require.js加载必须设置异步async插件进行加载,否则会出错 not found BMap(好像地图的导入都需要异步加载) 若在require.js中采用 &lt;script src="百度地图的api路径"&gt;&lt;/script&gt; 导入地图的api实习上在导入过程中会转变成 documen...

2018-09-10 22:08:57 1138

原创 前端页面元素内容获取方式

主要列举val(),html(),innerHTML()的使用(也是方便自己回顾,刚开始用的少,没太注意区分) 1.val()获取html元素的value值 &lt;!-- js获取 --&gt; var v=$("#radio0").val(); &lt;!--html部分正文 --&gt; &lt;input type="radio" id="radio0" value="0"&

2018-08-16 10:17:24 2135

转载 Eclipse——Tomcat配置Cannot create a server using the selected type

打开Eclipse配置了个Tomcat8,然后我把删了,接着在配置同样的Tomcat就不行了,显示被用过了……以下是来源于别人的解决方案,已成功解决!1.退出 eclipse2.到[工程目录下]/.metadata/.plugins/org.eclipse.core.runtime3.把org.eclipse.wst.server.core.prefs和 org.eclipse.jst.serve...

2018-04-20 13:54:53 230

前端学习、面试总结踩坑文档

个人校招总结的前端笔面试文档,县分享给大家,后期会不定时更新。内容包含基础面试题、笔试、vue以及自己的踩坑指南。

2019-11-22

空空如也

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

TA关注的人

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