自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (2)
  • 收藏
  • 关注

原创 SpringBoot源码解读-1启动

启动@SpringBootApplication //springboot的核心注解public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); //run(args); }}public ...

2019-11-20 20:47:48 387

原创 mongod: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No

调优地址:https://www.cnblogs.com/swordfall/p/10427150.html#auto_id_17下载路径:https://mirrors.tuna.tsinghua.edu.cn/gnu/glibc/ http://ftp.gnu.org/gnu/glibc/参考地址:https://blog.csdn.net/off...

2019-11-18 21:21:22 17977 4

原创 Linux基础

Linux系统简介:Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这一点其他系统做不到。特点:1、完全免费 2、多用户、多任务 3、支持多种平台入门须知:1、Linux命令区分大小写,如果没有特别说明,保持小写2、命令之间有空格(例如ping命令)3、命令需要多动手敲!4、命令有很多,不知道的可百度...

2019-05-11 15:17:36 244

原创 Spark Java程序案例入门+Spark Window环境搭建

spark+windows环境搭建下载链接http://spark.apache.org/downloads.html请先搭建scala+windows环境下载完后配置环境变量运行spark-shell报错解决办法:hadoop各版本下载链接https://archive.apache.org/dist/hadoop/common/配置hadoop+wi...

2018-11-27 23:04:43 2137

原创 分布式storm-1.2.2环境搭建,问题解决,术语入门

分布式storm-1.2.2Storm是一个开源的分布式实时大数据处理系统,可以处理海量数据,具有高可靠,高容错,高扩展的特点,适用于数据实时处理而非批处理.修改配置文件storm.yaml#配置zk地址(配置zk的主机名,如果zk集群使用的不是默认端口。那么还需要配置#strom.zookeeper.port)storm.zookeeper.servers:...

2018-11-01 22:54:00 1546

原创 zookeeper-3.4.10分布式集群环境搭建

目录 1.初始机器状态2.修改所有机器上的zk环境变量3.修改配置文件zoo.cfg4.根据zoo.cfg到各个机器上手动创建dataDir目录5.根据zoo.cfg到各个机器上手动创建myid文件6.每台机器都要启动zk7.查看zk的状态8.批量启动zk脚本开发9.zk集群结构10.zk的基本使用11.zk的客户端api基本使用1....

2018-11-01 21:58:53 757 4

原创 spring @EnableCaching底层原理

@EnableCaching底层原理

2023-06-19 11:56:41 103

原创 spring @Configuration底层原理

01ConfigurationClassPostProcessor派生更多的beanDef,cglib增强配置类| ProcessOn免费在线作图,在线流程图,在线思维导图

2023-06-16 16:21:15 94

原创 2020-12-28

Jmeter压力测试系列(四) - 模拟对Openfire服务器 https://www.meiwen.com.cn/subject/owzmzxtx.htmlJmeter压力测试系列(四) - 模拟对Openfire服务器进行消息轰炸https://www.jianshu.com/p/3a96afdbd7af

2020-12-28 10:36:43 173

原创 centos7搭建单机RocketMQ-4.3.2环境,console

单机RocketMQ-4.3.2rocketmq-all-4.3.2-bin-release下载地址:http://rocketmq.apache.org/dowloading/releases/参考资料:https://www.cnblogs.com/YCcc/p/10863004.html安装在192.168.1.133上配置RocketMQ环境变量vi /etc/profileexport ROCKETMQ_HOME=/usr/local/bigdata/rocketmq/

2020-10-29 14:20:58 465

原创 Docker

目录Docker安装设置ustc镜像Docker启动和停止命令镜像相关命令查看&创建并交互式容器创建并启动守护式容器停止&拷贝&目录挂载&ip&删除MySql容器部署Tomcat容器部署Nginx容器部署Redis容器部署Docker Compose迁移&备份使用Dockerfile创建镜像Docker安装yum包更新到最新yum update安装需要的软件包 yum-util提供yum-

2020-10-22 21:25:46 193

原创 idea新建java文件时报错:Unable to parse template “Class“ Error message: Index 0 out of bounds for length 0

这是我的template

2020-10-13 11:06:22 1166 5

原创 Java获取指定包名下的所有类的全类名的解决方案

package com.linln.component.msg.redis.util;import cn.hutool.core.collection.CollUtil;import cn.hutool.json.JSONArray;import cn.hutool.json.JSONObject;import cn.hutool.json.JSONUtil;import org.springframework.beans.factory.annotation.Autowired;impor.

2020-09-21 09:11:46 1632

原创 spring自定义ReaderEventListener

作用:监听spring读取配置文件spring提供了EmptyReaderEventListener默认实现,但是重写方法中并没有任何业务代码public class MyEmptyReaderEventListener implements ReaderEventListener { @Override public void defaultsRegistered(DefaultsDefinition defaultsDefinition) { System.o

2020-09-14 12:28:28 557

原创 spring读取配置文件时增强

package spring;import cn.hutool.core.util.ArrayUtil;import org.springframework.beans.BeansException;import org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader;import org.springframework.beans.factory.xml.XmlBeanDefinitionRead...

2020-09-14 11:09:04 199

原创 spring设置profile

三个配置文件 application.xml applicaiton-dev.xml applicaiton-pro.xmlapplication.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

2020-09-14 10:54:08 172

原创 判断对象是否可以被回收的算法

引用计数算法Reference Counting:给对象添加一个引用计数器,每当被引用一次的时候计数器值+1,当引用失效时计数器值-1,任何时刻计数器为0的对象就是不可能再被使用的。存在问题:解决不了对象之间相互循环引用的问题public class ReferenceCountingGC {public Object instance;public static void main(String[] args) throws InterruptedException {...

2020-09-08 09:41:54 213

原创 jvm运行时数据区

参考资料:https://www.cnblogs.com/newAndHui/p/11168791.htmlhttps://www.iteye.com/blog/wangwengcn-1622195程序计数器Program Counter Register:一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器线程私有。字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支循环跳转异常处理线程回复等基础功能都依赖计数器来完成。由于jvm的多线程是通过线程轮流切.

2020-09-08 09:40:51 142

原创 JVM双亲委派机制

public Class<?> loadClass(String name) throws ClassNotFoundException {return loadClass(name, false);}protected Class<?> loadClass(String name, boolean resolve)throws ClassNotFoundException{synchronized (getClassLoadingLock(name)) {...

2020-09-08 09:39:30 89

原创 JVM的Client和Server模式

C:\Users\xxx>java -versionjava version "1.8.0_231"Java(TM) SE Runtime Environment (build 1.8.0_231-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升...

2020-09-08 09:38:51 195

原创 JAVA类加载机制,1.9之前

全盘负责:当一个类加载器加载某个Class时,该Class所依赖和引用的其它Class也将由该类加载器负责载入,除非显式的使用另外一个类加载器来载入。双亲委派:当一个类加载器收到了类加载请求,会先看看自己的缓存中是否已经加载了该类,如果加载了就直接返回,否则它会把这个请求委派给父类加载器parent去完成,依次递归,因此所有的加载请求最终都被传送到顶层的启动类加载器中。只有在父类加载器无法加载该类时子类才尝试从自己类的路径中加载该类。(注意:类加载器中的父子关系并不是类继承上的父子关系,而是类加载器实例

2020-09-08 09:38:09 106

原创 JAVA类加载器

类加载器:“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的代码模块成为“类加载器”启动类加载器:负责加载lib下的类库,或被Xbootclasspath参数所制定的路径中的。类加载前,创建由c++实现的引导类加载器实例,所有启动类加载器无法被java程序直接引用。System.out.println(String.class.getClassLoader());会返回null 扩展类加载器:负责加...

2020-09-08 09:37:34 92

原创 JAVA类加载过程

参考资料:https://www.jianshu.com/p/8cab58ac37e3将java文件编译成.class二进制字节码文件,类加载指的是将class文件读入内存,并为之创建一个java.lang.Class对象,即程序中使用任何类时,系统都会为之建立一个java.lang.Class对象,系统中所有的类都是java.lang.Class的实例其中类加载过程包含了五个阶段:加载Loading:从磁盘上找到字节码文件加载到内存中,在内存中实例化一个java.lang.Class类的对象存

2020-09-08 09:36:42 219

原创 jvisualvm插件无法下载问题

2020-08-17 22:33:42 534

原创 马老师的tcp/ip直播课知识记录

OSI七层模型:应用层:准备某种协议的数据,在发送前,通过内核完成和别人的连接表示层会话层传输控制层网络层数据链路层物理层TCP/IP协议:应用层:准备某种协议的数据,在发送前,通过内核完成和别人的连接传输控制层:TCP(面向连接的、可靠的的传输协议)、UDP网络层:数据包怎么走,,找到路由吓一跳,点:ip、route ipv4(点分字节) ipaddr: netmask子网掩码...

2020-08-11 22:17:35 132

原创 数据一致性

我们公司有2套系统,一套系统使用mongodb,一套系统使用mysql,如何保证他们的数据一致性,比如两个库里都有user表,现在要修改user的基本资料

2020-08-11 18:07:42 110 1

原创 java aqs中什么情况下会调用cancelAcquire方法

//阻塞当前线程,等待被唤醒,final boolean acquireQueued(final Node node, int arg) {boolean failed = true;//true代表成功获取锁try {boolean interrupted = false; //线程在等待过程中是否被中断for (;;) {final Node p = node.predecessor();//为什么在执行...

2020-08-09 22:00:37 2439 15

原创 一层一层实现高并发扣库存的问题

package jedis;import redis.clients.jedis.Jedis;import redis.clients.jedis.params.SetParams;import java.security.Key;import java.util.UUID;/** * @author mawt * @description * @date 2020/8/7 */public class TestJedis { private static Jedis .

2020-08-07 18:11:30 250

原创 防止表单重复提交的4种方法

转载:https://www.cnblogs.com/huanghuizhou/p/9153837.html

2020-08-07 14:33:49 115

原创 redissionClient报错问题

08-04 17:38 ERROR - o.r.client.handler.CommandDecoder Unable to decode data. channel: [id: 0xf7e21491, L:/192.168.1.145:65196 - R:192.168.1.99/192.168.1.99:6379], reply: ReplayingDecoderByteBuf(ridx=654, widx=654), command: (LINDEX), params: [task-categ.

2020-08-04 17:39:54 10272

原创 java编译和反编译

JAVA编译:java文件转class文件JAVA反编译:将class字节码文件转成java文件JAVA常用的反编译工具:javap:jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码jad:http://www.javadecompilers.com/jad下载地址https://blog.csdn.net/xuwb123xuwb/article/details/80528511使用地址javac SwitchMain.javajad -sjava S

2020-08-01 08:28:42 129

原创 ThreadLocal:线程内通信

参考资料:https://www.cnblogs.com/micrari/p/6790229.html参考资料:https://blog.csdn.net/anlian523/article/details/105523826它不是用来解决多线程环境下的共享变量问题,而是用来提供线程内部的共享变量,在多线程环境下,可以保证各个线程之间的变量互相隔离、相互独立。ThreadLocal是Java里一种特殊的变量。每个线程都有一个ThreadLocal就是每个线程都拥有了自己独立的一个变量,竞争条件被

2020-07-31 16:32:42 482

原创 上下文切换

即使是单核处理器也能支持多线程执行代码,CPU通过分配给每个线程CPU时间片来实现这个机制。时间片是CPU分配给各线程的时间,因为时间非常短,所以CPU通过不停的切换线程执行,让我们感觉多个线程是同时执行的,时间片一般都是几十ms。CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下回切换到这个任务时,可以再加载这个任务的状态。所有任务从保存到再加载的过程就是一次上下文切换。上下文切换回影响多线程执行的效率。...

2020-07-31 16:31:24 131

原创 初识sun.msic.Unsafe类:CAS操作的核心类

java不能直接访问操作系统底层,而是通过native本地方法来访问。Unsafe类提供了硬件级别的原子操作juc并发包,即java.util.concurrent包,是JDK的核心工具包,是JDK1.5之后,由 Doug Lea实现并引入。整个java.util.concurrent包,按照功能可以大致划分如下:juc-locks 锁框架juc-atomic 原子类框架juc-sync 同步器框架juc-collections 集合框架juc-executors 执行器框架p

2020-07-31 16:30:07 203

原创 CAS存在的问题和解决方案

CAS虽然很高效的解决了原子操作问题,但是CAS仍然存在三大问题:1.ABA问题:因为CAS需要在操作值的时候检查下值有没有发生变化,如果没有发生变化则更新,但是如果一个值原来是A,变成了B,又变成了A,那么使用CAS进行检查时会发现它的值没有发生变化,但是实际上却变化了。ABA问题的解决思路就是使用版本号。在变量前面追加上版本号,每次变量更新的时候把版本号加一,那么A-B-A 就会变成1A-2B-3A2.循环时间开销大:自旋CAS如果长时间不成功,会给CPU带来非常大的执行开销(时刻a的内存值和时

2020-07-31 16:29:12 2769

原创 Integer.numberOfLeadingZeros

// 首先在jvm中一个int类型的数据占4个字节,共32位,其实就相当于一个长度为32的数组。// 那我们要计算高位连续0的个数,就是从左边第一个位开始累加0的个数,直到遇到一个非零值。public static int numberOfLeadingZeros(int i) { if (i == 0) return 32; int n = 1; // 下面的代码就是定位从左边开始第一个非零值的位置,在定位过程中顺便累加从左边开始0的个数 // 将i无.

2020-07-31 16:27:43 504

原创 JS数组对象相关方法

prototypetoString将数组转成字符串,逗号分隔filter创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素array.filter(function(currentValue,index,arr), thisValue);注意: filter() 不会对空数组进行检测。注意: filter() 不会改变原始数组参数二thisValue: 可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。如果省略了 thisValue..

2020-07-31 16:25:46 127

原创 海盗分金

5个海盗抢得100枚金币,他们按抽签的顺序依次提方案:首先由1号提出分配方案,然后5人表决,投票要超过半数同意方案才被通过,否则他将被扔入大海喂鲨鱼,依此类推。演绎推理编辑假设5个海盗抢到了100枚金币,每一颗都一样的大小和价值。他们决定这么分:抽签决定自己的号码(1,2,3,4,5) 首先,由1号提出分配方案,然后大家5人进行表决,当半数以上的人同意时(包括半数),按照他的提案进行分配,否则将被扔入大海喂鲨鱼。 如果1号死后,再由2号提出分配方案,然后大家4人进行表决,当且仅当半超

2020-07-31 16:23:55 404

原创 JSONP跨域问题

参考资料:https://segmentfault.com/a/1190000011145364Access to XMLHttpRequest at 'https://www.layui.com/demo/table/user/?page=5&limit=10' from origin 'file://' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requ

2020-07-31 16:22:42 216

原创 CDN缓存和浏览器缓存

CDN的全称是Content Delivery Network,即内容分发网络,旨在解决网络延迟。CDN是构建在网络之上内容分发网络,依靠在各地部署的缓存服务器,通过中心平台的负载均衡/内容分发/调度等功能模块,使用户可以就近获取所需要的内容,从而达到降低网络用塞,提高系统访问速度的技术。CDN的关键技术是内容存储和分发技术。浏览器缓存:当我们请求一个网页的时候,服务器会向浏览器返回大量数据,但是这些数据需要全部缓存吗?浏览器又是如何区分哪些数据需要进行缓存,哪些是需要实时跟源站获取的?浏览器的缓存策略

2020-07-31 16:21:07 266

大数据分布式集群环境搭建.docx

centos大数据分布式集群搭建,包含hadoop spark hbase hive solr elasticsearch redis zookeeper rocketmq mongodb mariadb storm kafka docker

2020-11-09

协卡助手3.4.2.0.rar

一款数字证书辅助工具。不仅成了华大、明华、文鼎创、柯斯四个品牌的UKEY驱动,而且还可以通过协卡助手直接进行安装和管理,非常好用,欢迎下载

2020-09-09

空空如也

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

TA关注的人

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