- 博客(27)
- 收藏
- 关注
原创 SpringCloud问题排查
问题1报错,应用无法启动org.springframework.core.io.ClassPathResource.getInputStream()抛出异常:FileNotFoundException:org/springframework/boot/actuate/autoconfigure/HealthIndicatorAutoConfiguration.class cannot be o...
2019-11-18 14:59:12
990
原创 HTTP2.0之我见
概述在讨论HTTP2.X 之前,先要搞清楚HTTP2.0的目的HTTP/2 协议的主要目的是提高网页性能。以及 HTTP1.0, HTTP1.1 ,SPDY,HTTPS之间的关系 参考:https://cloud.tencent.com/developer/article/1082516HTTP1.0超文本传输协议 (HyperText Transfer Protocol) 伴随着计算...
2019-09-03 17:09:15
475
转载 TiKV 源码解析系列 - Lease Read
本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。本文是本系列文章的第五章节。Raft log readTiKV 是一个要保证线性一致性的分布式 KV 系统,所谓线性一致性,一个简单的例子就是在 t1 的时间我们写入了一个值,那么在 t1...
2019-08-12 15:55:34
512
原创 zk的EventThread毒药
zk-client EventThread 通过eventOfDeath 停止class EventThread extends ZooKeeperThread { private final LinkedBlockingQueue<Object> waitingEvents = new LinkedBlockingQueue<Obje...
2019-07-17 16:04:49
1015
原创 zkClient无法close的问题
某些特殊的情况下发现应用无法被kill,原因是zkClient无法被close()"Thread-13" #70 prio=5 os_prio=31 tid=0x00007feac445f800 nid=0x8103 in Object.wait() [0x0000700007504000] java.lang.Thread.State: WAITING (on object monito...
2019-07-17 11:09:11
856
原创 关于HTTP协议的一些疑惑
关于HTTP协议的一些疑惑HTTP协议能实现服务器端主动push吗? http的keep-alive有什么作用? webSocket和http2之间的关系。TCP已经实现了keep-alive,为什么应用层还是要实现自己的心跳包...
2019-07-15 23:02:59
92
原创 Spring-cloud 导致应用收到多次ApplicationPreparedEvent
最近排查发现DubboComponent被重复注册,怀疑ApplicationPreparedEvent收到了多次public final class DubboConfigApplicationListener implements ApplicationListener<ApplicationPreparedEvent>, Ordered { @Override ...
2019-07-15 13:12:44
1555
原创 分布式事务
关于分布式事务,工程领域主要讨论的是强一致性和最终一致性的解决方案。典型方案包括:两阶段提交(2PC, Two-phase Commit)方案eBay 事件队列方案TCC 补偿模式缓存数据最终一致性一、一致性理论分布式事务的目的是保障分库数据一致性,而跨库事务会遇到各种不可控制的问题,如个别节点永久性宕机,像单机事务一样的ACID是无法奢望的。另外,业界著名的CAP理论也告诉我们,对分...
2019-07-15 13:12:14
65
转载 常用的分布式事务解决方案
作者:网易云链接:https://www.zhihu.com/question/64921387/answer/225784480来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。关于分布式事务,工程领域主要讨论的是强一致性和最终一致性的解决方案。典型方案包括:两阶段提交(2PC, Two-phase Commit)方案 eBay 事件队列方案 T...
2019-06-05 11:37:03
100
原创 test
public Runnable produce() { synchronized (this){ while (true){ Runnable task = processSelected(); //处理Selector if (task != null) return task; ...
2019-06-03 19:43:33
51
原创 Lambda 例子
package test;import java.util.List;import com.google.common.collect.Lists;public class LambdaTest { public static void execute(Runnable task) { task.run(); } public void sayHello() { Sy...
2019-06-03 16:11:14
84
转载 Java线程泄露的分析与处理
1. 生产环境的异常现象及初步分析最近发现系统程序内存消耗越来越大,开始并没特别注意,就简单调了一下jvm参数。但直到前些天内存爆满,持续Full GC,这肯定出现了内存泄露。原以为哪里出现了比较低级的错误,所以很直接想到先去看看程序是在跑哪段代码。jstack -l <pid>以后,居然有上千个线程,而且都是属于RUNNING并WAIT的状态。I/Odispatche...
2019-05-22 11:32:57
1582
原创 class-path顺序导致的问题
最近遇到两个关于class-path顺序导致的问题问题1. application.properties重复的问题业务应用会误把application.properties打入二方包中,这样在class-path会同时出现好几个application.properties文件,Spring都是通过ClassLoader.getResource(“application.properties”)...
2019-04-30 17:36:58
415
原创 代码
spring 从cg类获取原始类ClassUtilspublic static Class<?> getUserClass(Class<?> clazz) { if (clazz != null && clazz.getName().contains(CGLIB_CLASS_SEPARATOR)) { Class<?> superc...
2019-04-26 17:26:41
63
原创 DubboHealthIndicatorAutoConfiguration 引起的一个问题
问题Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dubboHealthIndicatorAutoConfiguration': Injection of resource dependencies failed; nested exceptio...
2019-04-26 15:56:00
733
原创 一个spring-cloud引入rebind的异常
异常信息2019-04-24 21:59:02,757 INFO [main] [] o.s.j.e.a.AnnotationMBeanExporter - Located managed bean 'refreshEndpoint': registering with JMX server as MBean [org.springframework.cloud.endpoint:name=r...
2019-04-25 11:00:08
879
1
原创 python脚本
urllib2import urllib2from urllib import quoteparams = "loan-leap%sleap-h5%stest%s8888888"%(chr(2),chr(2),chr(2));url = "http://172.16.51.251:8080/jasmine/probeConfig?probe_modify_request=%s"%(quo...
2019-03-07 17:42:48
77
原创 玩转sublime
安装package controlhttps://packagecontrol.io/installation#Manual解决package仓库被墙的问题打开Preferences > Package Settings > Package Control > Settings - User添加{ "bootstrapped": true, "channels"...
2019-03-06 18:48:36
176
原创 curator必知必会
基本用法 CuratorFramework client = CuratorFrameworkFactory.builder().connectString("172.16.52.191:2181,172.16.52.192:2181") .retryPolicy(new RetryNTimes(3, (int) TimeUnit.MILLISECONDS.toMillis(200L))...
2019-03-06 16:44:08
476
原创 git 必知必会
1. 新建本地分支git co -b branche_name2. 切换远程分支git co -t remotes/origin/feature/branche_name切记带上参数t,否则会报错:You are in ‘detached HEAD’ state.3. 提交git ci -a推送:git push --set-upstream origin v1.2.9-sn...
2019-02-26 17:21:05
150
原创 Dubbo源码分析--Dubbo扩展机制 ExtensionLoader 分析
ExtensionLoader是dubbo SPI的核心,暴露的两个核心方法如下: Protocol refprotocol = ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension(); Protocol refprotocol = ExtensionLoader.getExtensionLoader(...
2019-02-20 16:32:58
212
原创 Dubbo源码分析--Dubbo-Client线程池机制
DUbbo-Client默认的线程池是CachedThreadPool/*** 此线程池可伸缩,线程空闲一分钟后回收,新请求重新创建线程,来源于:<code>Executors.newCachedThreadPool()</code>* * @see java.util.concurrent.Executors#newCachedThreadPool()* @au...
2019-02-20 16:32:30
1703
原创 mybatis 配置多数据源
mybatis支持只定义接口不用写实现类的方式,步骤如下定义Mapper接口package com.alibabab.aaa.dao;public interface SuperConfigMapper { int deleteByPrimaryKey(Integer configId);}定义mapping.xml文件定义多数据源 &lt;bean id="intern...
2019-01-16 15:01:40
107
原创 远程debug maven注意点
1. 注意maven插件的命名规范一般来说,我们会将自己的插件命名为 -maven-plugin,而不推荐使用 maven--plugin,因为后者是 Maven 团队维护官方插件的保留命名方式,使用这个命名方式会侵犯 Apache Maven 商标。2. maven debugmaven 原生提供了mvnDebug 命令,通过远程debug就可以了...
2019-01-14 11:36:05
250
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人