java
文章平均质量分 54
seapeak007
这个作者很懒,什么都没留下…
展开
-
optimize table释放表空间
注意下图标红部分。原创 2024-07-19 17:15:51 · 231 阅读 · 0 评论 -
safepoint jvm GC,cpu获取不到导致GC时间长
程序Thread全部进入到safepoint,然后开始GC,如果获取不到CPU或者边界很大的循环导致thread进入safepoint的时间长,会导致GC时间过长。原创 2023-01-11 18:18:24 · 160 阅读 · 0 评论 -
jar包多重依赖版本不兼容的冲突,shade总结
现在项目canal模块依赖ali的jar包导致jar包重启,程序启动异常,依赖关系如下:版本冲突,通过类加载的方式隔离,这个canal依赖关联的类太多,不合适。通过shade的方式进行修改类的package,打成一个jar的方式。 1、shade的使用尽量采用官方的文档2、canal-client的jar本身就是shade出来的,看pom可以发现3、canal-client中包的依赖比较复杂,不是适合再shade,shade方式适合干净的jar进行单独的类进行shade4、shade需要指定jdk版本,否则原创 2022-06-16 20:36:40 · 678 阅读 · 0 评论 -
jar包冲突,jar包隔离(转)
转自:https://blog.csdn.net/qq_37527921/article/details/102839369最近项目需要使用jar包隔离技术,所以了解了几种方案,本文针对几种不同方案进行了介绍,不同问题有各自合适的方案,正在解决类似问题的同学可以通过本文快速了解jar包隔离的几种技术。通常自己写代码是,大家都忽略这些问题了,但是当项目越大,需要对接的业务越多时,这些问题就日益严重了, 这时候,就需要对jar包进行统一管理了,可以统一组件jar包版本,也可以容器化隔离方案。今天就给大家介绍一下转载 2022-06-16 14:22:24 · 1562 阅读 · 0 评论 -
【无标题】CanalAdmin搭建Canal Server集群(转)
使用来搭建一个canal集群。1234 2、配置canalAdmin 1 5、登录canal admin 多个canal server同一个 canal 配置。(此处主要配置的是 canal.properties)zk 的地址需要指定canal.zkServers = 127.0.0.1:2181,127.0.0.1:3181,127.0.0.1:4181canal.serverMode = tcpcanal.instance.global.spring.xml = classpath:sprin转载 2022-06-15 19:26:47 · 352 阅读 · 0 评论 -
Kafka数据同步到kafka的几种方案(转)
转自:https://blog.csdn.net/tmaczt/article/details/115274144背景:针对老系统重构涉及业务系统众多,全链路部署测试环境耗时较长,于是有了kafka中间层集群之间数据同步的想法。方案:1、Kafka自带的镜像工具kafka-mirror-maker.shMirrorMaker是Kafka附带的一个用于在Kafka集群之间制作镜像数据的工具。该工具从源集群中消费并生产到目标群集。step1:编写consumer-test.prope..转载 2022-03-11 11:55:40 · 5186 阅读 · 0 评论 -
Springboot应用中设置Cookie的SameSite属性,跨域支持
转自:Springboot应用中设置Cookie的SameSite属性 - SpringBoot中文社区 - 博客园Cookie除了key和value以外有几个属性。httpOnly是否允许js读取cookie secure是否仅仅在https的链接下,才提交cookie domaincookie提交的域 pathcookie提交的path maxAgecookie存活时间 sameSite同站策略,枚举值:StrictLaxNone其他的都很熟悉了,最后一个是 Chro...转载 2022-02-07 16:46:56 · 10390 阅读 · 3 评论 -
Linux 监控工具 tsar(转)
转自:https://blog.csdn.net/u010945668/article/details/113904993简介 tsar是一个淘宝开发的服务器信息采集工具。支持采集的信息如下:系统信息:如cpu、io、mem、tcp等应用数据:squid、haproxy、nginx等其他:自定义模块具体介绍请参看以下文档:tsar 官网tsar工具使用Linux系统性能监控工具介绍之-tsartsar 安装安装准备tsar 需要编译安装,安装前我们需要确保有编译环境转载 2021-08-20 21:34:13 · 1198 阅读 · 0 评论 -
开源组件(整理)
开发类:运维类:原创 2021-07-20 16:15:29 · 3877 阅读 · 0 评论 -
再谈应用环境下的TIME_WAIT和CLOSE_WAIT(转)
原文链接:https://blog.csdn.net/shootyou/article/details/6622226昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.csdn.net/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。在服务器的日常维护过程中,会经常用到下面的命令:netstat -n | awk '/^tcp/ {转载 2021-05-19 20:58:59 · 103 阅读 · 0 评论 -
HiKariCP和Druid对比(转)
转自:https://blog.csdn.net/qq_17085463/article/details/90486515HiKariCP和Druid我们所熟知的C3P0,DBCP,Druid, HiKariCP为我们所常用的数据库连接池,其中C3P0已经很久没有更新了。DBCP更新速度很慢,基本处于不活跃状态,而Druid和HikariCP处于活跃状态的更新中,这就是我们说的二代产品了。HiKariCP字节码精简 :优化代码,直到编译后的字节码最少,这样,CPU缓存可以加载..转载 2021-05-07 16:30:07 · 907 阅读 · 0 评论 -
LEFT JOIN关联表中ON,WHERE后面跟条件的区别(转)
转自:https://mp.weixin.qq.com/s/D-7ZX-0mgEAH6KEeMKbLDQ之前有码友去京东面试,被问到 LEFT JOIN 关联表中用 ON 还是 WHERE 跟条件有什么区别,很快就答出来了,可是追问什么原因造成这一情况的,一时没回答上来。下面说说,想通过 A left B join on and 后面的条件来使查出的两条记录变成一条,奈何发现还是有两条。后来发现 join on and 不会过滤结果记录条数,只会根据and后的条件是否显示 B表的记录,A表.转载 2021-05-07 15:43:14 · 558 阅读 · 0 评论 -
给定一个二叉树,返回每层上节点的链表,设计算法
思路:1、链表存储每层节点的数据,这样保证指针后移,进行存储该层的节点。2、遍历上层的节点,通过队列的pull跟add,遍历该层的节点后pull出,同时添加上下个循环要遍历的节点(下层的父节点)。具体代码如下:import java.util.*;public class ListTreeNodeDepth { /** * 时间复杂度 o(n) 空间复杂度o(n) * @param args */ public static void原创 2021-04-28 21:29:31 · 196 阅读 · 0 评论 -
Redis分布式锁的实现原理--Redisson(转)
转自:https://mp.weixin.qq.com/s?__biz=MzU0OTk3ODQ3Ng==&mid=2247483893&idx=1&sn=32e7051116ab60e41f72e6c6e29876d9&chksm=fba6e9f6ccd160e0c9fa2ce4ea1051891482a95b1483a63d89d71b15b33afcdc1f2bec17c03c&scene=21#wechat_redirect一、写在前面现在面..转载 2021-03-11 16:54:15 · 228 阅读 · 0 评论 -
protobuf数据结构化和数据序列化
google出的protobuf提供了数据结构化和数据序列化,相比于XML,JSON,protobuf更小,利用二进制进行传输,也实现不同类型的转化XML、JSON、Protobuf 都具有数据结构化和数据序列化的能力 XML、JSON 更注重 数据结构化,关注人类可读性和语义表达能力。Protobuf 更注重 数据序列化,关注效率、空间、速度,人类可读性差,语义表达能力不足 Protobuf 的应用场景更为明确,XML、JSON 的应用场景更为丰富详细介绍可以参考https://www.jian原创 2021-01-06 20:15:07 · 593 阅读 · 0 评论 -
spring cloud feign(转)
转自:https://blog.csdn.net/forezp/article/details/73480304转载请标明出处:https://blog.csdn.net/forezp/article/details/73480304本文出自方志朋的博客出自方志朋的博客什么是FeignFeign是受到Retrofit,JAXRS-2.0和WebSocket的影响,它是一个jav的到http客户端绑定的开源项目。 Feign的主要目标是将Java Http 客户端变得简单。Feign的源转载 2020-12-25 17:28:46 · 122 阅读 · 0 评论 -
spring cloud zull
zull架构图zull主要做限流(RateLimit)、路由、拦截处理源码先从@EnableZuulProxy标签开始链接进去查看@EnableCircuitBreaker@EnableDiscoveryClient@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Import({ZuulProxyConfiguration.class})public @interface EnableZuulProxy原创 2020-12-23 20:25:29 · 173 阅读 · 0 评论 -
Spring Cloud Hystrix源码分析(转)
转自:https://blog.csdn.net/chayangdz/article/details/82561158?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.cont转载 2020-12-17 20:05:35 · 122 阅读 · 0 评论 -
一次JVM_OLD区占用过高、频繁Full GC的解决过程【转】
转自:http://www.liuzk.com/294.html最近,公司网站频繁报警,JVM_OLD占用过高,线上访问超时严重,针对这个问题着实头疼了一把,不过最终还是解决了,下面说下解决的过程。1,首先 登到线上机器上去,top命令,查看当前机器的负载,查看当前哪个进程在消耗资源。Shell 1 top 找到CPU或者内存占用过高的那个进程。发现有一个进程,CPU居高不下,保留进程id2,top命令,继续跟踪该进程里的所有线程,找到占用CPU过转载 2020-12-01 19:40:07 · 4586 阅读 · 0 评论 -
MySQL索引-B+树【转】
转自:http://www.liuzk.com/410.html索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 4 这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。索引在 MySQL 数据库中分三类:B+ 树索引 Hash 索引 全文索引我们今天要介绍的是工作开发中最常接触到的 InnoDB 存储引擎中的 B+ 树索引。要介绍转载 2020-12-01 19:34:31 · 91 阅读 · 0 评论 -
eureka分析
@EnableEurekaClient@EnableDiscoveryClient -->EnableDiscoveryClientImportSelectorEnableDiscoveryClientImportSelector继承了SpringFactoryImportSelectorSpringFactoryImportSelector中selectImports中有下面一段话SpringFactoriesLoader进行META-INF/spring.factories中的c.原创 2020-07-16 20:27:56 · 301 阅读 · 0 评论 -
Spring-Retry应用集成重试机制
详细可参考:https://blog.csdn.net/songhaifengshuaige/article/details/79441326原创 2020-07-16 20:14:07 · 222 阅读 · 0 评论 -
Java魔法师Unsafe
Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。Unsafe的单例实现:...转载 2020-06-10 20:58:55 · 195 阅读 · 0 评论 -
CAS了解以及Java中CAS应用
CAS是Java并发包中保证并发的核心思想,其原理调用处理器的cmpxchg指令CAS是具体理解就是比较转化,如果内存中数据值一致,则修改为新值。Java中java.util.concurrent.atomic并发包中的数据进行处理就是利用的CAS原理,以AtomicInteger为例,类中getAndSet直接调用unsafe.getAndSetInt,unsafe中循环执行native方法执行内存操作,不成功取最新的值再尝试更新,直到成功。追踪JNI对应的unsafe.cpp后,发现Unsafe_C原创 2020-06-09 20:54:50 · 424 阅读 · 0 评论 -
Mac安装Tesseract,使用Tess4j实现OCR识别
Tesseract是一个开源的OCR引擎,支持多国语言,其官方地址:https://github.com/tesseract-ocr/tesseract1.MAC下安装Tesseract命令安装brew install --with-training-tools tesseract,现在提示Error: invalid option: --with-training-tools,没有--with-training-tools参数,想把训练工具training-tools一起安装了,最后采用编译的方.原创 2020-05-22 17:06:38 · 1488 阅读 · 0 评论 -
java调用webservice的2种方式代码
webservice有提供wsdl跟asmx两种方式,两种方式的调用方法不同1、wsdl的方式添加依赖:<dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <v...原创 2020-03-13 15:58:08 · 2145 阅读 · 0 评论 -
Mysql之group by GROUP_CONCAT的保证顺序
groub by 是按照分组,默认不排序,groub后会选择默认排序的第一条进行返回。如果分组前排序好的数据,取排序好的第一条数据排序,则需要加上limit ,进行强制排序。 SELECT m.* from ( SELECT if ( a.status = 'X002', a.fleet_na...原创 2019-11-27 19:30:37 · 5259 阅读 · 0 评论 -
12306并发解决思路(转)
转自https://github.com/GuoZhaoran/spikeSystem#12306%E6%8A%A2%E7%A5%A8%E6%9E%81%E9%99%90%E5%B9%B6%E5%8F%91%E5%B8%A6%E6%9D%A5%E7%9A%84%E6%80%9D%E8%80%83架构图:总结首先是3重负载进行分流其次采用预扣库存,异步产生订单的方式,避开对DB的...转载 2019-10-30 20:29:35 · 1507 阅读 · 0 评论 -
python搭建简易web服务器,局域网
python自带一个WEB服务器SimpleHTTPServer,利用python搭建一个http服务器python2命令:python-mSimpleHTTPServer8000&python3命令:python3 -m http.server 8000 &这样就可以在浏览器中通过http:***:8000进行访问,通过浏览器的下载就能下载相关文件了应用...原创 2019-10-28 19:39:57 · 1844 阅读 · 0 评论 -
ArrayList和Vector的扩容机制
ArrayList中ensureCapacity扩容,trimToSize容量调整到适中,Vector的扩容,是可以指定扩容因子,同时Vector扩容策略是:原来容量的2倍与原来容量+扩容因子,两者中取容量大的,进行扩容ArrayList和Vector都是继承了相同的父类和实现了相同的接口。如下 Java代码 public class Vector转载 2016-11-28 17:31:54 · 4455 阅读 · 2 评论 -
java中Thread类方法介绍
方法摘要 static int activeCount() 返回当前线程的线程组中活动线程的数目。 void checkAccess() 判定当前运行的线程是否有权修改该线程。 int countStackFrames() 已过时。 该调用的定义依赖于 suspend(),但它遭到了反对。此外,该调用的结果从来原创 2016-11-29 17:13:05 · 7202 阅读 · 0 评论 -
JAVA 大整数加法的实现
/** * 整数加法 * * @param lv * 左值 * @param rv * 右值 * @param result * 相加的结果 * @数值存放说明 数值的每一位作为栈的一项存放在栈中,从栈底到栈顶依次是数值的高位到低位 * @算法描述 输入的加数倒序存放在栈中(即栈顶是数的最低转载 2016-11-17 11:12:26 · 3555 阅读 · 0 评论 -
深入剖析ConcurrentHashMap(1)
深入剖析ConcurrentHashMap(1)原文是09年时写的,在公司的邮件列表发过,同事一粟 和清英 创建的并发编程网 对这方面概念和实战有更好的文章,贴出来仅供参考。pdf格式在:http://www.slideshare.net/hongjiang/concurrent-hashmap 可以获取ConcurrentHashMap是Java5中新增加的一个线程安全的Ma转载 2016-11-30 16:08:28 · 314 阅读 · 0 评论 -
深入剖析ConcurrentHashMap(2)
深入剖析ConcurrentHashMap(2)经过之前的铺垫,现在可以进入正题了。我们关注的操作有:get,put,remove 这3个操作。对于哈希表,Java中采用链表的方式来解决hash冲突的。一个HashMap的数据结构看起来类似下图:实现了同步的HashTable也是这样的结构,它的同步使用锁来保证的,并且所有同步操作使用的是同一个锁对象。这样若转载 2016-11-30 16:09:37 · 520 阅读 · 0 评论 -
ConcurrentHashMap详解以及get方法保持同步的解释
ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable。对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多个锁代替HashTable中的单个锁,也就是锁分离技术(Lock Stripping)。实际上,ConcurrentHashMap对提高并发方面的优化,还有一些其它的技巧在里面(比如你是否知道在get转载 2016-11-30 16:12:15 · 21929 阅读 · 0 评论 -
Java中的Copy-On-Write容器
聊聊并发-Java中的Copy-On-Write容器Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyO转载 2016-11-30 16:30:08 · 374 阅读 · 0 评论 -
转:java二维码工具类,中间带LOGO的,很强大
[java] view plain copy package com.util.cccm; import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.a转载 2016-11-15 11:05:01 · 1145 阅读 · 0 评论 -
java基础多线程参考论坛地址记录
主要是多线程并发,以及红框中的java基础知识参考地址:http://blog.csdn.net/escaflone/article/category/1584689原创 2016-11-21 10:35:38 · 256 阅读 · 0 评论 -
20个开发人员非常有用的Java功能代码
1. 把Strings转换成int和把int转换成StringString a = String.valueOf(2); //integer to numeric string int i = Integer.parseInt(a); //numeric string to an int String a = String.valueOf(2); //in转载 2016-12-05 14:36:53 · 2135 阅读 · 0 评论 -
FTP读取文件及防止防火墙自动挂起设置
/** 2 * ftp取天气网信息,参数为ftp地址、账号、密码 3 * @param ip 4 * @param port 5 * @param user 6 * @param pswd 7 * @param path 文件路径 8 * @return 9 */10 public List原创 2016-12-05 14:41:57 · 1577 阅读 · 0 评论