adaptive

服务暴露流程

荒凉一梦 提交于 2019-12-25 18:31:39
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> com.alibaba.dubbo.config.spring.ServiceBean.export() com.alibaba.dubbo.config.ServiceConfig.doExport() com.alibaba.dubbo.config.ServiceConfig.doExportUrls() com.alibaba.dubbo.config.ServiceConfig.doExportUrlsFor1Protocol(ProtocolConfig protocolConfig, List<URL> registryURLs) Protocol&Adaptive.export(Invoker<T> invoker) com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export(Invoker<T> invoker) com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export(Invoker<T> invoker) com.alibaba.dubbo.qos.protocol.QosProtocolWrapper.export(Invoker<T> invoker) com

Dubbo Adaptive机制详解

送分小仙女□ 提交于 2019-12-07 10:55:17
Dubbo提供了一种SPI的机制用于动态的加载扩展类,但是如何在运行时动态的选用哪一种扩展类来提供服务,这就需要一种机制来进行动态的匹配。Dubbo SPI中提供的Adaptive机制就为解决这个问题提供了一种良好的解决方案,本文首先会通过一个示例来讲解Adaptive机制的用法,然后会从源码的角度对其实现原理进行讲解。 1. 用法示例 对应于Adaptive机制,Dubbo提供了一个注解 @Adaptive ,该注解可以用于接口的某个子类上,也可以用于接口方法上。如果用在接口的子类上,则表示Adaptive机制的实现会按照该子类的方式进行自定义实现;如果用在方法上,则表示Dubbo会为该接口自动生成一个子类,并且按照一定的格式重写该方法,而其余没有标注 @Adaptive 注解的方法将会默认抛出异常。对于第一种Adaptive的使用方式,Dubbo里只有 ExtensionFactory 接口使用了,其有一个子类 AdaptiveExtensionFactory 就使用了 @Adaptive 注解进行了标注,主要作用就是在获取目标对象时,分别通过 ExtensionLoader 和 Spring容器 两种方式获取,该类的实现原理比较简单,读者可自行阅读其源码,本文主要讲解将 @Adaptive 注解标注在接口方法上以实现Adaptive机制的使用原理。这里我们以一个"水果种植者

MySQL中的哈希索引

▼魔方 西西 提交于 2019-11-30 06:35:20
Memory中的哈希索引 哈希索引是基于哈希表实现的,只有精确匹配索引所有列的查询才有效。对于每一行数据,存储引擎都会对所有的索引列计算一个哈希码,哈希码是一个较小的值,并且不同键值的行计算出来的哈希码也不一样。哈希索引将所有的哈希码存贮在索引中,同时在哈希表中保存指向每个数据行的指针。 在MySQL中只 有Memory 引擎显式支持哈希索引。这也是 Memory 引擎表的默认索引类型。 Memory 引擎支持非唯一索引,这在数据库世界里是比较与众不同的。如果多个列的哈希值相同,索引会以链表的方式存放多个记录指针到同一个哈希列表中。 创建一个使用hash索引的表, CREATE TABLE testhash ( fname VARCHAR(50) NOT NULL, lname VARCHAR(50) NOT NULL, KEY USING HASH(fname) ) ENGINE=MEMORY; 用下式查询, mysql> SELECT lname FROM testhash WHERE fname='Peter'; mysql先计算“Peter”的哈希值,并使用该值寻找对应的记录指针。找到指针指向的行后,比较fname是否为“Peter”,以确保是查找的行。 因为索引自身只需存贮对应的哈希值,所以索引的结构十分紧凑,这也让哈希索引查找的速度非常快。 然而也有局限,懒得敲字了

DevExpress v18.1新版亮点——WinForms篇(四)

随声附和 提交于 2019-11-28 11:12:50
用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容。本文将介绍了DevExpress WinForms v18.1 的新功能,快来下载试用新版本! 点击下载>> Navigation UI Pager Navigation Radio Group和Windows UI Button Panel可以用作pager:Tile Control、Tile Bar、Navigation Frame和Image Slider。pager自动将目标控件的内容分割成单独的页面。 Tile Control - DirectX硬件加速 DevExpress WinForms Tile控件现在支持DirectX渲染,因此您可以创建高性能解决方案以便在高DPI设备上使用。 Fluent Design Form 新版本包含了新的Fluent Design Form,受全新的Microsoft Fluent Design System启发,其功能包括: Integrated Hamburger Menu Adaptive Layout Acrylic Material (部分透明的纹理) Reveal Highlight Acrylic Material和Reveal Highlight效果可在具有Windows 10 Spring