
Java
网名哈哈镜
简单,快乐生活!
展开
-
Dubbo集群容错
在集群条用失败时,dubbo提供了多种容错方案,缺省为failover重试通过配置 cluster=”failover”来设置。官方文档提供了一下选项 4.代码实现Dubbo集群容错测试 新建Maven工程。Dubbocolony1,Dubbocolony2,Dubbocolony3, Dubbocolony1实现一下功能package com.yncp.dubbo.service.原创 2016-08-05 15:30:24 · 723 阅读 · 0 评论 -
Dubbo参数回调
dubbo参数回调,参数回调方式与调用本地的callback或listener相同,只需要在spring的配置文件中声明哪个参数时callback类型即可,dubbo将基于长连接生成反向代理,这样就可以从服务器端调用客户端逻辑。 消费者提供者:package com.yncp.dubbo.entity;import java.io.Serializable;public class Compute原创 2016-08-08 14:57:37 · 5013 阅读 · 7 评论 -
Dubbo事件通知
dubbo在调用之前,之后,出现异常时,会触发oninvoke,onreturn,onthrow三个事件,可配置当事件发生时,通知那个类的那个方法。 如以下实现: 服务提供者:package com.yncp.dubbo.entity;import java.io.Serializable;public class Computer implements Serializable{ pri原创 2016-08-08 15:24:24 · 3727 阅读 · 0 评论 -
Dubbo延迟暴露
如果你的 服务需要warmup事件,比如初始化缓存,等待先关资源就位等,可以使用deplay进行延迟暴露。 延迟5秒暴露服务<dubbo:service delay="5000">延迟到spring初始化完成后,再暴露服务:<dubbo: service delay="-1">原创 2016-08-08 15:49:03 · 3782 阅读 · 0 评论 -
Dubbo并发控制
服务端并发执行(占用线程池线程数)不能超过10个。<dubbo:service interface="" execute="10"> ``` 2.限制客户端并发控制。 “`原创 2016-08-08 15:53:24 · 1998 阅读 · 0 评论 -
Dubbo延迟连接
延迟连接,用于减少长连接数,当有调用发起时,再创建长连接。<dubbo:service name="dubbo" lazy="true">原创 2016-08-08 15:54:45 · 3345 阅读 · 0 评论 -
Dubbo令牌验证
作用: 1.防止消费者绕过 注册中心访问提供者 2.在注册中心控制权限,以决定要不要下发令牌给消费者。 3.注册中心可灵活改变授权方式,而不需要修改或升级提供者。 可全局设置开启令牌验证:<dubbo:provider interface="" token="true">UUID生成随机令牌<dubbo:provider interface="" token="123456">固定toke原创 2016-08-08 16:23:09 · 10234 阅读 · 9 评论 -
Dubbo服务容器
dubbo服务的运行方式:使用servlet容器运行如tomcat,jeety等 自建Main方法类来运行。使用dubbo框架提供的Main方法类来运行spring 容器。 服务容器是一个standalone的启动程序,因为后台服务不需要tomcat或Jeety等web容器的功能,如果硬要使用web容器去加载服务提供方法,增加复杂性,浪费资源。 建议使用dubbo提供的Main方法类来运行原创 2016-08-12 11:29:36 · 2887 阅读 · 0 评论 -
linux下安装jdk
创建/usr/java文件夹。将下载好的jdk上传到此文件下。tar zxvf jdkcp /ect/profile /etc/profile.back .备份prfilevim /ect/profile下该文件最后加上以下内容export JAVA_HOME=/usr/java/jdk1.8export JRE_HOME=${JAVA_HOME}/jreexport CLASSPAT原创 2016-10-28 15:35:57 · 371 阅读 · 0 评论 -
优化tomcat提高网站的并发能力
配置tomcat管理员账户。 在conf/ tomcat-users.xml下添加用户:<role rolename="manager"/><role rolename="manager-gui"/><role rolename="admin"/><role rolename="admin-gui"/><user username="tomcat" password="tomcat" ro原创 2016-11-01 16:25:55 · 482 阅读 · 0 评论 -
solr服务搭建
一。安装solr服务 1. 安装jdk,安装tomcat. 2. 解压solr压缩包 3. 将solr下的dist/solr.war部署到tomcat下。 4. 启动tomcat解压war包 5. 将example/lib/ext目录下的所有的jar包拷贝到solr工程web-info/lib下 6. 创建solrhome目录,将example/solr文件夹复制一份作为so原创 2016-11-23 10:07:24 · 806 阅读 · 0 评论 -
Dubbo异步调用
dubbo提供基于NIO的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小。 消费提供者代码:package com.yncp.dubbo.service;public interface IDubboAnsycService { public int add(Integer x, Integer y); public int multi(I原创 2016-08-08 14:39:18 · 2288 阅读 · 0 评论 -
Dubbo隐式传参
dubbo通过客户端向服务器端传递参数,传递参数时path,group,version,dubbo,token,timeout即可key有特殊处理,不能使用这几个特殊key 服务提供方使用RpcContext.getContext() .getAttachments();获取参数, 服务器消费方使用 Rp原创 2016-08-08 14:21:31 · 10016 阅读 · 1 评论 -
ActiveMQ实现消息队列发送邮件
新建yncp.mq.mailservice工程,编写以下类Mail类 package com.yncp.mq.entity; /*** * 邮件实体 * @author Administrator * */public class Mail { /** 发件人 **/ private String from; /** 收件人 **/ private原创 2016-08-17 14:05:14 · 9123 阅读 · 3 评论 -
windows下安装redis
1.https://github.com/dmajkic/redis/downloads下载redis版本。高版本在官网下载。32位版本在高版本中没有了。 2.解压下载的redis版本。cmd命令模式下切换到解压目录。运行 redis-server.exe redis.conf.即可启动redis.原创 2016-08-17 16:17:13 · 727 阅读 · 0 评论 -
Dubbo线程模型
dubbo提供了事件处理线程。对于dubbo事件处理线程说明如果处理的逻辑能迅速完成,并且不会发起新的Io请求,比如只是在内存中记个标识,则直接在IO线程上处理更快,因为减少了线程池调度。如果事件处理逻辑较慢,或者血药发起新的IO请求,比如血药查询 数据库,则必须派发到线程池,否则IO线程阻塞,将导致不能接受其他请求。如果使用IO线程处理事件,又在事件处理过程中发起了新的IO请求,比如在连接事原创 2016-08-07 09:28:44 · 3412 阅读 · 0 评论 -
Dubbo多注册中心
Dubbo提供多注册中心。以下是Dubbo多注册中心的2种配置。多注册中心注册 对同一个服务,需要在不同地方部署,但是某些地方没有部署,而这个地方的应用有需要引用此服务,就可以将这个服务同时注册到不同的注册中心上。 不同服务使用不同的注册中心。原创 2016-08-08 09:45:04 · 774 阅读 · 0 评论 -
Dubbo服务分组
Dubbo提供服务分组,用于当一个接口有多种实现时,可用使用group分组。实现代码如下:package com.yncp.dubbo.service;public interface IDubboGroupService { public String print(); }package com.yncp.dubbo.service.impl;import com.yncp.dub原创 2016-08-08 10:21:57 · 22201 阅读 · 0 评论 -
Dubbo多版本
当一个接口实现,出现不兼容升级时,可用使用版本号过度,版本号不同的服务间不引用。实现代码如下: 服务器端代码实现:package com.yncp.dubbo.service;public interface IDubboVersionService { public String Version(); }package com.yncp.dubbo.service.impl原创 2016-08-08 10:44:29 · 3163 阅读 · 0 评论 -
Dubbo分组聚合
按组合并返回结果,比如菜单服务,接口一样,但有多种实现,用group区分,现在消费方需要从每种group中调用一次返回结果,合并结果返回,这样就可以实现聚合菜单项。 实现代码如下:服务器端实现。package com.yncp.dubbo.service;import java.util.List;import java.util.Map;public interface IDubboMer原创 2016-08-08 11:09:20 · 4097 阅读 · 1 评论 -
Dubbo结果缓存
dubbo提供申明式缓存,以减少用户缓存的工作量。lru 基于最近最少使用原则删除多余缓存,保持最热的数据被缓存。threadlocal 当前线程缓存,比如一个页面渲染,用到很多的portal,每个portal都要去查询用户信息,通过线程缓存,可以减少这种多余访问。jcache与jsr107集成,可以桥接各种缓存实现。原创 2016-08-08 12:19:02 · 1191 阅读 · 0 评论 -
Dubbo泛化实现
dubbo泛化实现方式主要用于服务器端没有API借口及横型类元的情况,参数及返回值中的所有POJO均使用Map表示,通常用于框架集成。比如:实现一个通用的远程服务,可通过实现GenenricService接口实现所有服务请求。 如如下服务实现:package com.yncp.dubbo.service;import java.util.Date;import com.alibaba.dubb原创 2016-08-08 13:28:06 · 2340 阅读 · 2 评论 -
Dubbo泛化引用
泛接口调用方式主要用于客户端没有API接口及模型类元的情况,参数及返回值中的所用POJO均使用Map表示,通常用于框架集成,比如:实现一个通用的服务测试框架,可通过GenericService调用所有服务实现。 实现代码如下: 服务器端代码:package com.yncp.dubbo.entity;import java.io.Serializable;public class Compute原创 2016-08-08 13:57:45 · 4112 阅读 · 0 评论 -
solr测试
public class SolrTest extends TestCase { public void testSolrJ() throws Exception { SolrServer solrServer = new HttpSolrServer( "http://192.168.1.111:8080/solr"); //原创 2016-11-23 10:52:50 · 635 阅读 · 0 评论