06 2017 档案

摘要:基础大杂烩 -- 目录 Java中的Iterator非常方便地为所有的数据源提供了一个统一的数据读取(删除)的接口,但是新手通常在使用的时候容易报如下错误ConcurrentModificationException,原因是在使用迭代器时候底层数据被修改,最常见于数据源不是线程安全的类,如HashM 阅读全文
posted @ 2017-06-28 22:58 limeOracle 阅读(215) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 用Iterator模式实现遍历集合 Iterator模式是用于遍历集合类的标准访问方法。它可以把访问逻辑从不同类型的集合类中抽象出来,从而避免向客户端暴露集合的内部结构。 例如,如果没有使用Iterator,遍历一个数组的方法是使用索引: for(int i=0; i<arr 阅读全文
posted @ 2017-06-28 22:54 limeOracle 阅读(310) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 大杂烩 -- Java中Iterator的fast-fail分析 大杂烩 -- Iterator 和 Iterable 区别和联系 问题: 在集合中,判断里面有没有"Hello"这个元素,如果有,我就添加一个"It's me"元素。 使用普通迭代器出现的异常: Concurr 阅读全文
posted @ 2017-06-28 22:51 limeOracle 阅读(258) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- TCP是什么? 具体的关于TCP是什么,我不打算详细的说了;当你看到这篇文章时,我想你也知道TC 阅读全文
posted @ 2017-06-28 11:44 limeOracle 阅读(292) 评论(2) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 一、Java内存布局浅谈 1. 总述 我们知道,线程是操作系统调度的基本单元。所有线程共享父进程的堆空间,而每个线程都有自己的栈空间和程序计数器。所以 阅读全文
posted @ 2017-06-26 19:12 limeOracle 阅读(1450) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V4——RPC -- 远程方法调用 + Spring 自动注册 服务提供商: 1. 配置 rpc04_server.xml 注入 服务提供商 rpcServiceProvider并指定初始化方法、销毁方法 及 服务实例 IUserService 2 阅读全文
posted @ 2017-06-25 15:57 limeOracle 阅读(401) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V3——RPC -- 远程方法调用 及 null的传输 + Spring 服务提供商: 1. 配置 rpc03_server.xml 注入 服务提供商 rpcServiceProvider并指定初始化方法 及 服务实例 IUserService 2 阅读全文
posted @ 2017-06-25 14:10 limeOracle 阅读(418) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——RPC -- 本地方法调用 + Spring 1. 配置applicationContext.xml文件 注入 bean 及 管理 bean 之间的依赖关系 2. RPCObjectProxy 类 实现 FactoryBean<Object 阅读全文
posted @ 2017-06-25 12:09 limeOracle 阅读(346) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——RPC -- 本地方法调用:不通过网络 入门 1. RPCObjectProxy rpcObjectProxy = new RPCObjectProxy(new LocalRPCClient()); : 绑定目标对象 2. IUserSer 阅读全文
posted @ 2017-06-24 22:20 limeOracle 阅读(382) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- new LengthFieldPrepender(2) : 设置数据包 2 字节的特征码 new LengthFieldBasedFrameDecoder(65535, 0, 2, 0, 2) : 65535 :数据包长度 阅读全文
posted @ 2017-06-24 21:45 limeOracle 阅读(467) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- pipeline.addLast(io.netty.handler.codec.MessageToMessageCodec<INBOUND_IN, OUTBOUND_IN>) 覆写编码解码方法。 pipeline相当于拦截 阅读全文
posted @ 2017-06-24 21:15 limeOracle 阅读(347) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- 使用序列化和反序列化在网络上传输对象:需要实现 java.io.Serializable 接口 只能传输( ByteBuf, FileRegion )两种类型,因此必须将对象在发送之前进行序列化,放进ByteBuf中,客户 阅读全文
posted @ 2017-06-24 19:28 limeOracle 阅读(320) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——Netty入门应用 Class : NIOServerBootStrap Class : CustomServerChannelInitializer Class : CustomServerChannelHandlerAdapter Cl 阅读全文
posted @ 2017-06-24 17:46 limeOracle 阅读(303) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——增加WriteQueue队列,存放selectionKey。addWriteEventToQueue()添加selectionKey并唤醒阻塞的selector。等selector唤醒之后再注册OP_WRITE事件。 ( selection 阅读全文
posted @ 2017-06-24 17:00 limeOracle 阅读(504) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——设置标识变量selectionKey.attach(true);只处理一次(会一直循环遍历selectionKeys,占用CPU资源)。 (由于key没有清除,依旧在selectionKeys中存在,遍历时依旧会检测到对应事件,除非sock 阅读全文
posted @ 2017-06-24 16:07 limeOracle 阅读(371) 评论(0) 推荐(0) 编辑
摘要:-- 啦啦啦 -- 网络编程 -- RPC实现原理 -- NIO单线程 网络编程 -- RPC实现原理 -- NIO多线程 -- 迭代版本V1 网络编程 -- RPC实现原理 -- NIO多线程 -- 迭代版本V2 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V1 -- 入门应用 阅读全文
posted @ 2017-06-24 15:27 limeOracle 阅读(528) 评论(0) 推荐(0) 编辑
摘要:网络编程 -- RPC实现原理 -- 目录 啦啦啦 Class : Service Class : Client Console : Server Console : Client 啦啦啦 阅读全文
posted @ 2017-06-24 15:26 limeOracle 阅读(537) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1.输入并查找 方案:头插法,正向查找第m个元素。 2.指定单向链表并查找倒数第m个元素 两种情况:无环、有环 无环方案:因为无环单向链表最后一个元素 阅读全文
posted @ 2017-06-17 01:28 limeOracle 阅读(441) 评论(0) 推荐(0) 编辑
摘要:-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 大杂烩 -- 单向链表是否存在环或是否相交 大杂烩 -- 查找单向链表倒数第m个元素 阅读全文
posted @ 2017-06-17 00:33 limeOracle 阅读(1182) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 给定一个单链表,只给出头指针h: 1、如何判断是否存在环? 2、如何知道环的长度? 3、如何找出环的连接点在哪里? 4、带环链表的长度是多少? 解法: 阅读全文
posted @ 2017-06-17 00:28 limeOracle 阅读(234) 评论(0) 推荐(0) 编辑
摘要:-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 艺多不压身 -- 常用缓存Cache机制的实现 艺多不压身 -- 四种生成和解析XM 阅读全文
posted @ 2017-06-16 23:51 limeOracle 阅读(256) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM、SAX、JDOM和DOM4J DOM:在现在的Java JDK里都自带了,在xml-apis.jar包里 SAX: JDOM: DOM4J: 一、介绍及优缺点分析 1. DOM(Document Obj 阅读全文
posted @ 2017-06-16 23:50 limeOracle 阅读(438) 评论(0) 推荐(0) 编辑
摘要:泛型 -- -- 延伸 -- 泛型 -- 泛型的基本介绍和使用 延伸 -- 泛型 -- 泛型的内部原理:类型擦除以及类型擦除带来的问题 延伸 -- 泛型 -- 通配符的使用 啦啦啦 阅读全文
posted @ 2017-06-16 22:38 limeOracle 阅读(220) 评论(0) 推荐(0) 编辑
摘要:通配符有三种: 1、无限定通配符 形式<?> 2、上边界限定通配符 形式< ? extends Number> //用Number举例 3、下边界限定通配符 形式< ? super Number> //用Number举例 1、泛型中的?通配符 如果定义一个方法,该方法用于打印出任意参数化类型的集合中 阅读全文
posted @ 2017-06-16 22:21 limeOracle 阅读(349) 评论(0) 推荐(0) 编辑
摘要:延伸 -- 泛型 -- 泛型的基本介绍和使用 一、Java泛型的实现方法:类型擦除 前面已经说了,Java的泛型是伪泛型。为什么说Java的泛型是伪泛型呢?因为,在编译期间,所有的泛型信息都会被擦除掉。正确理解泛型概念的首要前提是理解类型擦出(type erasure)。 Java中的泛型基本上都是 阅读全文
posted @ 2017-06-15 23:45 limeOracle 阅读(331) 评论(0) 推荐(0) 编辑
摘要:延伸 -- 泛型 -- 泛型的内部原理:类型擦除以及类型擦除带来的问题 一、泛型的基本概念 泛型的定义:泛型是JDK 1.5的一项新特性,它的本质是参数化类型(Parameterized Type)的应用,也就是说所操作的数据类型被指定为一个参数,在用到的时候在指定具体的类型。这种参数类型可以用在类 阅读全文
posted @ 2017-06-15 23:30 limeOracle 阅读(436) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1. Hashtable 和 HashMap ⑴ 区别,这两个类主要有以下几方面的不同: ⊙ Hashtable和HashMap都实现了Map接口,但 阅读全文
posted @ 2017-06-14 22:34 limeOracle 阅读(356) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 问题:当ArrayList中放入的元素一直增加会如何增长数组长度??? Class : ArrayList Class : Arrays Class 阅读全文
posted @ 2017-06-14 20:55 limeOracle 阅读(285) 评论(0) 推荐(0) 编辑
摘要:7.4 自定义异常类 定义异常类只需要继承Exception类即可。 例:自定义异常类 Class : MyException Class :main Console : 7.5 断言 啦啦啦 阅读全文
posted @ 2017-06-14 19:09 limeOracle 阅读(1807) 评论(0) 推荐(0) 编辑
摘要:7.3 Exception类与RuntimeException类 Exception类与RuntimeException类的联系与区别??? 例:字符串变为整型 Class : RuntimeExceptionDemo01 Console : 其中parseInt()签名: parseInt()方法 阅读全文
posted @ 2017-06-14 18:58 limeOracle 阅读(2032) 评论(0) 推荐(0) 编辑
摘要:7.2.3 范例 -- throw与throws的应用 例:综合应用 Class : Math Class : main Console : 7.3 Exception 类 与 RuntimeException类 啦啦啦 阅读全文
posted @ 2017-06-14 18:41 limeOracle 阅读(422) 评论(0) 推荐(0) 编辑
摘要:7.2 throws 与 throw关键字 7.2.1 throws 关键字 在定义一个方法时可以使用throws关键字声明,使用throws声明的方法标识此方法不处理异常,而交给方法的调用处进行处理。 例:使用throws关键字 例:处理异常 提示: 在主方法中也可以使用throws关键字,但主方 阅读全文
posted @ 2017-06-14 18:27 limeOracle 阅读(839) 评论(0) 推荐(0) 编辑
摘要:7.1.4 Java的异常处理机制 在整个Java的异常处理中,实际上也是按照面向对象的方式进行处理,处理的步骤如下: ⑴ : 一旦产生异常,则首先会产生一个异常类的实例化对象。 ⑵ : 在try语句中对此异常对象进行捕捉。 ⑶ : 产生的异常对象与catch语句中的各个异常类型进行匹配,如果匹配成 阅读全文
posted @ 2017-06-14 16:53 limeOracle 阅读(599) 评论(0) 推荐(0) 编辑
摘要:7.1.3 异常类的继承结构 在整个Java的异常结构中,实际上有两个最常用的类,分别为Exception和Error,这两个类全都是Throwable的子类。 ⊙ Exception : 一般标识的是程序中出现的问题,可以直接使用try catch处理。 ⊙ Error : 一般值得是JVM错误, 阅读全文
posted @ 2017-06-14 16:36 limeOracle 阅读(2088) 评论(0) 推荐(0) 编辑
摘要:7 异常的捕获及处理 7.1 异常的基本概念 7.1.1 为什么需要异常处理 7.1.2 在程序中使用异常处理 7.1.3 异常类的继承结构 7.1.4 Java的异常处理机制 7.2 throws与throw关键字 7.2.1 throws关键字 7.2.2 throw关键字 7.2.3 范例 - 阅读全文
posted @ 2017-06-14 16:12 limeOracle 阅读(282) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Class : A Class : B Class : Main Console : 啦啦啦 阅读全文
posted @ 2017-06-14 12:27 limeOracle 阅读(187) 评论(0) 推荐(0) 编辑
摘要:基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Equals 1、默认情况(没有覆盖equals方法)下equals方法都是调用Object类的equals方法,而Object的equals方法主要 阅读全文
posted @ 2017-06-14 12:24 limeOracle 阅读(295) 评论(0) 推荐(0) 编辑
摘要:常用缓存Cache机制的实现 缓存,就是将程序或系统经常要调用的对象存在内存中,以便其使用时可以快速调用,不必再去创建新的重复的实例。 这样做可以减少系统开销,提高系统效率。 缓存主要可分为二大类: 一、通过文件缓存,顾名思义文件缓存是指把数据存储在磁盘上,不管你是以XML格式,序列化文件DAT格式 阅读全文
posted @ 2017-06-12 19:59 limeOracle 阅读(874) 评论(0) 推荐(0) 编辑
摘要:13.1 认识类集 13.1.1 基本概念 13.1.2 类集框架主要接口 13.2 Collection接口 13.2.1 Collection接口的定义 13.2.2 Collection子接口的定义 13.3 List接口 13.3.1 List接口的定义 13.3.2 List接口的常用子类 阅读全文
posted @ 2017-06-12 16:58 limeOracle 阅读(273) 评论(0) 推荐(0) 编辑
摘要:-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 概述 NIO主要有三大核心部分:Channel(通道),Buffer(缓冲区), S 阅读全文
posted @ 2017-06-12 12:21 limeOracle 阅读(316) 评论(0) 推荐(0) 编辑
摘要:20.1 Java 新IO简介 20.2 缓冲区与Buffer 例:演示缓冲区的操作流程 Class : IntBufferDemo01 20.2.2 深入缓冲区操作 20.2.3 创建子缓冲区 20.2.4 创建只读缓冲区 20.2.5 创建直接缓冲区 20.3 通道 20.3.1 FileCha 阅读全文
posted @ 2017-06-11 16:42 limeOracle 阅读(333) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 泛化引用 泛接口调用方式主要用于客户端没有API接口及模型类元的情况,参数及返回值中的所有POJO均用Map表示,通常用于框架集成,比如:实现一个通用的服务测试框架,可通过Gener 阅读全文
posted @ 2017-06-10 15:50 limeOracle 阅读(2629) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 结果缓存 结果缓存,用于加速热门数据的访问速度,Dubbo提供声明式缓存,以减少用户加缓存的工作量。 2.1.0以上版本支持 lru 基于最近最少使用原则删除多余缓存,保持最热的数据 阅读全文
posted @ 2017-06-10 15:46 limeOracle 阅读(496) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 参数验证 参数验证功能是基于JSR303实现的,用户只需标识JSR303标准的验证Annotation,并通过声明filter来实现验证。 2.1.0以上版本支持 验证方式可扩展,参 阅读全文
posted @ 2017-06-10 15:41 limeOracle 阅读(2454) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 分组聚合 按组合并返回结果,比如菜单服务,接口一样,但有多种实现,用group区分,现在消费方需从每种group中调用一次返回结果,合并结果返回,这样就可以实现聚合菜单项。 从2.1 阅读全文
posted @ 2017-06-10 15:38 limeOracle 阅读(1451) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 多版本 当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间不引用。 在低压力时间段,先升级一半提供者为新版本 再将所有消费者升级为新版本 然后将剩下的一半提供 阅读全文
posted @ 2017-06-10 15:33 limeOracle 阅读(264) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 服务分组 当一个接口有多种实现时,可以用group区分。 任意组:(2.2.0以上版本支持,总是只调一个可用组的实现) 啦啦啦 阅读全文
posted @ 2017-06-10 15:25 limeOracle 阅读(265) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 多注册中心 可以自行扩展注册中心,参见:注册中心扩展 (1) 多注册中心注册 比如:中文站有些服务来不及在青岛部署,只在杭州部署,而青岛的其它应用需要引用此服务,就可以将服务同时注册 阅读全文
posted @ 2017-06-10 15:19 limeOracle 阅读(266) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 多协议 可以自行扩展协议,参见:协议扩展 (1) 不同服务不同协议 比如:不同服务在性能上适用不同协议进行传输,比如大数据用短连接协议,小数据大并发用长连接协议。 XML : pro 阅读全文
posted @ 2017-06-10 15:04 limeOracle 阅读(266) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 静态服务 有时候希望人工管理服务提供者的上线和下线,此时需将注册中心标识为非动态管理模式。 或者: 服务提供者初次注册时为禁用状态,需人工启用,断线时,将不会被自动删除,需人工禁用。 阅读全文
posted @ 2017-06-10 14:55 limeOracle 阅读(769) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 只注册 问题 如果有两个镜像环境,两个注册中心,有一个服务只在其中一个注册中心有部署,另一个注册中心还没来得及部署,而两个注册中心的其它应用都需要依赖此服务,所以需要将服务同时注册到 阅读全文
posted @ 2017-06-10 14:51 limeOracle 阅读(244) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 只订阅 问题 为方便开发测试,经常会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发中的服务提供者注册,可能会影响消费者不能正常运行。 解决方案 可以让服务提供者开发方, 阅读全文
posted @ 2017-06-10 14:47 limeOracle 阅读(183) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 直连提供者 在开发及测试环境下,经常需要绕过注册中心,只测试指定服务提供者,这时候可能需要点对点直连,点对点直联方式,将以服务接口为单位,忽略注册中心的提供者列表,A接口配置点对点, 阅读全文
posted @ 2017-06-10 14:44 limeOracle 阅读(250) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 线程模型 事件处理线程说明 如果事件处理的逻辑能迅速完成,并且不会发起新的IO请求,比如只是在内存中记个标识,则直接在IO线程上处理更快,因为减少了线程池调度。 但如果事件处理逻辑较 阅读全文
posted @ 2017-06-10 14:39 limeOracle 阅读(248) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 负载均衡 在集群负载均衡时,Dubbo提供了多种均衡策略,缺省为random随机调用。 可以自行扩展负载均衡策略,参见:负载均衡扩展 随机,按权重设置随机概率。 在一个截面上碰撞的概 阅读全文
posted @ 2017-06-10 14:34 limeOracle 阅读(220) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 集群容错 在集群调用失败时,Dubbo提供了多种容错方案,缺省为failover重试。 各节点关系: 这里的Invoker是Provider的一个可调用Service的抽象,Invo 阅读全文
posted @ 2017-06-10 13:44 limeOracle 阅读(263) 评论(0) 推荐(0) 编辑
摘要:示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 启动时检查 Dubbo缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止Spring初始化完成,以便上线时,能及早发现问题,默认check=true。 如果你的Spring容器是懒加载的,或者通过API编程延迟引用服 阅读全文
posted @ 2017-06-10 13:06 limeOracle 阅读(219) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 配置参考手册 <dubbo:service/> <dubbo:reference/> <dubbo:protocol/> <dubbo:registry/> <dubbo:monitor/> <dubbo:application/> <dubbo:mod 阅读全文
posted @ 2017-06-09 22:04 limeOracle 阅读(1021) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 API参考手册 配置API 注解API 模型API 上下文API 服务API 配置API 注解API 模型API 上下文API 服务API API参考手册 Dubbo的常规功能,都保持零侵入,但有些功能不得不用API侵入才能实现。 API汇总如下: 配置 阅读全文
posted @ 2017-06-09 19:26 limeOracle 阅读(414) 评论(0) 推荐(0) 编辑
摘要:安装手册 示例提供者安装 示例消费者安装 Zookeeper注册中心安装 Redis注册中心安装 简易注册中心安装 简易监控中心安装 管理控制台安装 示例提供者安装 示例消费者安装 Zookeeper注册中心安装 Redis注册中心安装 简易注册中心安装 简易监控中心安装 管理控制台安装 推荐使用Z 阅读全文
posted @ 2017-06-09 19:13 limeOracle 阅读(426) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 配置 Xml配置 属性配置 注解配置 API配置 Xml配置 属性配置 注解配置 API配置 配置 Xml配置 配置项说明 :详细配置项,请参见:配置参考手册 API使用说明 : 如果不想使用Spring配置,而希望通过API的方式进行调用,请参见:AP 阅读全文
posted @ 2017-06-09 19:03 limeOracle 阅读(1159) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 成熟度 功能成熟度 策略成熟度 功能成熟度 策略成熟度 啦啦啦 阅读全文
posted @ 2017-06-09 18:42 limeOracle 阅读(274) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 依赖 必需依赖 缺省依赖 可选依赖 必需依赖 缺省依赖 可选依赖 依赖 必需依赖 JDK1.5+ 理论上Dubbo可以只依赖JDK,不依赖于任何三方库运行,只需配置使用JDK相关实现策略。 缺省依赖 通过mvn dependency:tree > dep 阅读全文
posted @ 2017-06-09 18:37 limeOracle 阅读(364) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 快速启动 服务提供者 服务消费者 服务提供者 服务消费者 快速启动 Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。 如果不 阅读全文
posted @ 2017-06-09 18:35 limeOracle 阅读(704) 评论(0) 推荐(0) 编辑
摘要:Dubbo -- 系统学习 笔记 -- 目录 入门 背景 需求 架构 用法 背景 需求 架构 用法 入门 背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。 单一应用架构 当网站流量很小时,只 阅读全文
posted @ 2017-06-09 18:22 limeOracle 阅读(368) 评论(0) 推荐(0) 编辑
摘要:比如hello world服务类,本地调用。这些程序的特点是服务消费方和服务提供方是本地调用关系。 大型系统都由成千上万大大小小的服务组成,各服务部署在不同的机器上,由不同的团队负责。 这时就会遇到两个问题: 1)要搭建一个新服务,免不了需要依赖他人的服务,而现在他人的服务都在远端,怎么调用? 2) 阅读全文
posted @ 2017-06-09 10:52 limeOracle 阅读(403) 评论(0) 推荐(0) 编辑
摘要:RMI(即Remote Method Invoke 远程方法调用)。在Java中,只要一个类extends了java.rmi.Remote接口,即可成为存在于服务器端的远程对象,供客户端访问并提供一定的服务。JavaDoc描述:Remote 接口用于标识其方法可以从非本地虚拟机上调用的接口。任何远程 阅读全文
posted @ 2017-06-09 00:39 limeOracle 阅读(2207) 评论(0) 推荐(0) 编辑
摘要:用户指南 入门 背景 需求 架构 用法 快速启动 服务提供者 服务消费者 依赖 必需依赖 缺省依赖 可选依赖 成熟度 功能成熟度 策略成熟度 配置 Xml配置 属性配置 注解配置 API配置 示例 启动时检查 集群容错 负载均衡 线程模型 直连提供者 只订阅 只注册 静态服务 多协议 多注册中心 服 阅读全文
posted @ 2017-06-09 00:27 limeOracle 阅读(626) 评论(0) 推荐(0) 编辑
摘要:附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appender> logback -- 配置详解 -- 三 -- <encoder> logback -- 配置详解 -- 四 阅读全文
posted @ 2017-06-08 20:06 limeOracle 阅读(2144) 评论(0) 推荐(1) 编辑
摘要:附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appender> logback -- 配置详解 -- 三 -- <encoder> logback -- 配置详解 -- 四 阅读全文
posted @ 2017-06-08 19:26 limeOracle 阅读(4542) 评论(0) 推荐(1) 编辑
摘要:附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appender> logback -- 配置详解 -- 三 -- <encoder> logback -- 配置详解 -- 四 阅读全文
posted @ 2017-06-07 23:12 limeOracle 阅读(1360) 评论(0) 推荐(0) 编辑
摘要:附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appender> logback -- 配置详解 -- 三 -- <encoder> logback -- 配置详解 -- 四 阅读全文
posted @ 2017-06-07 21:47 limeOracle 阅读(2870) 评论(0) 推荐(1) 编辑
摘要:POM : Class : Log logback.xml Class : File : 啦啦啦 啦啦啦 阅读全文
posted @ 2017-06-06 16:57 limeOracle 阅读(1437) 评论(1) 推荐(0) 编辑
摘要:POM: 提供者: 消费者: 啦啦啦 啦啦啦 阅读全文
posted @ 2017-06-06 16:46 limeOracle 阅读(289) 评论(0) 推荐(0) 编辑
摘要:mongodb 初学 索引 啦啦啦 MongoDB 教程 NoSQL 简介 MongoDB 简介 Windows 平台安装 MongoDB Linux平台安装MongoDB mongodb 在 Ubuntu系统上的安装及卸载 Mongodb启动命令mongod参数说明 Mac OSX 平台安装 Mo 阅读全文
posted @ 2017-06-03 22:16 limeOracle 阅读(248) 评论(0) 推荐(0) 编辑
摘要:分片 在Mongodb里面存在另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求。 当MongoDB存储海量的数据时,一台机器可能不足以存储数据,也可能不足以提供可接受的读写吞吐量。这时,我们就可以通过在多台机器上分割数据,使得数据库系统能存储和处理更多的数据。 为什么使用分片 复 阅读全文
posted @ 2017-06-01 23:30 limeOracle 阅读(965) 评论(0) 推荐(0) 编辑
摘要:mongod的主要参数有: 基本配置 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- * Replicaton 参数 * 主/从参数 * Replica set(副本集)选项: * 阅读全文
posted @ 2017-06-01 22:24 limeOracle 阅读(538) 评论(0) 推荐(0) 编辑
摘要:连接服务器异常(Connection refused) 啦啦啦 mongodb 搭建主从服务器 啦啦啦 Mongodb启动命令mongod参数说明 啦啦啦 MongoDB 分片 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 啦啦啦 阅读全文
posted @ 2017-06-01 21:51 limeOracle 阅读(227) 评论(0) 推荐(0) 编辑
摘要:mongodb 主从配置比较简单,只需要在启动的时候添加参数(-master、-slave -source IP:PORT)。 Ubuntu 16.04 系统环境 监听端口分别为:27010、27011、27012。配置后的环境为:27010为主,27011、27012为从。 1) 创建mongod 阅读全文
posted @ 2017-06-01 21:46 limeOracle 阅读(757) 评论(0) 推荐(0) 编辑
摘要:@DependsOn用于强制初始化其他Bean。可以修饰Bean类或方法,使用该Annotation时可以指定一个字符串数组作为参数,每个数组元素对应于一个强制初始化的Bean。 @Lazy用于指定该Bean是否取消预初始化。主要用于修饰Spring Bean类,用于指定该Bean的预初始化行为,使 阅读全文
posted @ 2017-06-01 12:03 limeOracle 阅读(11282) 评论(0) 推荐(1) 编辑
摘要:Class : SpringDynamicCornTask Console : 啦啦啦 啦啦啦 阅读全文
posted @ 2017-06-01 11:42 limeOracle 阅读(8118) 评论(0) 推荐(0) 编辑