自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (3)
  • 收藏
  • 关注

原创 druid 入门相关

druid文章目录druid@[toc]入门参考:对比proxool连接池:入门参考:官方文档:https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE参考其中配置。 ConnectionPool |---------------------------|

2020-09-28 16:28:49 115

原创 排查获取服务版本请求http接口耗时50s

背景:运营发现请求异常,简单的获取版本需要46s,改接口未访问数据库等其他额外组件,仅仅内存获取值返回,正常是几毫秒的时间。请求 time curl http://localhost/getVer客户端请求花了46秒,服务端记录的时间才39ms,看起来像大部分时间都花在等待,同时没有监控的metric信息,监控面板看不到数据查看监控的ss请求,40分之前 经常有很多SYN-RECV的连接占用队列,导致建联很慢for file in ls ss.log*; do grep SYN-RECV $fi

2020-09-14 09:58:33 491

原创 spring mvc处理PathVariable源码解析

文章目录@[toc]如何处理将请求的赋值到control的参数中1. 解析出url对应的匹配规则,匹配到对应的参数。2.解析获得参数值,之后通过反射注入对应的方法中。如何处理将请求的赋值到control的参数中解析出url对应的匹配规则,匹配到对应的参数,将解析出url对应的值放入request.setAttribute解析获得参数值,之后通过反射注入对应的方法中1. 解析出url对应的匹配规则,匹配到对应的参数。将解析出url对应的值放入request.setAttribute(Handl.

2020-09-01 19:20:45 578

原创 使用httpclient 4.5x获取请求地址的ip ( target IP)

当域名绑定多个ip的时候,需要指定当前请求的域名是哪个ip地址。直接通过httpclient 去获取,查到的资料基本基于3.x版本的扩展。对于4.x版本,可以通过上下文的方式获取到当前链接,由于连接在返回时候可能就会被释放。因此通过扩展Interceptor的方式去提前获取到ip并保持在context,之后通过context获取ip即可:一、增加后置拦截器获取ippublic class HttpResponseHostAddress implements HttpResponseIntercept

2020-06-12 19:08:25 1216

原创 jvm 相关工具

jvm 相关工具文章目录jvm 相关工具@[toc]arthas部署启动查看方法输入输出方式方式查看方法输入输出方式查看当前class的反编译getstatic 获取静态值async-profile 火焰图官网:下载最新版本:async-profiler-1.7.1-linux-x64.tar.gz使用CPU耗时脚本官网:打包下载下载单个文件典型使用耗时操作官方文档:https://alibaba.github.io/arthas/用于查看方法的输入输出,验证环境中的class是否最新扥。

2020-06-05 15:11:06 246

原创 数据库事务测试

文章目录@[toc]默认级别一、Read uncommitted(读未提交)二、 Read Committed(读已提交)三、 Repeatable Reads(可重复读)四、 Serializable(串行化)默认级别– 默认隔离级别,mysql是Repeatable Reads(可重复读),其他数据库一般是 Read Committed(读已提交)事务的隔离级别分为:Read unc...

2020-04-03 13:47:36 652

原创 事务源码

事务源码-堆栈Spring的事务管理是通过AOP代理实现的。 其中的事务通知由元数据(目前基于XML或注解)驱动。 代理对象与事务元数据结合产生了一个AOP代理,它使用一个PlatformTransactionManager 实现配合TransactionInterceptor,在方法调用前后实施事务。主要涉及:JpaTransactionManager 、 AbstractPlatfor...

2019-10-30 16:29:27 273

原创 dubbo集群容错源码分析

首先我们看一下官网的文档:启动项目后,为了走到负载均衡,我们需要启动不少于2个的提供者大致调用栈如下:sayHello:-1, proxy0 (com.alibaba.dubbo.common.bytecode)invoke:51, InvokerInvocationHandler (com.alibaba.dubbo.rpc.proxy)invoke:70, MockClusterInvoker...

2018-07-11 10:41:47 327

原创 三:IOC依赖注入

san

2018-07-10 11:08:56 103

原创 IOC初始化

2018-07-10 11:08:39 109

原创 The IoC container

2018-07-10 11:08:28 163

原创 读 java并发编程艺术 笔记

 1.    并发问题调试1.     使用jstack 命令 查看dump文件。2.     多使用Java并发类库. 2.    Java并发机制的底层实现原理1.     Volatile在JIT编译器编译后对volatile关键字的变量增加lock前缀。多核处理器对该前缀实现:1.     将当前处理器缓存行的数据写回到系统内存。2.     内存写回操作会使得在其他CPU里缓存了该内存的...

2018-07-09 22:05:28 147

原创 读jcip笔记

    1.    并发简介。 1.      什么是并发?(串行) 2.      为什么并发使用? (性能。发挥多处理器系统计算能力,使得异步代码更简单 ) 3.      .安全性问题? 死锁,性能。     2.    如何保障线程安全性?   同步: 1.      Synchronized 2.      Volatile 3. ...

2018-07-09 22:03:27 959

原创 六:总结

SpringMvc框架,在web.xml配置文件中,1.   Bean,配置文件加载,及bean工厂的创建。从web.xml启动 ContextLoaderListener,之后调用ContextLoader  (wac.refresh();)XmlWebApplicationContext这个类处理,获取DefaultListableBeanFactory的bean工厂,保存beanName 到...

2018-07-09 22:00:30 153

原创 五:springmvc参数解析

2018-07-09 21:59:50 119

原创 四:RequestMapping(二)

1.      在web配置中利用 DispatcherServlet作为所有请求参数的入口,doDispatch这个方法调用// Determine handler for the current request.mappedHandler=getHandler(processedRequest); 在此方法中获取到该请求路径对应的handlerMethod2. 根据传入的路径,通过List&l...

2018-07-09 21:58:56 157

原创 三:RequestMapping(一)

1.      在分析autowired注解的时候讲到populateBean中装配bean,之后就调用initializeBean (来实现对url 到 mapping 的映射 以及到handlerMethod)2.      在invokeInitMethods方法中调用((InitializingBean)bean).afterPropertiesSet();beanName = org.s...

2018-07-09 21:57:23 303

原创 二:Autowired

1.      加载完所有bean的配置之后,开始装配 bean在方法AbstractApplicationContext. refresh() 其中大致调用路径:ContextLoader->configureAndRefreshWebApplicationContext()->ConfigurableWebApplicationContext.refresh()2.      从f...

2018-07-09 21:56:08 143

原创 一:从标签context:component-scan 说起

1.      从web.xml启动 ContextLoaderListener2.      根据配置文件加载ContextLoader (wac.refresh();)3.      委托XmlWebApplicationContext处理4.      调用BeanDefinitionParser的parse处理大多数标签5.      ComponentScanBeanDefinition...

2018-07-09 21:52:46 263

原创 1.8ConcurrentHashMap

    使用减小锁粒度的方式实现高并发。实现方式较7及之前有较大的变化, 不在使用segment进行锁分段的技术。 直接使用Node存储值,put操作的时候根据hash到的table的节点进行加锁, 而不是对整个table加锁达到减小锁的粒度实现更高的并发性能。       /**      * Key-value entry.  T...

2018-07-09 21:39:59 186

原创 1.7ConcurrentHashMap

      使用锁分段技术,利用Segment实现分段锁,每个Segment包含table: transient volatile HashEntry<K,V>[] table; 对于put使用tryLock() 加锁保证并发安全性。对于get无需加锁因为 使用了volatile替换了synchronized。提供了线程间的可见性, 对于key这是使用...

2018-07-09 21:37:33 312

解决乱码问题

从DBS <-> Tomcat <-> browser 直接分别解决 A.对于myeclipse中有: 1. Window->Preferences->General->Workspace->Text file encoding 将其改为UFT-8即可 Window

2012-12-06

tomcat6.0连接通过JNDI连接mysql实例

经过实践归纳的,参考了tomcat6.0关于配置JNDI的官方文档。经过测试可以配置成功和使用。

2012-12-03

计算机网络第五版谢希仁习题答案

计算机网络第五版谢希仁习题答案第一章 概述 1-01 计算机网络向用户可以提供那些服务? 答: 连通性和共享 1-02 简述分组交换的要点。 答:(1)报文分组,加首部 (2)经路由器储存转发 (3)在目的地合并 1-03 试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。 答:(1)电路交换:端对端通信质量因约定了通信资源获得可靠保障,对连续传 送大量数据效率高。 (2)报文交换:无须预约传输带宽,动态逐段利用传输带宽对突发式数据通信效率高 ,通信迅速。 (3)分组交换:具有报文交换之高效、迅速的要点,且各分组小,路由灵活,网络生 存性能好。

2012-02-26

空空如也

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

TA关注的人

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