随笔
文章平均质量分 82
闰六月
我写的,都是我经历过的
展开
-
最重要的事只有一件,写在2017年的开头
新年快乐! 正月初十开始上班,本应该循规蹈矩写点什么类似计划、励志的语句。以便激励自己新年再接着努力。后面发现自己似乎已经没有这份动力了,最近耳边时不时能想起大学毕业之前听到的一些关于工作,关于社会的经验。「等工作几年,就会发现其实也就那样,过几年就会没有激情的」我当时是很不以为然的,甚至还带着点轻蔑的味道。这绝对是危言耸听,或许只是有些没“混”好的人的满腹抱怨罢了。时隔多年,现在想想这些话,可原创 2017-02-08 00:33:12 · 586 阅读 · 0 评论 -
Spring Boot初体验
Spring Boot 入门例子和说明刚接触Spring Boot,记录一些简单入门的知识点; Spring Boot能让我们以最简单的方式创建独立的、产品级别的基于Spring的应用。 本文大部分内容来自spring boot的官方文档,以及Youtube的入门讲解. 总的来说,你可以用很少的配置,并且以很简单优雅的方式启动你的Spring Boot应用。Spring Bo原创 2017-10-06 00:47:47 · 370 阅读 · 0 评论 -
B-Tree / B+Tree 结构以及MySQL索引
对MySQL的索引相关的问题以前一直是空白,最近了解了下树和索引之间的关系,对这方面有了新的认识,留下一些笔记。B-树B-树不一定是二叉树,B树是一种平衡树,它的高度是固定的; B树是一种多路查找树,也就是说它的节点上有多个存储的值;BTree每个节点存储的数据量很大,可以算一算,每个节点的数据如果为100个,层高M为3,则总的数据量,将近似为:(1000+1)^3 - 1;这将超过10亿个。原创 2017-09-21 19:12:23 · 610 阅读 · 0 评论 -
Spring MVC源码分析 - 请求和参数
Perf4j是一个应用性能分析工具,它能输出方法的调用耗时,以便帮助开发者了解系统里性能耗时的情况。 Perf4j的输出文件,按tag分类,从不同的方面对一段时间内的调用,从数量上进行了分析和统计,稍后将会提到。 此外,Perf4j还可以和JMX结合,作为JMX MBean的属性展示数据,同时在性能低于可接受阈值的情况下发送JMX通知。 它能跟Spring 结合,并且使用切面+注解的方式进行方原创 2017-09-18 19:15:20 · 847 阅读 · 0 评论 -
Perf4j的使用
perf4j介绍Perf4j是一个应用性能分析工具,它能输出方法的调用耗时,以便帮助开发者了解系统里性能耗时的情况。 Perf4j的输出文件,按tag分类,从不同的方面对一段时间内的调用,从数量上进行了分析和统计,稍后将会提到。 此外,Perf4j还可以和JMX结合,作为JMX MBean的属性展示数据,同时在性能低于可接受阈值的情况下发送JMX通知。 它能跟Spring 结合,并且使用切面+原创 2017-09-13 23:50:25 · 1584 阅读 · 0 评论 -
Hessian的使用以及理解
Hessian的使用以及理解Hessian版本:3.1.5将包括如下的内容:Hessian的基本使用Hessian的原理Hessian和Spring 的结合使用扩展简单说来,Hessian是一个轻量级的RPC框架(RPC是什么?请参考这里)。它基于HTTP协议传输,使用Hessian二进制序列化,对于数据包比较大的情况比较友好。但是它的参数和返回值都需要实现Serializable接口原创 2017-06-30 15:42:00 · 57225 阅读 · 2 评论 -
Spring AOP和动态代理
Spring AOP是Spring的一项很强大的功能。它的“面向切面编程”的思想是面向对象编程OOP的补充和完善。AOP允许我们从横向的角度关注我们的程序,使得程序在安全处理,日志,性能采集等代码能在一个地方统一进行处理,而不用分布在各个方法和调用点。这些代码集合在一起就称为“切面”。 连接点:被拦截到的点,Spring只支持方法类型的连接点,所以在Spring中,连接点就是指被拦截到的方法。原创 2017-04-18 16:01:35 · 370 阅读 · 0 评论 -
Java动态代理
代理模式Java动态代理动态代理实现代理是一种设计模式。在一些情况下,一个对象并不能或者并不希望被其他某些调用,代理就可以在这其中起到中介的作用。 这样既可以使用真实对象的方法,又可以保护目标对象,还可以在真实方法调用的前后进行一些操作。常见的代理模式实现方式如下: 定义一个接口:public interface Subject {String doSth(String name);}原创 2017-04-11 19:37:59 · 234 阅读 · 0 评论 -
Parallel 收集器
1、如何查看JVM的运行参数[root@vm-10-11-146-1 deploy]# jcmd 29473 VM.flags29473:-XX:CICompilerCount=3 -XX:InitialHeapSize=62914560 -XX:MaxHeapSize=1004535808 -XX:MaxNewSize=334495744 -XX:MinHeapDeltaBytes=52428原创 2017-04-11 19:34:35 · 1833 阅读 · 0 评论 -
源码第一步
读框架源码,一开始的时候还真是不知道如何下手。 本篇文字以motan框架为例,记录下我是从哪里入手开始看源码的,个人感觉有通用性。 本人读源码不多,大牛请无视。原创 2017-03-30 00:21:41 · 333 阅读 · 0 评论 -
Autowired注解闲谈
早上看到一个朋友的个人空间说到自己面试被问及@autowired的实现。结果是卡壳了,回来之后觉得应该是反射之类的方式实现。个人感觉他说的也不能算错,不过不是我想看到的答案,自己查了查资料,顺便记下。 本段文字将包含如下几个方面的内容:BeanPostProcessor接口的例子 BeanPostProcessor接口结合注解的例子 Autowired注解Autowired是个注解类原创 2017-03-28 19:12:24 · 598 阅读 · 0 评论 -
再谈Motan服务的启动
之前简要地过了一遍Motan服务的启动过程,感觉理解得还不够清楚,所以接下来会就有疑惑的几个点来做一次分析。 和之前一样,以Motan服务的启动为依托,分析启动过程中的几个重要节点以及类,以此来窥探Motan服务端的设计架构和原则。ExtensionLoaderURLConfigHandlerExporterProviderProtocolEndpointFacto原创 2018-01-22 18:40:09 · 1886 阅读 · 0 评论