利用工具查看JMS微服务在线情况,可直接调用远程方法,也可自动生成微服务客户端代码

如果在线的微服务是Debug模式,可以点击【获取客户端代码】,直接生成该微服务的客户端访问代码。
生成的客户端代码大概如下格式:(如果微服务编译时,生成.xml注释文件,那么客户端代码,也会伴有注释)
namespace DemoSys.WebApi.MicroServices
{
[InvokerInfo("UserAccountService")]
public class UserAccountService : IImplInvoker
{
.....
}
}
这样,客户端要访问微服务,则可以这么写
using (var client = new MicroServiceClient())
{
var service = client.GetMicroService<MicroServices.UserAccountService>();
return service.GetUserAccount(this.UserInfo.userid , "USDT");
}
MicroServiceClient是RemoteClient的派生类,简单封装一下,用起来方便一些
public class MicroServiceClient : RemoteClient
{
static NetAddress[] GatewayAddresses;
static IConfiguration Configuration;
static MicroServiceClient()
{
var builder = new ConfigurationBuilder();
builder.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
Configuration = builder.Build();
ConfigurationChangeCallback(null);
} static void ConfigurationChangeCallback(object p)
{
Configuration.GetReloadToken().RegisterChangeCallback(ConfigurationChangeCallback, null); GatewayAddresses = Configuration.GetSection("Gateways").Get<NetAddress[]>();
}
public MicroServiceClient():base(GatewayAddresses , null , Global.ServiceProvider.GetService<ILogger<JMSClient>>())
{ }
}
利用工具查看JMS微服务在线情况,可直接调用远程方法,也可自动生成微服务客户端代码的更多相关文章
- 利用wsdl2java工具生成webservice的客户端代码
1.JDK环境 2.下载apache-cxf发布包:http://cxf.apache.org/download.html 目前最新版本为3.2.6, 解压后如下: 解压发布包,设置CXF_HOME ...
- SpringCloud微服务实战——搭建企业级开发框架(四十四):【微服务监控告警实现方式一】使用Actuator + Spring Boot Admin实现简单的微服务监控告警系统
业务系统正常运行的稳定性十分重要,作为SpringBoot的四大核心之一,Actuator让你时刻探知SpringBoot服务运行状态信息,是保障系统正常运行必不可少的组件. spring-b ...
- 利用strut2标签自动生成form前端验证代码
利用strut2标签自动生成form前端验证代码,使用到的技术有1.struts2标签,如<s:form> <s:textfieled>2.struts2读取*Validati ...
- 使用java的wsimport.exe工具生成wsdl的客户端代码
在jdk的bin目录下有一个wsimport.exe的工具,使用该工具可以根据wsdl地址生成java的客户端代码. 常用命令如下: wsimport -keep -d d:\ -s d:\src ...
- SpringCloud微服务实战——搭建企业级开发框架(四十五):【微服务监控告警实现方式二】使用Actuator(Micrometer)+Prometheus+Grafana实现完整的微服务监控
无论是使用SpringBootAdmin还是使用Prometheus+Grafana都离不开SpringBoot提供的核心组件Actuator.提到Actuator,又不得不提Micrometer ...
- 利用mybatis-generator自动生成数据持久化的代码
MyBatis生成器简介 MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将生成所有版本的MyBatis的代码,以及版本2.2.0之后的iB ...
- SpringCloud微服务实战——搭建企业级开发框架(十一):集成OpenFeign用于微服务间调用
作为Spring Cloud的子项目之一,Spring Cloud OpenFeign以将OpenFeign集成到Spring Boot应用中的方式,为微服务架构下服务之间的调用提供了解决方案.首先, ...
- SpringCloud微服务实战——搭建企业级开发框架(八):使用注解校验微服务消息参数
平时开发过程中,经常要用到参数校验,如果直接在代码逻辑里面写参数校验,代码有点冗余且用起来不是非常方便,显得代码逻辑复杂且重复代码太多,这里我们使用注解的方式进行参数校验,SpringBoot中常 ...
- 用MyEclipse自带工具生成WebService客户端代码
本文章主要是介绍如何利用已经发布了的Webservice的wsdl来自动生成java的客户端代码.注意:本方法需要你采用的java版本是1.5或者以上的版本,采用MyEclipse来自动生成代码. w ...
- 微服务实战(一):微服务架构的优势与不足 - DockOne.io
原文:微服务实战(一):微服务架构的优势与不足 - DockOne.io [编者的话]本文来自Nginx官方博客,是微服务系列文章的第一篇,主要探讨了传统的单体式应用的不足,以及微服务架构的优势与挑战 ...
随机推荐
- ElasticSearch之cat data frame analytics API
命令样例如下: curl -X GET "https://localhost:9200/_cat/ml/data_frame/analytics?v=true&pretty" ...
- Pikachu漏洞靶场 RCE(远程命令执行/代码执行)
RCE 文章目录 RCE 概述 exec "ping" exec "eval" 概述 RCE(remote command/code execute),远程命令 ...
- Vue.js 原理分析
本文内容提炼于<Vue.js设计与实现>,全书共 501 页,对 Vue.js 的设计原理从 0 到 1,循序渐进的讲解. 篇幅比较长,需要花些时间慢慢阅读,在合适的位置会给出在线示例以供 ...
- 为什么MySQL单表不能超过2000万行?
摘要:MySQL一张表最多能存多少数据? 本文分享自华为云社区<为什么MySQL单表不能超过2000万行?>,作者: GaussDB 数据库 . 最近看到一篇<我说MySQL每张表最 ...
- 智能对联模型太难完成?华为云ModelArts助你实现!手把手教学
摘要:农历新年将至,听说华为云 AI 又将开启智能对对联迎接牛气冲天,让我们拭目以待!作为资深 Copy 攻城狮,想要自己实现一个对对联的模型,是不能可能完成的任务,因此我搜罗了不少前人的实践案例,今 ...
- 送你5个MindSpore算子使用经验
摘要:MindSpore给大家提供了很多算子进行使用,今天给大家简单介绍下常用的一些算子使用时需要注意的内容. 本文分享自华为云社区<[MindSpore易点通]算子使用经验总结>,作者: ...
- CNCF即将推出平台成熟度模型丨亮点导览
今年年初,云原生计算基金会(CNCF)发布了平台白皮书(点击这里查看中文版本).白皮书描述了云计算内部平台是什么,以及它们可以为企业提供的价值. 为了进一步挖掘平台对企业的价值,为企业提供一个可以评估 ...
- Mac 复制文件名目录路径
Mac快速复制文件路径 在Mac电脑上,我们经常需要复制文件的路径,其实,Mac系统提供了快速复制文件路径的方法.下面我们来详细介绍. 方法一:使用菜单栏 首先,打开Finder,然后选择你要复制路径 ...
- Java Bean 注册对象
注册对象 POM.xml <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-al ...
- 干掉 LaTeX !用BookDown写本书
Bookdown是著名R包作者谢益辉开发的,支持采用Rmarkdown (R代码可以运行)或普通markdown编写文档,然后编译成HTML, WORD, PDF, Epub等格式. bookdown ...