文档章节

对Mainstay配置的初步理解

AlphaGo
 AlphaGo
发布于 2016/03/23 00:41
字数 614
阅读 168
收藏 0

通过Mainstay调用远程服务:

在集成MainstaySpringjarmainstay-spring-2.0.2-xdcstest.jar包中,提供了这么几个类:

com.ximalaya.mainstay.spring.config.ClientConfig:用来配置MainstayClient端的属性

com.ximalaya.mainstay.spring.config.ServerConfig:用来配置MainstayServer端的属性

com.ximalaya.mainstay.spring.config.ConnectionPoolConfig:连接池配置类

com.ximalaya.mainstay.spring.config.MainstayConfig:用来配置Mainstay的属性

以及

com.ximalaya.mainstay.spring.thrift.MainstayClient:作为Mainstay客户端

com.ximalaya.mainstay.spring.thrift.MainstayServer:作为Mainstay服务端


如果本机是客户端,需要调用远程服务,则在本机进行客户端的配置

        从mainstay-context.xml配置文件(专辑推荐中为远程调用用户基础服务和专辑基础服务而拓展的Mainstay上下文,通过<import resource="classpath:mainstay-context.xml"/>导入到Spring配置文件中)中可以看到: 

        对于专辑服务,此处分别注入了:ConnectionPoolConfigClientConfigMainstayConfig这三个配置bean,然后注入了MainstayClient作为Mainstay客户端,并引用前面三个bean作为其配置。程序中通过MainstayClient提供的com.ximalaya.service.album.api.IAlbumFacadeHandler.Iface接口进行远程调用(由Thrift实现);用户基础服务同理。

 

如果本机是服务端,提供服务以供远程机器调用,则在本机进行服务端的配置

        从application-mainstay-server-context.xml配置文件(专辑推荐中为搜索提供专辑推荐服务而拓展的Mainstay上下文,通过<import resource="classpath:application-mainstay-server-context.xml"/>导入到Spring配置文件中)中可以看到:

        此处分别注入了:ServerConfigMainstayConfig这两个配置bean(相对于客户端这里少了ConnectionPoolConfig是因为作为提供服务的一端无需配置连接信息),然后注入了MainstayServer作为Mainstay服务端,并引用前面两个bean作为其配置。程序中通过MainstayServer中的com.ximalaya.recommendation.service.impl.RemoteGetRecmmdAlbumService接口实现来提供远程调用服务(由Thrift实现)

 

注:通常将Mainstay的配置信息单独放在一个配置文件mainstay.properties中,然后通过<util:properties id="mainstay" location="classpath:mainstay.properties" />将其引入并对以上提到的各个类进行配置。


© 著作权归作者所有

AlphaGo
粉丝 0
博文 9
码字总数 7769
作品 0
程序员
私信 提问
2017-05-04日志

1,了解AngularJS基本属性及简单实用,并在菜鸟教程实战进行代码操作 2,新建maven+jfinal+AngularJS工程,进行初步的框架配置 3,学习原生Ajax原理 4,新建工程做到单表数据在页面的显示,卡在...

麦兜鱼丸
2017/05/04
2
0
ASP.NET开源博客QBlog开发者视频教程:开篇-开发基础配置与系统运行(一)

前言: 经过初步的调查与反馈:秋色园QBlog高性能博客源码你下载了吗? 后续调查与反馈 发现很多新学者对开源博客秋色园QBlog的源码理解与掌握,存在着一定的困难。 因此,录制了这个视频,来...

路过秋天
2011/06/25
223
0
八.动画之Scale标签的使用

前言 之前的话,我们对动画有一个初步的了解,知道动画分视图动画和属性动画两种,然后视图动画包括TweenAnimation和FrameAnimation,属性动画包括VauleAnimation和ObjectAnimation。也对动画...

奔跑的佩恩
05/23
0
0
初步框架方案

此项目核心分三块(爬虫引擎,数据存储,web界面以及restful api) 爬虫引擎 采用webmagic作为框架 webmagic的是一个无须配置、便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即...

OSC闲人
2016/01/22
3
0
php内核分析(四)-do_cli

这里阅读的php版本为PHP-7.1.0 RC3,阅读代码的平台为linux # main 把剩下的代码增加了下注释全部贴出来了(这个是简化后的main函数,去掉了一些无关紧要的代码段): 其实看伪码很简单: ...

王二狗子11
2018/01/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习之模块

1、 stub_status模块: 用于展示nginx处理连接时的状态。 配置语法如下: Syntax:stub_status;Default:默认没有配置Context:server、location 可以编辑default.conf,加上如下配置: ...

码农实战
55分钟前
4
0
MySQL,必须掌握的6个知识点

目录 一、索引B+ Tree 原理 MySQL 索引 索引优化 索引的优点 索引的使用条件 二、查询性能优化使用 Explain 进行分析 优化数据访问 重构查询方式 三、存储引擎InnoDB MyISAM 比较 四、数据类...

李红欧巴
58分钟前
5
0
堆”和“栈

C++作为一款C语言的升级版本,具有非常强大的功能。它不但能够支持各种程序设计风格,而且还具有C语言的所有功能。我们在这里为大家介绍的是其中一个比较重要的内容,C++内存区域的基本介绍。...

SibylY
今天
4
0
总结:Https

一、介绍 简单理解,https即在http协议的基础上,增加了SSL协议,保障数据传输的安全性。 它由以前的http—–>tcp,改为http——>SSL—–>tcp;https采用了共享密钥加密+公开密钥加密的方式 ...

浮躁的码农
今天
6
0
数据库表与表之间的一对一、一对多、多对多关系

表1 foreign key 表2 多对一:表 1 的多条记录对应表 2 的一条记录 利用foreign key的原理我们可以制作两张表的多对多,一对一关系 多对多: 表1的多条记录可以对应表2的一条记录 表2的多条记...

Garphy
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部