- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 GC优化
一、GC目的:保证系统高吞吐,低延迟 方向:降低gc频率,减少stw时间 手段:垃圾收集器选择,内存分配占比,触发gc阈值调整二、分析算法:年轻代:复制老年代:标记-整理、标记-清除(内存碎片)垃圾收集器:serial/serialOld:单线程。复制/标记-清除parallelScavenge/parallelOld(JDK8默认):多线程。复制/标记-清除parallel/CMS:多线程。复制/标记-整理G1(JDK9默认):分区。标记-整理现象 新生代gc
2020-06-17 17:23:51 633
原创 数据结构与算法
一、数据结构栈(Stack):后进先出LIFO,push:进栈,pop:出栈 队列(Queue):先进先出FIFO 链表(Link):循环遍历时效率不高,插入和删除时优势明显 散列表(Hash Table):尽量做到不经过任何比较,通过一次存取就能得到所查找的数据元素 排序二叉树:左子节点小于根节点,右子节点大于根节点 红黑树:特殊的二叉查找树,叶子节点红或黑 多路平衡查找树(B-...
2020-03-24 11:15:55 165
原创 HTTP相关知识
一、网络网络七层模型主要包括:物理层:主要定义物理设备标准,即模数转换与数模转换。数据为比特。 数据链路层:对物理层接收数据进行MAC(网卡)地址的封装与解封。数据为帧。设备是交换机。 网络层:对物理链路层接收数据进行IP地址的封装与解封。数据为数据包。设备为路由器。 传输层:定义传输数据的协议和端口号。如TCP、UDP。 会话层:通过传输层建立数据传输通道。 表示层:对接收数据...
2020-03-21 04:15:43 171
原创 数据库
一、Mysql1)、引擎InnoDB:支持行锁, 支持事务、 支持外键, count(*)会遍历整张表, 索引保存行地址,允许无索引或主键表存在MyISAM:不支持行锁, 不支持事务, 不支持外键, 保存表的总行数count(*), 无主键或非空唯一索引时则会自动生成一个6字节的主键2)、索引InnoDB底层存储结构为B+树,B+树的每个叶子节点对应inno...
2020-03-20 02:08:35 215
原创 中间件-Redis、RabbitMQ、Zookeeper
一、Redis1)、Redis高并发与快速响应原因redis纯内存,读写速度特别块 redis单线程,避免线程切换和静态消耗 redis使用IO多路复用技术,可以处理并发连接2)、IO多路技术单个线程通过跟踪记录每一个I/O流的状态来同时管理多个I/O流。主要实现技术有三种select、poll、epoll。epoll中有三个方法:当执行epoll_create时,创建了红黑...
2020-03-20 01:51:12 746
原创 Spring相关框架
一、SpringBoot自动配置@SpringBootApplication是SpringBoot启动类配置,是一个组合注解。springBoot启动时通过@EnableAutoConfiguration注解找到META-INF/spring.factories配置文件中的所有自动配置类,并对其进行加载。这些自动配置类可以通过以Properties结尾命名的类中取得在全局配置文件配置的属性,x...
2020-03-19 15:56:30 135
原创 锁和多线程
一、锁1)、乐观锁、悲观锁、可重入锁、自旋锁、独占锁、共享锁、读写锁、非公平锁、公平锁、分段锁乐观锁:在更新时判断别人有没有更新这个数据,采取写时先读出当前版本号,然后加锁操作。如CAS 悲观锁:每次读写数据的时候都会上锁。 可重入锁(递归锁):同一线程外层函数获取锁之后,内层递归函数仍然有获取该锁的代码,但不受影响。 自旋锁:若持有锁线程能在很短时间内释放锁资源,则等待竞争锁的线程...
2020-03-19 15:11:25 219
原创 Java虚拟机JVM总结
JVM总共分为四部分:类加载器、运行时数据区、执行引擎、本地库接口JVM通过类加载器将字节码文件加载到运行时数据区,执行引擎将字节码翻译成底层系统指令,该过程需要调用其它语言的本地库接口,最后由CPU进行处理。一、类加载器:类加载过程:加载 --> 检查 --> 准备 -- > 解析 --> 初始化Java类加载器分为启动类加载器(boostrap clas...
2020-03-19 01:33:22 129
原创 redis缓存穿透、雪崩、击穿及解决方案
Redis缓存穿透和缓存雪崩以及解决方案(问题结构清晰)https://www.cnblogs.com/George1994/p/10668889.htmlREDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案(解决方案更详细)https://www.cnblogs.com/xichji/p/11286443.html...
2019-11-28 17:07:00 121
原创 AOP实现原理--AspectJ静态代理 和 AOP动态代理
https://blog.csdn.net/ywlmsm1224811/article/details/93640758
2019-11-28 16:10:17 665
原创 B树即B-树、B+树、红黑树
B-树https://www.jianshu.com/p/8b653423c586B+树https://blog.csdn.net/qq_26222859/article/details/80631121红黑树https://blog.csdn.net/chudelong1/article/details/82698010
2019-11-28 15:07:06 90
原创 sql优化
MySQL慢查询日志总结https://www.cnblogs.com/splendid/p/10272951.htmlMySQL的SQL优化之定位SQL的问题https://my.oschina.net/fuckphp/blog/782002在MySQL中使用explain查询SQL的执行计划https://my.oschina.net/ruoli/blog/180739...
2019-11-28 14:15:26 99
转载 equals和==的区别 ==:
==:== 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作。1、比较的是操作符两端的操作数是否是同一个对象。2、两边的操作数必须是同一类型的(可以是父子类之间)才能编译通过。3、比较的是地址,如果是具体的阿拉伯数字的比较,值相等则为true,如:int a=10 与 long b=10L 与 d...
2019-05-30 11:45:22 468
转载 朴素贝叶斯算法 & 应用实例
朴素贝叶斯算法 & 应用实例转载请注明出处:http://www.cnblogs.com/marc01in/p/4775440.html 引和师弟师妹聊天时经常提及,若有志于从事数据挖掘、机器学习方面的工作,在大学阶段就要把基础知识都带上。 机器学习在大数据浪潮中逐渐展示她的魅力,其实《概率论》、《微积分》、《线性代数》、《运筹学》、《信息论》等几门课程算是前置课程,当然要...
2019-01-27 22:02:27 484
转载 java.lang.OutOfMemoryError: unable to create new native thread无法创建本地线程分析
此次应用出现OOM异常分析如下1. 现象:Caused by: java.lang.OutOfMemoryError:unable to create new native thread atjava.lang.Thread.start0(Native Method) atjava.lang.Thread.start(Thread.java:714) at jav...
2019-01-07 10:50:53 919
转载 JVM 参数配置及详解 -Xms -Xmx -Xmn -Xss 调优总结
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m.典型设置: java -Xmx3550m -Xms3550m -...
2019-01-07 10:23:43 242
转载 六种java内存溢出及解决办法
Java常见的几种内存溢出及解决方法【情况一】:java.lang.OutOfMemoryError:Javaheapspace:这种是java堆内存不够,一个原因是真不够(如递归的层数太多等),另一个原因是程序中有死循环;如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决:-Xms3062m-Xmx3062m【情况二】java.lang.OutOfMemoryError...
2019-01-07 10:20:03 4475
转载 Linux最大线程数限制
研发环境上的Linux项目启动报错:Caused by: java.lang.OutOfMemoryError: unable to create new native thread开始以为是内存不足导致无法创建线程,把jvm的-Xms,-Xmx的2个参数都加大一倍:-Xms2048m -Xmx2048m。把-Xss参数调小,还是启动失败。应该是系统方面的限制了,这台机器上搞了100个过tom...
2019-01-07 09:41:42 424 5
转载 内存溢出三种情况
Tomcat内存溢出的原因在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。这里根据平时遇到的情况和相关资料进行一个总结。常见的一般会有下面三种情况:1.OutOfMemoryError: Java heap space2.OutOfMemoryError: PermGen space3.OutOfMemoryError: u...
2019-01-04 18:54:26 381
转载 web查看hadoop运行状态
转载自:http://www.daniubiji.cn/archives/621我们安装完hadoop,下面我们从视觉上看看hadoop怎么玩的。我们可以在win7系统上,通过web界面,在浏览器地址栏输入地址,直接查看hadoop的运行情况; 192.168.206.21:50030这个里面,我们可以看到Map/Reduce的管理情况 192.168.2...
2018-12-16 17:11:47 2535
转载 误删Linux家目录恢复方法
在生产中可能会由于误操作而删除了某一用户的家目录,这时就需要把用户的家目录安装创建新用户时的模板文件,再恢复并且要跟之前的权限相同。1. 创建一个新的用户用于测试? 1 [root@centos6 aubin]# useradd wangcai 2. 新用户创建完成时会在/home下面自动创建同名的文件夹? 1 2 ...
2018-12-16 17:03:23 1148
转载 Linux 多行注释与多行删除
1.多行注释: 1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式; 2. 在行首使用上下键选择需要注释的多行; 3. 按下键盘(大写)“I”键,进入插入模式; 4. 然后输入注释符(“//”、“#”等); 5. 最后按下“Esc”键。注:在按下esc键后,会稍等一会才会出现注释,不要着急~~时间很短的 2.删除多行注释: ...
2018-12-16 14:30:49 4055
原创 centos6.5 git clone 报错问题
服务器CentOS6.5,安装git并使用1.卸载CentOS6.5自带的git版本,以便安装更高版本的git查看版本号# git --versiongit version 2.1.2卸载:# yum remove git2.下载git2.1.2版本并解压:# wget https://www.kernel.org/pub/software/scm/git/git-...
2018-12-15 20:15:13 395
转载 git部署
来自于:https://blog.csdn.net/qq_33285730/article/details/64125758 初始化 git init 会有工作区目录 git --bare init 只有裸仓库,没有实际代码,只记录提交了那些文件 CentOS7.0 git 部署 若无安装git yum install git 进入需要变成仓库目录...
2018-12-15 20:02:28 191
转载 src变成包名的一部分
初学Java网站开发,还是个菜鸟。用SVN和队友做项目,经常碰到从SVN上下载的项目,导入代码时eclipse的src目录变为包名,总是把src当包名附在每个包最前面,一直报错,改了吧,没法使用SVN同步,不改没法做,很是纠结。 后来,上网搜索了一下,得到很多答案,但是没有一个是对的,或者说对自己情况适用的。最后跟自己师兄请教才解决。在这里把这些情况也都总结一下。 问题描述为...
2018-10-29 14:37:15 470
原创 weblogic 部署报错
解决办法: 把项目中引用的jar文件重新加一遍就行了,基本原因就是以前的jar文件不存在了,但是项目信息中还有,即项目的.classpath文件中还有不存在的jar文件引用。可以右键点项目名称,选择Properties,选择Java Build Path,选择Libraries,把所有项目中的jar都remove,然后再点"add jars",把项目中的jar文件都加进来,再次...
2018-08-06 09:59:49 415
原创 weblogic 启动问题汇总
<WebLogicServer> <BEA-000386> :1.该问题是认证失败,用户名或密码错误。重新设置下weblogic控制台用户密码即可。<Error> <HTTP> <BEA-101020> :1.移除域下程序2.删除域下临时文件:user_projects/domains/base_domain/serve...
2018-08-03 15:49:10 895
转载 IE11 F12工具报错 An error has occurredJSPlugin.3005
系统环境win7+IE11 报错描述:Exception in window.onload: Error: An error has ocurredJSPlugin.3005Stack Trace:Error: An error has ocurredJSPlugin.3005 at getString (res://C:/Program Files/Internet Ex...
2018-07-23 16:57:03 1027
原创 MyEclipe 无法部署
删除该工作空间\.metadata\.plugins\org.eclipse.core.runtime\.settings目录下的com.genuitec.eclipse.ast.deploy.core.prefs 文件或带有deploy的.prefs文件重启即可。
2018-07-20 13:17:30 103
转载 lex zh_CN 报错
转载自:http://saboo.iteye.com/blog/1306214Flex 编译语言错误 : 'e:\Program Files\Flex Builder 3 Plug-in\sdks\3.2.0\frameworks\locale\zh_CN'出现这个错误:由于项目-->(右键)Properties-->Flex Compiler : Additional compile...
2018-07-11 10:36:05 175
转载 MyEclipse10 安装SVN插件
转载自:https://www.cnblogs.com/xdp-gacl/p/3497016.html一、下载SVN插件subclipse下载地址:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240在打开的网站中找到subclipse的最新版本,如下图所示:下载完成之后,得到的是一个压缩包文件,如下图所示:二...
2018-07-11 08:50:10 1450
转载 大数据学习知识框架
转载自:https://blog.csdn.net/qq_38314823/article/details/80628981- 学习大数据需要的基础1、java SE、EE(SSM) 90%的大数据框架都是Java写的2、MySQL SQL on Hadoop3、Linux 大数据的框架安装在Linux操作系统- 需要学什么大数据离线分析 一般处理T+1数据(...
2018-07-04 15:49:58 1253
转载 mybatis 动态元素
动态SQL是MyBatis最强大的特性之一。用于实现动态SQL的主要元素如下: 1、where、if 2、choose、when、otherwise 3、set、trim 4、foreach1、where、if<select id="getEmpByIf" resultType="Emp" parameterType="Emp"> select * from emp &...
2018-07-03 16:29:47 253
Kettle培训手册
2017-10-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人