异构服务器 微服务_Spring Cloud Alibaba Sidecar 多语言微服务异构
Spring Cloud Alibaba Sidecar 介绍
自 Spring Cloud Alibaba 2.1.1 版本后增加了 spring-cloud-alibaba-sidecar 模块作为作为一个代理的服务来间接性的让其他语言可以使用spring cloud alibaba等相关组件。通过与网关的来进行路由的映射,从而可以做到服务的获取,然后可以使用Ribbon间接性调用。
如上图, Spring Cloud 应用 请求 sidercar 然后转发给其他语言的模块,优势是对于异构服务代码 零侵入,不需要直接根据 nacos 或其他注册中心 api 注册等
使用入门
构建其他语言接口服务
- 基于go 写个简单的服务接口
http://127.0.0.1:8089/sidecar
package mainimport ("encoding/json""fmt""log""net/http")func main() {http.HandleFunc("/sidecar", sidecar)http.HandleFunc("/heath", health)log.Fatal(http.ListenAndServe(":8089", nil))}func sidecar(w http.ResponseWriter, r *http.Request) {_, _ = fmt.Fprintf(w, "hello spring cloud alibaba sidecar")}func health(w http.ResponseWriter, r *http.Request) {w.Header().Set("Content-Type", "application/json")actuator := make(map[string]string)actuator["status"] = "UP"_ = json.NewEncoder(w).Encode(actuator)}
构建 sidercar 应用
- 增加 sidecar 依赖
com.alibaba.cloudspring-cloud-starter-alibaba-sidecar2.1.1.RELEASE
- 配置 application.yml
server: port: 8088spring: cloud: nacos: discovery: server-addr: localhost:8848 application: name: go-provider# 配置异构服务sidecar: ip: localhost port: 8089 health-check-url: http://localhost:8089/health
构建 nacos consumer应用
- application.yml
server: port: 8087spring: cloud: nacos: discovery: server-addr: localhost:8848 application: name: nacos-consumer
- consumer 逻辑
@RestController@EnableDiscoveryClient@SpringBootApplicationpublic class NacosConsumerApplication { public static void main(String[] args) { SpringApplication.run(NacosConsumerApplication.class, args); } @Bean @LoadBalanced public RestTemplate restTemplate() { return new RestTemplate(); } @Autowired private RestTemplate restTemplate; @GetMapping("/test") public String test() { return restTemplate.getForObject("http://go-provider/sidecar", String.class); }}
测试使用
- 访问spring cloud consumer 应用
curl http://localhost:8087/test
- 输出 go-provider应用
hello spring cloud alibaba sidecar
获取资料:
最后给大家分享一份学习资料,里面包括:(BATJ面试资料、高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)和Java进阶学习路线图。
戳这里即可领取-->正在跳转
异构服务器 微服务_Spring Cloud Alibaba Sidecar 多语言微服务异构相关推荐
- rocketmq 消费者不能调用其他服务_Spring Cloud Alibaba RocketMQ - 构建异步通信的微服务...
引入MQ后的架构演进 MQ的选择 消息队列对比参照表: RocketMQ vs. ActiveMQ vs. Kafka: 参考至: CentOS7上搭建RocketMQ 环境要求: CentOS 7. ...
- Spring Cloud Alibaba 学无止境:下一代微服务架构的规划与展望
终于到了课程的最后一讲,本讲我们将对整个微服务架构和 Spring Cloud Alibaba 进行总结和展望.Spring Cloud Alibaba 是优秀的国产微服务架构解决方案,在基于 Spr ...
- nacos 负载策略_Spring Cloud Alibaba:Nacos 作为注册中心和配置中心使用
Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案,Nacos 作为其核心组件之一,可以作为注册中心和配置中心使用,本文将对其用法进行详细介绍. SpringCloud实战 ...
- gateway sentinel 熔断 不起作用_Spring Cloud Alibaba集训营第五天(服务熔断和限流)
前言:为什么需要流控降级 我们的生产环境经常会出现一些不稳定的情况,如: 大促时瞬间洪峰流量导致系统超出最大负载,load 飙高,系统崩溃导致用户无法下单 "黑马"热点商品击穿缓存 ...
- com 组件调用不起来_Spring Cloud Alibaba训练营 —— 分布式服务调用
注意:用手机查看排版可能不太友好, 1. 简介 在<Spring Cloud Alibaba 服务注册与发现>篇中曾提到,Spring Cloud Alibaba Nacos Discov ...
- com 组件调用不起来_Spring Cloud Alibaba,分布式服务调用(四)
1. 简介 在<Spring Cloud Alibaba 服务注册与发现>篇中曾提到,Spring Cloud Alibaba Nacos Discovery 能无缝整合 Spring C ...
- eureka需要替换吗_Spring Cloud Alibaba迁移指南1:零代码从Eureka迁移到Nacos
作者:得少,校对:周立. 在本号首发,欢迎转载. Spring Cloud官方宣布Spring Cloud Netflix进入维护状态,后续不再会有新的功能已成为事实. 作为开发者,如何使用极简的方式 ...
- Spring cloud alibaba(二)nacos服务发现docker相同ip冲突
引入服务发现其实比较简单 项目架构:同Spring cloud alibaba(一)多模块项目整合 spring cloud - pay - smdd - coupon - base - order- ...
- Linux启动nacos成功日志_Spring Cloud Alibaba基础教程:使用Nacos作为配置中心
通过本教程的前两篇: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方 ...
最新文章
- 织梦 ajax 返回,Dede织梦arclist标签+Ajax实现织梦首页分页-叙述织梦
- 比起VR高端设备市场,三星或对移动VR平台更感兴趣
- Spring Boot Serverless 实战 | Serverless 应用的监控与调试
- python yield和yieldfrom,Python:对于yield与yield from 的理解
- 做生意成败难料,你见过亏损最惨的人有多惨呢?
- 大型网站技术架构(一)大型网站架构演化
- Matlab 7.1安装及打不开问题解决
- java其他进程,Java进程优先于其他Windows进程
- I00023 鸡兔同笼解法二
- linux删除eth2设备_Linux卸载/删除多余网卡
- 文档级关系抽取方法总结
- 使用标尺工具获取某点的坐标
- 几种主流的分布式定时任务
- Kaggle注册及绑定手机号
- 阿里行癫分享“从技术支撑业务、技术赋能业务,到技术创建新商业”
- 424. Longest Repeating Character Replacement
- python 日历热力图_pyecharts日历热力图
- python连接mysql输出数据库结构docx文档
- 不要小看 WebSocket!长连接、有状态、双向、全双工都是王炸技能
- 线性代数(1)- 向量空间
热门文章
- net.sf.fmj.media.cdp.civil.CaptureDevicePlugger addCaptureDevices解决方法
- ASP.NET夜话之21:asp.net网站的性能优化
- CheckedListBox扩展方法代码
- 去除并替换hselect框右边的箭头的css方法
- 怎么注销midas服务器程序,MIDAS的服务器镜像技术
- java选择排序解释_选择排序
- 计算机在职考研一月联考院校,在职研究生一月联考的分数线是多少?
- 中的实践 中兴_中兴通讯王卫斌:一步到位 构建5G 2B新商业
- java 队列复制_java - 复制堆栈或队列,而无需使用“克隆” - 堆栈内存溢出
- php如何获得文件数量,PHP:获取目录中文件数量的最有效方法