- 博客(223)
- 资源 (11)
- 收藏
- 关注
转载 【转】IntelliJ IDEA 常用快捷键 之 Mac 版
转自:【IntelliJ IDEA 常用快捷键 之 Mac 版】https://blog.csdn.net/qq_35246620/article/details/78263380温馨提示:在 IntelliJ IDEA 中有两个 Mac 版本的快捷键,分别为 Mac OS X 和 Mac OS X 10.5+, 其中 Mac OS X 10.5+ 为 IntelliJ IDEA 默认的快捷键版本。此外,建议将 Mac 系统中与 IntelliJ IDEA 冲突的快捷键取消或更改,不建议改 Intell
2021-03-31 21:03:05 285
原创 nginx配置文件总结
1.nginx特点1)C语言,开源2)高性能的反向代理工具,负载均衡,能解决跨域问题3)多进程,启动后会产生一个master进程和多个工作进程,不需要考虑多线程并发问题4)功能模块化,代码模块化,与http相关的代码在源码中,其他的在插件中,可进行二次开发5)采用IO多路复用机制,无阻塞,性能高6)支持sendfile文件传输方式,静态文件传输效率高,内核直接到内核(无需内核到用户空间,用户到内核),0拷贝文件传输2.nginx配置文件说明参考:【Nginx源..
2021-02-28 22:24:11 232
原创 SpringCloud原理
一、Eureka二、Hystrix三、Feign四、Ribbon五、Zuul参考:【Eureka工作原理】https://blog.csdn.net/qwe86314/article/details/94552801【SpringCloud-Hystrix原理】http://www.uml.org.cn/wfw/201906063.asp?artid=22057【Spring Cloud-Feign设计原理】https://blog.csd...
2021-02-18 20:20:48 189 1
原创 JAVA面试题整理
目录一、计算机网络二、数据库三、Redis四、JVM五、Java多线程与并发六、Java常用类库与技巧七、Spring八、持久层框架九、算法十、linux十一、设计模式十二、分布式服务十三、RocketMq (或其他消息中间件)十四、综合最近面试了一些公司,结合自己平时学习,整理了如下Java常问面试题,在这些基础题掌握基础上,能灵活运用于项目中,才能在面试中有更好的发挥。一、计算机网络1.三次握手过程2.四次挥手过程3.为什.
2021-02-14 14:04:49 447 1
原创 Spring启动初始化过程
1.spring启动过程1)定时器,监控启动时间2)获取spring监听器,启动监听器3)对启动传入的参数args进行封装,判断环境是哪种模式SERVLET、REACTIVE还是默认模式,然后将其和监听器listeners一起绑定到环境中4)配置需要忽略的Bean,配置启动时的Banner5)创建容器6)实例化SpringBootExceptionResporter,用于打印启动时的日志7)准备容器8)刷新容器9)刷新容器后的处理10)定时器停止监听11)判...
2021-01-21 01:04:19 1209 2
原创 Redis基本知识总结
最近系统的看了Redis数据,做下记录。一、redis支持的数据类型1.string//TODO2.list3.hash4.set5.zset二、分布式锁遇到的问题及解决方案1.分布式锁2.任务未执行完锁超时问题3.可重入锁...
2021-01-15 20:59:01 63
原创 Synchronized底层原理介绍
目录一、Java对象的堆内存结构1)Java对象在堆中的结构分为三部分:2)对象头a.MarkWordb.类型指针二、monitor介绍1.monitor的基本结构2.Monitor方法3.ObjectMonitor获取锁过程介绍三、Synchronized锁1.同步代码块锁2.同步方法3.类锁四、JVM对锁的优化1.锁膨胀1)偏向锁2)轻量级锁3)重量级锁2.锁消除3.锁粗化4.自旋锁和自适应自旋锁一、Java对.
2021-01-10 16:12:48 108
转载 MySQL中的几种类型日志介绍
转自:myseries的【MySQL中的几种日志了解】https://www.cnblogs.com/myseries/p/10728533.html前言MySQL中有以下日志文件,分别是: 1:重做日志(redo log) 2:回滚日志(undo log) 3:二进制日志(binlog) 4:错误日志(errorlog) 5:慢查询日志(slow query log) 6:一般查询日志(general log) 7:中继日志(relay log)。其.
2021-01-06 22:21:24 1130
原创 pxc集群引入的死锁问题定位
最近引入pxc集群后,查看后台日志发现多并发向数据库写数据时时总出现死锁的问题,定位后基本确认是pxc引入的问题。背景:1.kubernates容器化部署,3个Node节点,每个Node节点均有一份完全一致的mysql数据库数据,数据库采用pxc部署。单应用多数据库。2.数据库端口号3306,容器对外映射端口号为41000。3.应用连接数据库通过域名+内部端口号访问,如mysqlservice:33064.整个应用对外服务可通过北向IP访问5.表存储引擎是innodb,表是自增长
2021-01-06 18:43:31 1192 5
原创 分布式服务基础知识
最近复习了下分布式相关的知识,简单做了下总结(今天先列提纲,明天再一一补充)。一、集群和分布式的区别二、分布式事务的几个基础概念1.ACID2.CAP理论3.BASE理论三、分布式事务的解决方案四、分布式锁的实现五、分布式session的实现...
2021-01-01 21:41:52 504
原创 常见十种排序算法总结
最近有时间写了遍十种基础的排序算法,故做下总结。1.分类分类 排序算法 时间复杂度 空间复杂度 稳定性 最好情况 最坏情况 交换 冒泡排序 O(n^2^) O(1) 稳定 O(n) O(n^2^) 快速排序 选择 简单选择 ...
2020-12-19 18:06:26 261 1
转载 flowable初始化建表失败问题解决(oracle,mysql)
转载:https://blog.csdn.net/liusa825983081/article/details/106849053?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-4-106849053.nonecase注:本文适用于“springboot项目,因整合了druid导致的flowable无法自动建表问题”。首先flowable是提供指定数据库用户配置属.
2020-08-14 11:22:59 2280 1
原创 Linux系统配置jdk
最近总需要配置,记录一下,方便复制1.vi /etc/profile2.在该文件最后添加export JAVA_HOME=路径export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar3.source /etc/profile,配置生效4.echo $JAVA_HOME查看配置是否生效。...
2020-07-24 09:03:30 76
原创 从五个方面对sql进行优化(待继续补充)
工作中用到的mysql优化无非就是sql语句,表结构和业务,考虑过硬件和操作系统层面,但是没怎么去了解过,无意翻看了张甦著mysql王者晋级之路,把看到的总结下,虽然作为一个程序猿实践中从这两个方面去考虑,基本是公司给什么硬件条件和允许什么操作系统,就用默认的。一、表结构二、sql语句三、参数配置四、操作系统1)I/O调度模式建议选择deadline或者noop模式,不要使用cfq模式,因为会严重影响数据库的性能。cat /sys/block/fd...
2020-07-19 13:47:32 472
原创 多种角度看数据库锁分类
目录1.程序员的角度(网上这么说,个人理解应该是业务的角度),分为乐观锁和悲观锁。2.锁力度上,分为行级锁和表级锁。主要针对innodb存储引擎而言,myisam和memory支持表级别锁,dbd还有页锁,此处不多介绍。3.innodb行锁类型(mysql王者晋级之路,这本书上作者这么分的,个人理解应该是数据库角度分类),共享锁(S,又称读锁),排它锁(X,又称写锁),意向锁(分两种,意向共享锁IS和意向排它锁IX),MDL锁(meta data lock)。4.innodb行锁种类,单个行
2020-07-19 13:06:28 228 1
原创 记一次通过jprofiler定位cpu暴增的过程
背景:今天线上的一个环境cpu点击几个菜单总是能快速升到99%,而且很难降下来,该环境数据量也不多,初步看有几张表也就四五百万条数据,但是页面展示分页展示的,按说不至于占用cpu那么多。解决过程:jstat -gc 1000 10多次查看gc情况,发现老年代反复gc,但是回收的内存很有限,那说明应该是大对象无法正常回收1.top查看占用过多的进程。2.jps -l -m命令定位到哪个应用占用这么多,因为这次部署比较特殊,一个docker容器中部署了多个服务。3.top -Hp pid查看进程
2020-07-19 10:04:51 592
原创 线程池相关
## 核心参数含义 1、corePoolSize:核心线程数 * 核心线程会一直存活,及时没有任务需要执行 * 当线程数小于核心线程数时,即使有线程空闲,线程池也会优先创建新线程处理 * 设置allowCoreThreadTimeout=true(默认false)时,核心线程会超时关闭 2、queueCapacity:任务队列容量(阻塞队列) * 当核心线程数达到最大时,新任务会放在队列中排队等待执行 3、max...
2020-07-09 13:38:03 144
原创 idea提示修改项
1.引入依赖时,不推荐@Autowired,可用@Resource2.Number对象比较推荐Objects.equals(a,b),不推荐==,对象可能产生空,不安全3.不推荐Date.getTime(),可能产生NullPointException,推荐Objects.requireNotNull(Date).getTime()4.Arrays.stream(ids.split(","))代替Arrays.asList(ids.split(",")).stream5.能用StringBu
2020-06-23 14:38:09 436
原创 mysql存储引擎与索引介绍
1.mysql存储引擎 功能 MYISAM Memory InnoDB 存储限制 256TB RAM 64TB 支持事务 No No Yes 支持全文索引 Yes No No(5
2020-06-09 23:19:13 195
原创 SpringBoot2.2.6换2.0.9版本踩得坑
SpringBoot2.2.6版本开发完产品,前后端分离传值一切正常,无奈领导觉得保持跟其他团队版本一致,趁我们调整整个工程目录时切换了2.0.9版本,结果导致后端RS工程无法正常接收前端UI工程的post请求和url上传递的参数,但是能正常接受get请求传递的参数,看了先切换完全没问题,以为RestTemplate封装问题,也试了下Http直接调用也不行,最后换回之前版本,一切正常。原来,2.0.9版本对应的SpringCloud版本,在post请求时需要在Impl实现类上也要加上@ResponseB
2020-05-25 00:15:04 430
转载 Spring Cloud原理详解
概述毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。实际上,Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、Ribbon、Feign、Hystrix、Zuul这几个组件。一
2020-05-19 00:52:52 161
转载 Idea快捷键
转自:https://www.cnblogs.com/biehongli/p/8303993.html分享一下比较不错的Idea快捷键整理网址(出自同一作者):Eclipse vs. IDEA快捷键对比大全和十大Intellij IDEA快捷键和史上最简单的 IntelliJ IDEA 教程1:第一个Idea快捷键,Idea继承一个类,实现其父类的方法快捷键:使用方法如下所...
2020-03-06 01:15:48 254
原创 Maven配置文件解析
一、Maven配置文件配置文件加载优先级:pom.xml>user setting>global setting二、setting.xml配置意义1.localRepository2.proxy3.server4.mirrorpom.xml5.profile三、pom.xml文件配置1.配置基本信息<proj...
2020-02-25 22:13:32 985
原创 RocketMQ原理概要总结
1.RocketMQ、Kafka、RabbitMQ对比规格 RocketMQ Kafka RabbitMQ 吞吐量 >10w/s 十几万/s 几万/s 集群部署 支持 支持 支持 稳定性 可配置不丢数据,相对稳定 会丢数据 不丢数据 额外功能 死信队列,消息重试,延迟消息,事务,消息回溯 ...
2020-02-21 00:47:49 477
原创 JVM调优
一、参数含义-Xms 初始堆大小(JDK1.8 -XX:InitialHeapSize)-Xmx 最大堆内存(JDK1.8 -XX:MaxHeapSize)-Xmn 年轻代大小(JDK1.8 -XX:NewSize初始新生代大小,-XX:MaxNewSize最大新生代大小)-Xss 每个线程的堆栈大小-XX:PermSize 持久代大小(JDK1.8 -XX:Metaspace...
2020-01-29 11:47:40 188
原创 Activiti错误解决
1.不是 'NCName' 的有效值eclipse画bpmn文件时,给节点id设置为1,deploy时提示该错误。后发现是因为NCName有自己的命名规范,字符或者下划线()开头,后接xml规范中允许的任意字符、数字、符号等。此处不符合命名规范,所以报错,修改命名后,解决。2.[Validation set: 'activiti-executable-process' | Problem:...
2019-04-18 13:39:25 5590
转载 Activiti数据库表结构(表详细版)
转自:https://blog.csdn.net/hj7jay/article/details/51302829https://www.cnblogs.com/telwanggs/p/7491564.htmlActiviti数据表结构1 Activiti数据库表结构1.1 数据库表名说明 Activiti工作流总共包含23张数据表,所有的表名默认以“ACT_...
2019-04-18 10:07:19 591
原创 pip在windows系统下载和安装
下载地址:https://pypi.org/project/pip/#files1.解压进入到pip目录,可以看到setup.py2.执行python setup.py install,3.在环境变量中把python目录下的Scripts目录在path中配置下4.pip -V查看是否安装成功...
2019-04-12 16:09:04 606
原创 jprofiler远程连接服务器
折腾了一个多小时,刚帮同事搞定。Linux系统上把linux版本的profiler拷贝到某个目录下,并在catalina.sh中配置路径和端口号 Window系统下载同版本的profiler并安装,远程连接启动配置远程服务器IP,端口号和linux系统上profiler的目录位置即可。但是在使用连接过程中遇到一个问题,连接总是报出这样的异常信息,仔细观察发现连接异常会伴随着远程服务器上的t...
2019-03-23 21:46:43 2405 4
原创 InetAddress.getLocalHost() java.net.UnknownHostException 异常
今天启动rocketmq客户端报出这个异常,发现是/etc/sysconfig/network中的主机名在/etc/hosts中没对应的主机名的映射,所以会出现上述错误,解决方法:1.vi /etc/sysconfig/network修改主机名为与/etc/hosts中配置的一致,或者默认为localhost.localdomain2.vi /etc/hosts查看主机名,若一致不做改动...
2019-03-23 21:41:37 1160
转载 HashMap报错:java.util.ConcurrentModificationException
转自:https://blog.csdn.net/dyingfair/article/details/56481352HashMap是线程不安全的 ,那么为什么说它是线程不安全的呢?首先来看一下官方API有关HashMap线程不安全的描述:Note that this implementation is not synchronized. If multiple threa...
2019-03-23 15:54:09 3680
原创 mib browser打开mib文件
1.如下图,通过mib compiler工具编译.mib格式的文件,点击ok,则会将文件进行编译,编译完成后,如第二张图所示,点击save all按钮将编译后的smidb文件保存到mib browser安装目录的SMI文件下,此处为D:\MG-SOFT\MIB Browser\MIB\SMIDB2.打开mib browser工具,将文件全部加在进来,如第三张图所示。3.查找添加的节点的oi...
2019-03-19 20:59:49 11180 1
原创 很惭愧,最近好像没怎么学习
假期无目标的生活了很久,虽然一无所获,但是我竟然还觉得很开心,反省中……年终考评A+很开心节后第三天上班,给自己制定个新年计划1.英语词汇量达到5000,听懂基本交流2.把年前开发的小程序开发完3.看一本人工智能相关的书4.吉他能根据曲谱弹曲子,熟练5首歌5.搞定装修6.陪父母时间不少于30天7.为将到来的新身份做好准备...
2019-02-27 19:46:10 151
原创 JConsole远程监控配置
一、远程环境JDK1.7版本,tomcat7/bin/catalina.sh配置如下在如下部分做如下配置if [ $have_tty -eq 1 ]; thenJAVA_OPTS="-Djava.rmi.server.hostname=10.88.45.242 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.p...
2018-12-19 17:20:10 577
原创 RocketMQ在window环境下启动配置
1. 官方http://rocketmq.apache.org/下载rocketMQ,解压缩,并放置到对应的目录下2. 配置环境变量ROCKETMQ_HOME(解压后的目录),可选配path3. 进入到ROCKETMQ_HOME的bin目录下,执行mqnamesrv.cmd4. 执行start mqbroker.cmd -n 127.0.0.1:9876...
2018-12-12 22:19:09 1164
转载 linux后台运行可执行jar文件
转自:linux下利用nohup后台运行jar文件包程序:https://www.cnblogs.com/kedarui/p/6135895.htmlLinux 运行jar包命令如下: 方式一: java -jar XXX.jar特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...
2018-12-12 14:45:11 1130
原创 Could not resolve XML resource [null] with public ID [null]
同事的Tomcat7.0.56运行项目时报出这样一个错误:Could not resolve XML resource [null] with public ID [null],看了下父子项目的xml配置没什么问题,最后百度了一把,发现是tomcat7版本web.xml中对如下<!ENTITY的支持有问题。最终在tomcat的配置文件context.xml中加上xmlBlockExterna...
2018-12-06 10:11:47 2532
原创 数组移位
遇到当场写数组移位的问题,于是写出如下的算法,该算法时间复杂度为n,只需要把数组遍历len遍即可得出结果,当时没觉得该算法的优点,事后仔细想下,查阅了网上的写法,还是觉得该算法更好,只是牺牲了点空间:public static void yiwei2(int[] a, int n){ int len = a.length; int moveLen = n%len...
2018-12-03 23:01:11 1511
原创 数据库的悲观锁和乐观锁
数据库的四种隔离级别:脏读、不可重复读、可重复读、串行化,虽然四种隔离级别能够处理事务问题,但是不够灵活,于是有了悲观锁和乐观锁。悲观锁:对于外界的修改持保守态度,在整个数据处理中数据处于锁定状态。以mysql为例,select……for update和lock in share model能够实现悲观锁,这里重点介绍select……for update。1)当查询的为主键或者有索引列...
2018-12-01 23:28:54 129
清晖PMP备考宝典-有效答题套路.pdf
2020-02-08
系统架构设计师历年真题__案例分析与论文篇.rar
2019-11-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人