- 博客(26)
- 资源 (1)
- 收藏
- 关注
dubbo源码研究之rpc模块
dubbo作为一个服务化框架,rpc模块是dubbo整个框架的核心部分。 我们来通过dubbo来了解rpc调用的本质。 [img]http://dl2.iteye.com/upload/attachment/0122/5558/8dc160fe-e392-33bb-add4-28a1c84d303c.png[/img] dubbo的rpc模块以Invocation和R...
2017-01-12 12:34:46
226
原创 dubbo源码研究之extension模块
dubbo的扩展采用spi机制实现,spi(Service Provider Interface)是指一些提供给你继承、扩展,完成自定义功能的类、接口或者方法。spi把控制权利交个调用方,调用方来决定使用该spi的哪个实现。 dubbo扩展机制的核心类是ExtensionLoader,该类通过静态方法getExtensionLoader获取一个指定接口的ExtensionLoader...
2016-11-26 14:38:02
229
dubbo源码研究之dubbo-registry模块
dubbo-registry注册中心模块,基于注册中心下发地址的集群方式,以及对各种注册中心的抽象。 registry模块顶层接口为RegistryService和NotifyListener以及一个工厂接口RegistryFactory。 RegistryService接口包含4个方法。 void register(URL url); 注册服务 void ...
2016-11-18 14:46:02
438
dubbo源码研究之container模块
dubbo-container模块是dubbo启动顺序中的第一个模块,dubbo-container模块是容器模块,通过dubbo-container模块读取dobbo-config模块的相关配置。 [code="java"]/** * Container. (SPI, Singleton, ThreadSafe) * * @author william.liang...
2016-11-17 14:04:24
252
dubbo源码研究之config-spring模块
dubbo-config-spring模块是dubbo-config的Extension。[img]http://dl2.iteye.com/upload/attachment/0121/2942/275fa2bf-d6f8-3eb0-8d48-801fe76950c4.png[/img] Dubbo的扩展点加载从JDK标准的SPI(Service Provider Inte...
2016-11-16 15:39:52
387
dubbo源码研究之config模块
dubbo模块说明: dubbo-common 公共逻辑模块,包括Util类和通用模型。 dubbo-remoting 远程通讯模块,相当于Dubbo协议的实现,如果RPC用RMI协议则不需要使用此包。 dubbo-rpc 远程调用模块,抽象各种协议,以及动态代理,只包含一对一的调用,不关心集群的管理。 dubbo-cluster 集群模块,将多个服务提供方...
2016-11-15 16:08:54
257
浅谈分布式项目日志监控
目前公司项目采用dubbo服务化升级之后,原先大而全的几个主要应用,拆散重构成多个分布式服务。这个公司业务架构和系统架构实现一次升级,并发和业务开发效率得到提升。但是事情是两面的,引入dubbo服务化之后,导致业务链路过长,日志分散。不能在使用原来的日志处理方式了。 分布式情况下,每个日志分散到各自服务所在机器,日志的收集和分析使用原来古老的模式,肯定是过时了,集群和服务规模小还好,...
2016-11-04 13:52:56
516
java线程池demo
接口[code="java"]/** * Project Name:chenxun-framework-start * File Name:ThreadPool.java * Package Name:com.chenxun.framework.test * Date:2016年9月2日下午1:51:44 * Copyright (c) 2016, www midaig...
2016-09-02 15:12:39
198
原创 基于用户角色的细粒度validate
今天群里小伙伴有个需求,希望通过role来控制pojo字段校验。采用方式为spirng securtity+spring validate 实现 spring4.0+ 默认支持jsr303。spring validate 也支持自定义valdiate注解。因此采用自定义validate注解实现 代码地址:https://github.com/ChenXun1989/role-va...
2016-08-26 19:24:03
235
原创 solr中文分词
solr中文分词。 solr5.0 自带一个中文分词包,lucene-analyzers-smartcn-5.0.0.jar。 在安装目录下搜寻找到,并copy到solr提供的web服务目录的lib目录下。 修改collection配置里面的schema.xml。新增字段类型。[code="xml"] ...
2016-08-21 14:37:21
115
原创 solrcloud搭建
群里小伙伴需要一个solrcloud的解决案例。正好好久没碰过solr了。决定写个demo,顺便重新熟悉下solr。 solr版本:5.0 solr链接:http://archive.apache.org/dist/lucene/solr/5.0.0/ jdk版本:1.70+ windows环境安装: [code="java"] cd D:\app\sol...
2016-08-20 18:27:24
140
基于jquery把表单转成成json对象
最近前端框架修改,小伙伴希望能像以前写jsp一样使用 对象.属性作为表单元素的name值 [code="html"] [/code]我这种懒人第一反应肯定去找度娘,发现度娘居然没有,只好自己造了轮子。[code="js"] function fo...
2016-08-18 10:48:51
199
原创 spring boot hello world
今天开始从零学习spring boot,顺便写个博客,记录过程。 工欲利其事,必先善其器。spring boot相关地址如下 http://projects.spring.io/spring-boot/ spring boot官网 https://github.com/spring-projects/spring-boot/tree/master/spring-boo...
2016-07-25 09:56:56
105
原创 jQuery基于json对象自动给表单元素赋值
为了提高前端小伙伴的开发效率,造了个基于json对象根据表单元素的name属性自动赋值的轮子[code="js"] json2form:function(obj){ var nodeParent = null; var value = undefined; var $el = null; var nodeName = ""; for(...
2016-07-07 10:05:02
1280
1
原创 springRest+cross跨域支持
最近一个接口项目需要支持跨域访问,基于cross实现。于是去spring官网上找了下,发现spring版本4.2+开始支持通过@CrossOrigin注解实现跨域支持。于是把spring版本升级到4.2.6,下面记录踩过的坑。controller只需要在原先方法上面添加@CrossOrigin注解即可 [code="java"]@Controller@RequestMap...
2016-06-17 15:51:56
159
原创 jqueyr插件helloworld版本
最近有童鞋找我要jquery插件入门的demo,我把之前的找出来分享下,欢迎拍砖。闲话少说,直接上代码 [code="html"] .message{ position: fixed; top: 30%; left: 30%; z-index: 1; border: 1px blac...
2016-06-08 11:59:56
132
原创 java内存机制解析(一)
最近在看一些java底层知识,搬了这么久时间的砖头,也是时候了解底层原理了。顺便做个笔记。 java虚拟机运行时数据分区大概分为以下几个部分: 堆区,方法区,虚拟机栈,程序计数器。(本地方法栈和本地库接口不讨论) 程序计数器:java虚拟机是通过线程轮流切换并分配处理器执行时间来实现多线程的。因此在任何一个确定的时刻,一个处理器都只会执行一条线程的指令。 所以需要一个独立的程序...
2016-05-04 22:01:10
118
原创 关于office转换pdf完美终极解决方案
最近项目上面有个需求,将用户上传的office格式转换成pdf格式。下面记录下我走过的一些弯路,和得到的一些收获 1 使用java第三方api转换。 这个是我最开始的想法,因为java毕竟比较熟悉,学习成本,维护成本相对较低。这个方案找过很多第三方,例如poi之类的,但是有两个缺点,1 性能低,对cpu压力大,2 兼容性差,很多格式或者特殊字符解析不出。 ...
2016-03-12 11:54:15
2821
1
原创 关于ModelMap的小事
今天对一个老系统框架的升级,需要修改原先响应的http报文格式。该系统是springMVC实现。出了点小问题,记录一下。 [code="java"]@Override public void postHandle(WebRequest request, ModelMap model) throws Exception { if(model....
2016-03-08 18:54:59
279
原创 spring整合memcache
Xmemcached是基于java nio实现的高性能可扩展的memcached客户端。 pom.xml[code="xml"] com.googlecode.xmemcached xmemcached [/code] spring配置 [code="xml"] ${memcache...
2016-02-26 14:50:19
123
原创 spring整合mongodb
MongoDB.是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引. spring-mongodb....
2016-02-26 14:36:18
97
原创 web项目整合solr服务实现全文检索
Solr是一个高性能,采用Java5开发,Solr基于Lucene的全文搜索服务器。 SolrJ是Apache提供的solr服务客服端工具[code="java"] org.apache.solr solr-solrj [/code]使用httpSolrClient链接solr服务器[code="java"] SolrClie...
2016-02-26 14:24:08
763
原创 java web权限管理
之前项目采用spring4+security3做的权限管理,采用通用的 用户-角色,角色-资源来管理权限。但是太依赖角色,同时是粗粒度的,决定采用二进制权限管理,自己构建 1 依然采用组织概念,但是同时保留用户 2 资源可以赋权给组织,也可以赋权给用户,权限区分读写 3 用户可以在多个组织 4 用户权限覆盖组织权限 下面列出2进制权限算法演示 ...
2015-12-18 14:29:42
151
原创 spring4整合rest风格配置
最近手头上有个新项目,打算采用前端js渲染+后端调用restful风格api获取数据。于是决定把之前一个项目的springMVC改造成符合restful风格的框架。找了很多资料,也遇到不少坑,下面把相关心得整理下。 很多人以为resutful是一种标准,要按照什么标准才行,其实restful是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。说白了它就是个风...
2015-12-18 13:55:19
132
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人