- 博客(12)
- 收藏
- 关注
转载 Kettle使用SSH通道连接mysql(windows)
Kettle使用SSH通道连接mysqlPavetta // 2019年10月31日 // 工作相关Kettle无法直接连接使用SSH通道的MySQL,需要借助工具PuTTY。下载地址为:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html。一、打开PuTTY,点击SSH下Tunnels,在右边Source port输入5000(端口号,自己取),Destination输入12...
2021-04-14 16:20:14 1759 1
转载 mysql索引下推
索引下推(index condition pushdown )简称ICP,在Mysql5.6的版本上推出,用于优化查询。 在不使用ICP的情况下,在使用非主键索引(又叫普通索引或者二级索引)进行查询时,存储引擎通过索引检索到数据,然后返回给MySQL服务器,服务器然后判断数据是否符合条件 。 在使用ICP的情况下,如果存在某些被索引的列的判断条件时,MySQL服务器将这一部分判断条件传递给存储引擎,然后由存储引擎通过判断索引是否符合MySQL服务器传递的条件,只有当索引符合条件时才会..
2021-04-06 14:22:26 197
原创 Java常量池详解
Class常量池与运行时常量池Class常量池可以理解为是Class文件中的资源仓库。Class文件中除了包含类的版本,字段,方法,接口等描述信息外,还有一项信息就是常量池,用于存放编译期间生成的各种字面量(Literal)和符号引用(Symbolic References)。class文件实际是一个16进制的字节码文件,我们可以通过javap命令来生成可读性更好的JVM字节码指令文件:javap -v Math.class红框内标出来的就是Class常量池信息,Class常量池中主要存
2021-02-25 17:19:34 412 2
原创 四.JVM垃圾收集算法及常见的垃圾收集器<JVM学习>
首先,我们还是把之前的堆内存的图copy过来我们知道,堆内存被分为年轻代和老年代,默认比例是1/3:2/3,年轻代又分eden区和survivor区,默认比例为8:1:1(之前的博文有详细的介绍,不清楚的可以翻看之前的博文)。首先我们先来思考一个问题,为什么JVM要把堆内存设计成分代呢?其实从能用性的角度上来看,不分代也能满足我们的要求,但是这边就会出现一个很严重的问题,如果堆内存不分代的话,那么我们所有的对象都被放在了同一块内存空间中,这样做gc回收垃圾的时候,我们就需要对堆所有的内存空间
2021-02-18 17:43:54 309 3
原创 三.JVM对象创建和内存分配机制详解<JVM学习>
首先先贴上一张对象创建的主要流程图:1.类加载检查:当虚拟机遇到一条new指令的时候(new一个对象,对象clone,对象序列化等),首先会去插件这个指令的参数能否在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载,解析和初始化过。如果没有,那必须先执行相应的类加载过程。2.加载类:具体看JVM学习系列第一篇博客,里面有详细介绍3.分配内存:通过类加载检查后,接下来需要为新生对象分配内存空间。对象所需的内存大小在类加载完成便可完全确定,为对象分配内存空间就相当于把一块
2021-01-05 16:07:48 213
原创 一.JVM类加载机制详解<JVM学习>
首先,先贴一张jvm的内存模型图。(自己画的有点丑,希望不要介意)类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。(但是类信息都是放在方法区的,放在堆的Class对象只不过是提供了一个能够操作的入口)。类加载器并不需要
2020-12-15 09:44:59 475 5
原创 DDD领域驱动设计初步认识
2004年Eric Evans 发表《领域驱动设计——软件核心复杂性应对之道》(Domain-Driven Design –Tackling Complexity in the Heart of Software),简称Evans DDD,领域驱动设计思想进入软件开发者的视野。领域驱动设计分为两个阶段: 1、以一种领域专家、设计人员、开发人员都能理解的通用语言作为相互交流的工具,在交流的过程中发现领域概念,然后将这些概念设计成一个领域模型; 2、由领域模型驱动软件设计,用代码来实现该...
2020-10-29 23:38:18 216
原创 mysql索引底层结构分析
什么是索引,索引说白了就是一种提高查询效率的数据结构,mysql底层是用B+Tree来实现的分析B+Tree之前,我们先来看下其他的几种数据结构之间的区别以及mysql为什么底层是选择用B+Tree来实现索引的这边网上看到一篇介绍数据结构的,可以参考https://blog.csdn.net/qq_34436819/article/details/105731324常见的几种索引数据结构1.二叉树2.红黑树3.hash表4.B-Tree这边介绍一个模拟数据结构..
2020-08-07 19:49:39 239 2
原创 mysql索引联合查询底层Nested-Loop Join和Block-Nested-Loop Join算法
首先介绍这两种算法之前,先介绍一个mysql关联表优化的原则,即小表驱动大表(这个后续会解释)1.Nested-Loop Join(NLJ): 我现在先创建两张表,emp_a里面有5条数据,emp_b里面有40条数据(数据生成太麻烦了,有兴趣的可以生成多一点的数据去试验一下),name字段设索引,age字段不设索引对这两张表做关联查询查看执行计划 我们会发现mysql会先扫描emp_b表,并且是全表扫描。来稍微解释一下,当你两表关联查询的时候,关联字段是索...
2020-08-07 17:40:06 1164 2
转载 升级springboot 2.x 踩过的坑——跨域导致session问题
目前IT界主流前后端分离,但是在分离过程中一定会存在跨域的问题。什么是跨域? 是指浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域。 做过web后台的童鞋都知道,跨域这种问题是比较常见的,最近我们公司需要将springboot 1.x升级到2.x,在升级之后遇到了挺多的问题,例如某些类过时了或者某些类找不到等,还有就是今天要说得session不一致...
2020-05-07 09:14:08 435
原创 centos7.5搭建solr记录
1.首先从官网下载solr,链接https://lucene.apache.org/solr/downloads.htmlscp上传到linux服务器指定文件夹解压到当前文件夹:tar zxvf solr-8.4.1.tgz -C ./2.solr需要手动导入一些jar包(solr-8.4.1/为安装路径)solr-8.4.1/dist目录下有两个solr-dataimport...
2020-03-16 11:07:02 372 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人