自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

每天进步一点点的专栏

胜利者的经验并不复杂,那就是寻找人生的关键点,并在关键时刻竭尽全力

  • 博客(180)
  • 资源 (23)
  • 收藏
  • 关注

原创 聚合工程maven

【Maven】使用IDEA创建Java多模块Maven继承,聚合项目_idea创建多模块项目-CSDN博客

2024-04-03 19:36:10 272 1

转载 jvm:ObjectMonitor源码

synchronized的使用synchronized关键字是Java中解决并发问题的一种常用方法,也是最简单的一种方法,其作用有三个:(1)互斥性:确保线程互斥的访问同步代码(2)可见性:保证共享变量的修改能够及时可见(3)有序性:有效解决重排序问题,其用法也有三个:修饰实例方法 修饰静态方法 修饰代码块修饰实例方法public class Thread1 implements Runnable{ //共享资源(临界资源) static int i=0; .

2020-05-19 16:44:44 7469 19

原创 设置垃圾回收器

java -XX:+PrintFlagsFinal可以看到1.8默认的是 UseParallelGCParallelGC 默认的是 Parallel Scavenge(新生代)+ Parallel Old(老年代)在JVM中是+XX配置实现的搭配组合:UseSerialGC 表示 “Serial” + "Serial Old"组合UseParNewGC 表示 “ParNew” + “Se...

2020-03-28 17:05:03 1018

原创 G1垃圾收集器

G1收集器是一款在server端运行的垃圾收集器,专门针对于拥有多核处理器和大内存的机器,在JDK 7u4版本发行时被正式推出,在JDK9中更被指定为官方GC收集器。它满足高吞吐量的同时满足GC停顿的时间尽可能短。G1收集器专门针对以下应用场景设计可以像CMS收集器一样可以和应用并发运行 压缩空闲的内存碎片,却不需要冗长的GC停顿 对GC停顿可以做更好的预测 不想牺牲大量的吞吐量性能 ...

2020-03-28 16:10:24 938

原创 js 获取不同时区的问题

<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>根据时区取得时区时间</title> ...

2020-03-18 11:46:11 1375

原创 Nginx跨域解释

#指定允许跨域的方法,*代表所有 add_header Access-Control-Allow-Methods *; #预检命令的缓存,如果不缓存每次会发送两次请求 add_header Access-Control-Max-Age 3600; #带cookie请求需要加上这...

2020-03-17 16:18:39 359

原创 spring如何解决循环引用的

https://zhuanlan.zhihu.com/p/84267654https://www.imooc.com/article/34150spring实例化一个Bean的时候: 实例化目标Bean(此时首先放入singletonFacties中) 注入其依赖属性核心:/** Cache of singleton objec...

2020-03-17 11:57:01 1489

原创 springmvc 获取request response session的工具方法和国际化处理

RequestContextHolder中的宝藏工具方法RequestAttributes requestAttributes=RequestContextHolder.getRequestAttributes();ServletRequestAttributes servletRequestAttributes=ServletRequestAttributes.class.cast(...

2020-03-17 09:53:45 250

原创 计算机网络(总结)

物理层: 网络设备的机械特性 电器特性 功能特性 过程特性 数据通信的基础知识 数字信号 模拟信号 频分多路复用 时分多路复用数据链路层: 封装成帧 透明封装 无差错接收 点到点线路的数据链路层 PPP 广播信道的数据链路层 CSMA/CD 设备:以太网 集...

2020-03-14 11:06:41 271

原创 Mybatis处理MySQL中的时间问题

1、MySQL中的时间表达1) DATETIME显示格式:yyyy-MM-dd HH:mm:ss时间范围:[ '1000-01-01 00:00:00'到'9999-12-31 23:59:59']2) DATE显示格式:yyyy-MM-dd时间范围:['1000-01-01'到'9999-12-31']3) TIMESTAMP显示格式:yyyy-MM-dd HH:m...

2020-03-04 15:39:13 1265

原创 UTC时间和北京时间(Java处理)

1、时间说明 具体时间说明:https://blog.csdn.net/top_code/article/details/50462922 图借鉴上述链接中的内容: UTC时间:是世界标准的时间。 北京时间:UTC+8 东京时间:UTC+92、UTC时间格式有很多,需要辨清自己是属于哪种格式,否则会出错...

2020-03-04 15:16:26 4054

原创 支持静态方法中拿到Bean的方法(持续集成的思想)

1、定义一个Adapterpublic class BeanFactoryAdapter { /** * BeanFactory */ private static MyBeanFactory beanFactory; /** * getBean * @param targetClass 要获取的类 * @retur...

2020-02-29 11:47:51 514

原创 ElasticJob+ShardingJDBC的Hello World

ElasticJob+ShardingJDBC的Hello World----------------------------------------------------------------------------import com.dangdang.ddframe.job.api.ShardingContext;import com.dangdang.ddframe.job.a...

2020-02-28 13:54:06 611

原创 过滤器(Filter),拦截器(Interceptor)和AOP拦截的区别

1.过滤器过滤器可以拦截到方法的请求和响应(ServletRequest request, ServletResponse response),并对请求响应做出像响应的过滤操作,比如设置字符编码,鉴权操作等2.拦截器拦截器可以方法执行之前(preHandle)和方法执行之后(afterCompletion)进行操作,回调操作(postHandle),可以获取执行的方法的名称,请求(Htt...

2020-01-17 09:42:10 1415

原创 TCC-分布式事务

TCC-分布式事务解决方案(国内GitHub优秀方案解决)框架名称 幂等性 嵌套调用 RPC框架支持 默认支持事务日志存储方式 可靠性验证 star数量 Github地址 tcc-transaction 不支持 嵌套调用尝试失败 不耦合RPC框架 DB、redis、zk、file 通过 42...

2019-11-23 14:33:18 239

原创 Mybatis-查询

MyBatis查询 1、一对多查询+一对一查询 <collection property="subResource" javaType="list" select="selectByTAndO" column="{pMenuId=child_pid,userId=userId}" ofType="Entity" > </co...

2019-11-22 18:23:16 321

原创 spring:bean生命周期

Spring 容器中Bean生命周期

2019-10-17 09:14:39 125

转载 RabbitMQ 延时消息队列

https://www.cnblogs.com/xiaoxing/p/9250823.html一、简述二、示例demo单个延迟队列 多个延迟队列一、简述延时消息在日常随处可见:1、订单创建10min之后不发起支付,自动取消。2、30min定时推送一次邮件信息。最常用到方式为定时任务轮训,数据量小的时候使用没什么问题 而当有千万甚至上亿的数据量时就会出现数据读取的瓶...

2019-09-26 10:29:15 759

原创 幂等性的总结

与题主分享一点在高并发的核心技术中如何实现幂等性问题的研究,希望对题主有所帮助。实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。例如:1. 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。2. 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该只扣一次钱;3. 发送消息,也应该只发一次,同样的短信发给...

2019-09-06 09:29:51 511

原创 NGINX正向代理+java设置代理

server { resolver 8.8.8.8; resolver_timeout 5s; listen 80; location /check.do{ return 200; } location / { proxy_pass $scheme:...

2019-08-20 19:46:53 1720

原创 netty-超时的设置

官方给出的处理方法:// An example that sends a ping message when there is no outbound traffic// for 30 seconds. The connection is closed when there is no inbound traffic// for 60 seconds.public class...

2019-08-14 17:18:02 10012

原创 elastic-job(通过zookeeper管理元数据)

任务名称: namespace /elastic-job-demo |---------demoSimpleJob1 |-------------leader |-----election ...

2019-08-13 18:01:35 2187

原创 zookeeper curator选主(Leader)

在分布式系统设计中,选主是一个常见的场景。选主是一个这样的过程,通过选主,主节点被选择出来控制其他节点或者是分配任务。选主算法要满足的几个特征:1)各个节点均衡的获得成为主节点的权利,一旦主节点被选出,其他的节点可以感知到谁是主节点,被服从分配。2)主节点是唯一存在的3)一旦主节点失效,宕机或者断开连接,其他的节点能够感知,并且重新进行选主算法。zookeeper实现了安...

2019-08-10 09:31:38 784

原创 零拷贝(java+netty+kafka+RocketMQ)

Java零拷贝1.MappedByteBuffer +2.DirectByteBuffer+3.Channel-to-Channel传输Netty零拷贝netty提供了零拷贝的buffer,在传输数据时,最终处理的数据会需要对单个传输的报文,进行组合和拆分,Nio原生的ByteBuffer无法做到,netty通过提供的Composite(组合)和Slice(拆分)两种buffer来实...

2019-08-09 09:24:49 1109

原创 快速删除大文件的方法

1、快速删除大量文件:假如你要在linux下删除大量文件,比如100万、1000万,像/var/spool/clientmqueue/的mail邮件,/usr/local/nginx/proxy_temp的nginx缓存等,那么rm -rf *可能就不好使了。 rsync 可以用来清空目录或文件,如下:1)先建立一个空目录mkdir/data/blank2)用rsync删除目标目录...

2019-08-09 09:13:18 3606

原创 Quartz分布式定时任务

如果想要实现可以动态修改的定时策略,建议使用开源组件 Quartz。http://www.quartz-scheduler.org/downloads/

2019-08-01 10:01:36 529

原创 JDK默认默认垃圾收集器

jdk1.7 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)jdk1.8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)jdk1.9 默认垃圾收集器G1-XX:+PrintCommandLineFlagsjvm参数可查看默认设置收集器类型-XX:+PrintGCDetails亦可通过打印...

2019-07-30 09:44:57 3863 1

转载 CMS执行周期

Java堆的对象分布如下:1、InitialMarking(初始化标记,整个过程STW)该阶段单线程执行,主要分分为两步:标记GC Roots可达的老年代对象; 遍历新生代对象,标记可达的老年代对象;该过程结束后,对象分布如下:2、Marking(并发标记)该阶段GC线程和应用线程并发执行,遍历InitialMarking阶段标记出来的存活对象,然后继续递归...

2019-07-29 20:47:59 724

原创 JVM配置详解

关于JVM选项的几点:1) 布尔型参数选项:-XX:+ 打开, -XX:- 关闭。(译者注:比如-XX:+PrintGCDetails)2) 数字型参数选项通过-XX:=设定。数字可以是 m/M(兆字节),k/K(千字节),g/G(G字节)。比如:32K表示32768字节。(译者注:比如-XX:HeapDumpPath=./java_pid.hprof)3) 字符行参数选项通过-...

2019-07-29 19:45:31 240

转载 G1从入门

G1从入门最近在看关于G1垃圾收集的文章,看了很多国内与国外的资料,本文对G1的这些资料进行了整理。这篇合适JVM垃圾回收有一定基础的同学,作为G1入门可以看一下,如果要死磕G1实现的内容细节。大家可以找R大。 个人认为R大是目前国内JVM领域研究的先驱了,当然R大也是不建议大家去看JVM的源码的。为啥别读HotSpot VM的源码G1系列第一篇文章会介绍G1的理论知识,不会做JVM源码的深...

2019-07-29 17:33:20 395

转载 -XX:CMSInitiatingOccupancyFraction

使用例子:-XX:CMSInitiatingOccupancyFraction=70CMS垃圾收集器,当老年代达到70%时,触发CMS垃圾回收。查看CMSInitiatingOccupancyFraction的初始值为-1intx CMSInitiatingOccupancyFraction = -1 ...

2019-07-29 17:04:39 1595

转载 jvm 性能调优工具之 jstat

概述Jstat是JDK自带的一个轻量级小工具。全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。jstat 用法option:参数选项 -t:可以在打印的列加上Time...

2019-07-29 14:56:56 503 1

转载 finalize、Finalizer和Finalizer Queue的原理

1.摘要前一阵排查一个跟java的finalizer有关的问题,发现网上虽然有很多关于finalizer的描述,但是大多都语焉不详,草草说了几句“带finalize的对象会进入finalizer队列”然后就没下文了,这让我研究了很久也没搞明白这个finalizer队列究竟是什么原理,也没明白为什么heap里面的Finalizer对象非常多但是用jmap -finalizerinfo的时候总是显...

2019-07-26 17:23:42 1135

转载 JVM浮动垃圾说得不错

https://segmentfault.com/q/1010000013653267

2019-07-26 17:05:45 2128

原创 Tomcat源码加密

(一)操作方法和spring源码添加修改部分事先说明:spring源码要下载好,会有修改spring的源码操作,本文和本作者所依赖的spring项目的版本是3.1.1,spring4及以上源码对应的类路径可能有所改变,需要自己找到要修改的类哦,类名应该是不会变的。望理解~~操作步骤: ~具体说明看类文件注释~1.运行ProduceKey.java的main方法 生成 key.key文件...

2019-07-26 16:36:39 962 1

转载 Spring 中的类加载机制 - ClassLoader

Spring 中的类加载机制 - ClassLoaderClassLoader JVM 类加载机制系列文章:Java - ClassLoader Spring 中的类加载机制 - ClassLoader一、OverridingClassLoader 中的使用OverridingClassLoader 是 Spring 自定义的类加载器,默认会先自己加载(excludedPackag...

2019-07-26 16:32:03 4438 2

原创 JVM类加载机制+Tomcat类加载

类加载机制----------------------------------------形成JVM可以直接使用的Java类型的过程重要判断Class是否相等(类加载器必须是同一个),要看2个准则Class clazz1; Class clazz2; (clazz1==clazz2&&clazz1.getClassLoader()==clazz2.getC...

2019-07-26 15:40:18 322

转载 Log4j中的异步Appender+Logger

前文已经讲了log4j2的AsyncAppender的实现【log4j2异步日志解读(一)AsyncAppender】,今天我们看看AsyncLogger的实现。看了这个图,应该很清楚AsyncLogger调用Disruptor,然后直接返回。至于高性能队列这里已经展开讲了是如何实现的。AsyncLogger的调用流程我们来看看AsyncLogger的调用流程,lo...

2019-07-25 15:49:21 4906

转载 文件描述符(File Descriptor)简介

维基百科:文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围绕着文件描述符展开。一、文件描述符概念  Linux 系统中,把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件描述符...

2019-07-24 09:59:47 10710

转载 给你最全的Ajax+XMLHttpRequest

XMLHttpRequest一Ajax和XMLHttpRequest我们通常将Ajax等同于XMLHttpRequest,但细究起来它们两个是属于不同维度的2个概念。对Ajax较为准确的解释:(摘自what is Ajax)AJAX stands for Asynchronous JavaScript and XML. AJAX is a new technique for c...

2019-07-19 11:29:03 923

webuploader断点续传

webuploader断点续传,webuploader断点续传webuploader断点续传webuploader断点续传

2020-03-07

fiddler_http_proxy_WillowSetup1.4.5.zip

web_dubuger+fiddler+willow(亲自安装实验过)

2020-02-12

(46页完整版)JVM体系结构与GC调优.zip

46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,46页PPT详解JVM,

2019-05-15

ssdb备份(快速删除文件)

ssdb备份数据文件,

2019-04-23

http通用工具类

http通用工具类

2019-02-20

jmeter4-http2.0-jdk8

jmeter4-http2.0-jdk8,

2018-12-27

Ebook-Web-经典

Ebook-Web Ebook-Web Ebook-Web Ebook-Web Ebook-Web Ebook-Web

2018-08-15

各类工具集合

各类工具集合,包括时间转换,mysql客户端,wireshark

2018-07-12

main方法启动服务

main方法启动服务-main方法启动服务-main方法启动服务

2018-05-26

基于lua的nginx自定义负载均衡

基于lua的nginx自定义负载均衡基于lua的nginx自定义负载均衡

2018-05-08

nginx-echo-lua-module模块安装以及实验

nginx-echo-lua-module模块安装以及实验nginx-echo-lua-module模块安装以及实验

2018-05-08

SCRT+Fidder+Willow

SCRT+fiddler.zip SCRT+fiddler.zip SCRT+fiddler.zip )

2018-04-26

java电子书

java电子书java电子书java电子书java电子书java电子书java电子书

2018-04-26

centos mysql

centos mysql centos mysql centos mysql centos mysql

2018-04-25

subline格式Idea插件

subline格式Idea插件 subline格式Idea插件 subline格式Idea插件 subline格式Idea插件

2018-03-17

SecureCRT-安全登录工具

SecureCRT-SecureCRT-SecureCRT SecureCRT-SecureCRT-SecureCRT

2018-03-17

android开发adb

android adb- android adb- android adb- android adb- android adb

2018-03-17

web代理工具

Charles- Charles- Charles- Charles代理- Charles代理

2018-03-14

fiddler+willow

fiddler+willow.rar fiddler2setup.exe fiddler4setup.exe WillowSetup1.4.5.zip WillowSetup1.3.1.zip

2018-03-14

原码反码补码图解.

原码反码补码图解.原码反码补码图解.原码反码补码图解.

2018-03-14

Java设计模式

Java设计模式-Java设计模式-Java与模式(清晰书签版)-Java与模式(清晰书签版)

2018-03-14

空空如也

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

TA关注的人

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