自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (7)
  • 收藏
  • 关注

原创 mysql查询导出binlog文件命令

mysql查询导出binlog文件命令

2022-09-28 21:03:40 485 1

转载 docker批量save

docker批量导入导出镜像

2022-09-27 23:16:50 1247

原创 impala jdbc连接异常 socket is closed by peer

异常现象: jdbc报socket is closed by peer异常原因:impala的jdbc连接只能保持连接时的底层存储快照,如果使用连接池,那么当impala底层数据存储更改后,jdbc执行sql查询时会报异常出现问题场景: 我遇到的问题场景是在spark通过hive直接写入parquet文件,用impala jdbc的方式进行INVALIDATE METADATA table,查询报链接异常,此问题是因为我使用了链接池,链接是在spark写...

2022-04-23 16:16:31 3583

原创 oracle查看表空间及增加表空间方法

1. 查看所有表空间大小select tablespace_name,(sum(bytes)/1024/1024) tablespace_size from dba_data_files group by tablespace_name;2. 未使用的表空间大小select tablespace_name,(sum(bytes)/1024/1024) tablespace_size from dba_free_space group by tablespace_name;3. 所以...

2022-02-15 13:26:51 12513

原创 spark-yarn集群模式远程断点调试踩坑记录

一、spark提交参数增加jvm参数设置方式有两种:1、命令行提交:spark-submit增加参数 driver-java-options:-Xdebug - Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005这里对上面的几个参数进行说明:-Xdebug 启用调试特性-Xrunjdwp 启用JDWP实现,包含若干子选项:transport=dt_socket JPDA front-end和back-end...

2021-12-21 21:34:28 913

原创 idea编译java卡在Parsing java解决方式之一

1、parsing的解决方式多种多样,在此记录下本人解决的方式打开idea -setting 找到compiler 把build process heap size 设置为2048 ,再次启动项目,一切正常如图:

2021-07-05 20:51:18 10208 2

原创 spark参数调优

1.num-executors 线程数:一般设置在50-100之间,必须设置,不然默认启动的executor非常少,不能充分利用集群资源,运行速度慢2.executor-memory 线程内存:参考值4g-8g,num-executor乘以executor-memory不能超过队列最大内存,申请的资源最好不要超过最大内存的1/3-1/23.executor-cores 线程CPU core数量:core越多,task线程就能快速的分配,参考值2-4,num-executor*executor-core.

2021-04-22 22:48:22 785

原创 查看kafka消费组及消费者ip命令

查看消费组./kafka-consumer-groups.sh --bootstrap-server ip:port--list//查看组中消费者状态./kafka-consuemr-groups.sh --bootstrap-server ip:port--group 消费组名称--describe

2021-03-19 15:05:02 9941 2

原创 clickhose安装

一、在线安装1、sudo yum install yum-utils2、sudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG3、sudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_644、安装: sudo yum install clickhouse-server clickhouse-client5、..

2021-02-25 22:54:36 570

原创 本地项目关联到远程git

1、在远程git上新建项目2、本地项目根目录下进行git init3、git commit -m 'frist commit'4、git remote add origin [email protected]:your name/repository name.git // 将本地仓库和你自己的远程仓库关联起来,origin是仓库的名字5、git push origin master...

2020-10-23 12:11:06 2367

原创 linux互信

1、每台机器上执行 ssh-keygen -t rsa 生成公钥和密钥2、修改SSH配置文件(vi /etc/ssh/sshd_config),找到下列行,然后去掉注释井号# RSAAuthentication yes //字面意思..允许RSA认证 PubkeyAuthentication yes //允许公钥认证 AuthorizedKeysFile .ssh/authorized_keys //公钥存放在.ssh/authorized_keys文件中3、修改完配置...

2020-07-31 22:04:05 451

转载 linux中直接修改jar包内配置文件

(1)使用jar tvf jar名称 | grep 目标文件名 查询出目标文件在jar包中的目录:jar tvf service-0.0.1-SNAPSHOT.jar |grep config.properties(2)使用jar xvf jar名称 目标文件名(copy上面查出的全路径) 将目标文件及所在jar包中的目录解压到当前路径:jar xvf service-0.0.1-SNAPSHOT.jar BOOT-INF/classes/config/config.properties(3)修改目

2020-07-07 14:15:34 1437

原创 oracle 记一次 ORA-01000: 超出打开游标的最大数问题的解决

DatabaseMetaData dsData = Connection.getMetaData(); ResultSet rs = dsData.getPrimaryKeys(null, null, tableName); /**关键在getPrimaryKeys方法上,这个方式在执行的时候因为用了closeOnCompletion方法去 关闭Statement,这个方法在等rs关闭,因此rs如果不...

2020-05-27 14:39:54 2846

原创 git日常命令

commit之后恢复命令:git reset --soft HEAD^中文名称的文档在git窗口乱码的解决方式:git config --global core.quotepath false分支合并,A合并到B,先切换到B分支,再用merge A命令git清除本地缓存:git rm -r --cached ....

2020-05-10 23:14:53 129

原创 i = ++i + i++ + i++ + i++原理

int i=0;i = ++i + i++ + i++ + i++一、从java定义的语法层面分析++i 语义为先自增再赋值,所有此时的 i 为相加后的值i++ 语义为先读取再自增,所以此时的 i 为相加前的值根据这两个语义进行操作如下:因为每一个自增操作的变量 i 都是前一个累加过的值,而最后的i++ 此时的自增的值没有后续操作去取,因此自增后的值不会参与计算,所以最...

2020-04-17 17:40:43 1682 1

原创 JDK1.8HashMap扩容原理之一(非红黑树情况)

首先分析hashMap的节点不是红黑树的情况{ for (int j = 0; j < oldCap; ++j) { Node<K,V> e; if ((e = oldTab[j]) != null) { oldTab[j] = null; ...

2020-04-16 14:38:06 444

转载 TCC分布式事务的实现原理(补偿机制)

核心思想是:针对每个操作,都要注册一个与其对应的确认和补偿(撤销)操作。分为三个阶段:Try 阶段:主要是对业务系统做检测(一致性)及资源预留(准隔离性) Confirm 阶段:主要是对业务系统做确认提交,Try阶段执行成功并开始执行 Confirm阶段时,默认Confirm阶段是不会出错的。即:只要Try成功,Confirm一定成功。(Confirm 操作满足幂等性。要求具备幂等设计,C...

2020-04-13 18:06:22 560

转载 同步、异步、阻塞和非阻塞,终于分清了

“阻塞”与"非阻塞"与"同步"与“异步"不能简单的从字面理解,提供一个从分布式系统角度的回答。1.同步与异步同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication),也就是说,调用发生后,结果能不能同调用者一起返回。所谓同步,就是在发出一个*调用*时,在没有得到结果之前,该*调用*就不返回。但是一旦调用返回,...

2020-04-08 10:51:40 239

原创 消息中间件(RabbitMQ)04

一、rabbitmq实现了AMQP协议 AMQP是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。目标是实现一种在全行业广泛使用的标准消息中间件技术,以便降低企业和系统集成的开销,并且向大众提供工业级的集成服务。主要实现有 RabbitMQ。二、AMQP包含的要素 生产...

2020-01-01 14:48:47 223

原创 centos7安装rabbitMq3.8和erlang22.x步骤

一、安装erlang环境 1、新增文件 /etc/yum.repos.d/rabbitmq_erlang.repo,在文件里面新增下面内容并保存:[rabbitmq_erlang]name=rabbitmq_erlangbaseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearchrepo_gpgcheck=1g...

2019-12-31 16:11:14 2561

原创 消息中间件(ActiveMQ)03

一、通配符式分层订阅:"." 用于作为路径上名字间的分隔符。 "*" 用于匹配路径上的任何名字。 ">" 用于递归地匹配任何以这个名字开始的destination。 订阅者可以明确地指定destination...

2019-12-31 01:41:11 102

原创 消息中间件(ActiveMQ)02

一、ActiveMQ 1、可发送的数据类型:String,Bytes,Map,Object,Stream 2、消息大小最好在1k左右 3、消息较大,建议用kafka或者其他非消息中间件方式 4、requst-response模式:用于一对一发送应答模式,生产者发送消息后,需要得到消费者的消费情况,类似于rpc,但属于 ...

2019-12-29 23:15:42 209

原创 消息中间件(MQ)01

一、消息中间件使用场景:二、常见消息中间件比较(每秒发送消息数量)三、JMS消息模型 1、点对点P2P: 多个消费者时,会轮询消费者发送 2、Topic/ 主题(发布订阅(Pub/Sub) /广播) queue不管消费者在不在线,只管发送,收到收不到不关心,发送后就移除消息 ...

2019-12-28 23:05:52 132

原创 分布式任务调度笔记

分布式调度锁的思想:触发器布置多份---》重复触发--》再用锁只放一个触发过去执行业务。分布式调度非锁思想:触发器布置多份---》同一时间只有一份有效---》执行业务。怎么做到同一时间只有一份有效的思想:在触发器里多分任务选举出一个作为领导,只让领导去执行。分布式任务工具:推荐xxl-job,官方文档;https://www.xuxueli.com/xxl-job/...

2019-12-28 14:58:57 131

转载 一致性hash算法-hash环-数据倾斜

一、前言在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。但是普通的余数hash(hash(比如用户id)%服务器机器数)算法伸缩性很差,当新增或者下线服务器机器时候,用户id与服务器的映射关系会大量失效。一致性hash则利用hash环对其进行了改进。二、一致性Ha...

2019-12-28 00:31:10 1375

原创 单点登录方案笔记

oauth2:不同的企业之间的登录方式 例如 登录csdn用qq登录单点登录:企业内部的登录方式一、同顶级域名下单点登录使用session共享的方式 1、标识办法:直接在url里加上一个标识参数 即 token(不安全) 2、携带cookie:http请求时,携带上浏览器的cookie(cokie里标识值:jsessionid=xxxx)(不安全) ...

2019-12-28 00:09:37 139

原创 分布式事务与锁

锁要达到的目的: 把有状态的资源包装成原子性(原子性:无中间状态,非黑即白)的,达到线程安全什么是分布式锁: 锁是单个进程用来协调多个线程对共享资源进行同步访问。分布式锁就是用来协调多个进程下的所有线程多共享资源的同步访问。分布式锁的解决方案redis分布式锁的基础知识:分布式事务:两阶段提交标准:两阶段提交不常使用原因...

2019-12-27 00:49:26 353

原创 java内存模型图

2019-12-26 21:54:23 524

原创 java线程的6种状态

2019-12-26 21:53:19 113

原创 缓存问题及解决方案

1、高并发第一选择:缓存 适合查询频率高的数据,缓存数据不可能一直是热点数据,因此需要缓存过去, 缓存获取分绝对过期和滑动过期 绝对过期:设置指定的时间,比如2分钟后过期 滑动过期:多长时间不活跃就回收掉2、缓存常规写法:Springcache标签:@Cacheable 查询时@CachePut 新增时@Cach...

2019-12-26 15:42:50 134

原创 mybaits返回对象在无set方式也可以赋值

mybatis当查询数据时,如果返回的是自定义对象,那么返回对象的时候回检查是否有set方法,如果有就直接用,如果没有就用反射机制fied.set设置值,如果字段是私有的,那么设置字段属性Assessible(true),如下:...

2019-12-22 18:38:39 1160

原创 SpringBoot使用atomikos解决分布式事务

一、pom加atomikos包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jta-atomikos</artifactId> ...

2019-12-08 00:35:38 327

原创 springboot容器tomcat和undertwo性能比较

1,springboot默认容器为tomcat,但tomcat性能不如springboot支持的undertwo,唯一缺点是undertwo不支持jsp2、jmater测试下,执行1万次请求,tomcat的吞吐量为352.8每秒,undertwo的吞吐量为423.9每秒...

2019-12-07 22:03:48 2210

转载 Callable、Future和FutureTask

一、Callable 与 Runnable先说一下java.lang.Runnable吧,它是一个接口,在它里面只声明了一个run()方法:public interface Runnable { public abstract void run();}由于run()方法返回值为void类型,所以在执行完任务之后无法返回任何结果。Callable位于java.util.c...

2019-10-21 11:43:06 102

原创 CountDownLatch和Cyclicbarrier概念和区别

概念:  CountDownLatch:具有计数器的功能,等待其他线程执行完毕,主线程在继续执行,用于监听某些初始化操作,并且线程进行阻塞,等初始化执行完毕后,通知主线程继续工作执行。值得注意的是CountDownLatch计数的次数一定要与构造器传入的数字一致,比如构造器传入的是3,则countDown()一定要执行3次,否则线程将一直阻塞。CountDownLatch通常用来控制线程等待,...

2019-10-21 10:52:59 243

原创 FactoryBean和BeanFactory区别

FactoryBean可以把java实例的BEAN通过FactoryBean注入到容器中BeanFactory 从spring容器中获取实例化后的bean

2019-09-03 09:35:11 106

原创 spring注册实例方式

1、通过xml配置2、通过java类配置,用@ComponentScan注解@Configuration@ComponentScan(value="com.cap2")public class Cap2Config {}3、用@bean @Bean public Person inint(){ return new Person("1","2"); }4、用...

2019-09-03 09:21:04 466

转载 Java双亲委派模型及破坏

在虚拟机的角度上,只存在两种不同的类加载器:一种是启动类加载器(Bootstrap ClassLoader),这个类加载器使用C++语言实现,是虚拟机自身的一部分;另外一种就是其它所有的类加载器,这些类加载器都由Java语言实现,独立于虚拟机外部,并且全部继承自java.lang.ClassLoader。 从Java开发人员的角度看,类加载器还可以划分得更细一些,如下:1.启动类加...

2019-08-19 15:36:01 730

转载 java自带工具HSDB查看jvm加载的字节码

今天在学习动态代理时,突然很好奇怎么查看cglib生成的代理类的字节码。 对于jdk proxy可以使用sun.misc.ProxyGenerator类生成字节码,那么cglib proxy字节码怎么查看呢?在网上查了资料,发现可以使用HSDB查看JVM运行时期的数据,从而可以查看JVM加载的class的字节码吗,又学到了一招,记录如下:1.在命令行, 执行jps, 查看我们要查看的J...

2019-07-26 10:18:49 681

原创 服务器常用命令(持续更新)

1、 netstat -na|grep ESTAB|grep 8088|wc -l 统计8088端口目前占用了多少连接数

2019-05-23 14:48:55 863

clickhouse20.9.2.20-2..zip

clickhouse离线安装包

2021-02-25

eclipse_egit_插件下载

eclipse_SR2_indigo对应版本的离线egit插件下载,直接解压到eclispe目录,重启eclipse即可

2018-09-21

设计模式之禅非扫描版

设计模式之禅飞非扫描版

2017-08-08

propedit_4.8.2_for_eclipse

propedit elcipse安装插件

2016-06-24

ihs linux 安装步骤

ihs linux下安装

2016-06-24

LovCombo.js

extjs combobox 下拉多选 方便使用

2015-02-02

velocity eclipse插件

velocity eclipse插件提供高亮显示和语法提示

2015-01-15

空空如也

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

TA关注的人

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