草庐IT

基于Kubernetes(k8s)部署Dubbo+Nacos服务

一、说明本文介绍基于Kubernetes(k8s)环境集成阿里云私有镜像仓库来部署一套Dubbo+Nacos的微服务系统,并使用KubernetesDNS以及port-forward的方式来打通网络访问。k8s环境搭建参考文章《基于minikube快速搭建kubernetes单节点环境》中在阿里云镜像仓库构建的镜像来进行部署。基于《基于jib-maven-plugin快速构建微服务docker镜像》中在阿里云镜像仓库构建的镜像来进行部署。 二、部署MySQL创建配置文件mysql-local.yaml内容如下:apiVersion:v1kind:ReplicationControllermet

基于Kubernetes(k8s)部署Dubbo+Nacos服务

一、说明本文介绍基于Kubernetes(k8s)环境集成阿里云私有镜像仓库来部署一套Dubbo+Nacos的微服务系统,并使用KubernetesDNS以及port-forward的方式来打通网络访问。k8s环境搭建参考文章《基于minikube快速搭建kubernetes单节点环境》中在阿里云镜像仓库构建的镜像来进行部署。基于《基于jib-maven-plugin快速构建微服务docker镜像》中在阿里云镜像仓库构建的镜像来进行部署。 二、部署MySQL创建配置文件mysql-local.yaml内容如下:apiVersion:v1kind:ReplicationControllermet

阿里一面:说一说Java、Spring、Dubbo三者SPI机制的原理和区别

大家好,我是三友~~今天来跟大家聊一聊Java、Spring、Dubbo三者SPI机制的原理和区别。其实我之前写过一篇类似的文章,但是这篇文章主要是剖析dubbo的SPI机制的源码,中间只是简单地介绍了一下Java、Spring的SPI机制,并没有进行深入,所以本篇就来深入聊一聊这三者的原理和区别。什么是SPISPI全称为ServiceProviderInterface,是一种动态替换发现的机制,一种解耦非常优秀的思想,SPI可以很灵活的让接口和实现分离,让api提供者只提供接口,第三方来实现,然后可以使用配置文件的方式来实现替换或者扩展,在框架中比较常见,提高框架的可扩展性。简单来说SPI是

阿里一面:说一说Java、Spring、Dubbo三者SPI机制的原理和区别

大家好,我是三友~~今天来跟大家聊一聊Java、Spring、Dubbo三者SPI机制的原理和区别。其实我之前写过一篇类似的文章,但是这篇文章主要是剖析dubbo的SPI机制的源码,中间只是简单地介绍了一下Java、Spring的SPI机制,并没有进行深入,所以本篇就来深入聊一聊这三者的原理和区别。什么是SPISPI全称为ServiceProviderInterface,是一种动态替换发现的机制,一种解耦非常优秀的思想,SPI可以很灵活的让接口和实现分离,让api提供者只提供接口,第三方来实现,然后可以使用配置文件的方式来实现替换或者扩展,在框架中比较常见,提高框架的可扩展性。简单来说SPI是

Dubbo SPI自适应扩展和IOC

前言书接上回,本文主要研究DUBBOSPI机制中的IOC和自适应扩展上文中我们定义了一个抽象的汽车接口Car,并提供两个实现别克(Buick)和奥迪(Audi)//车@SPIpublicinterfaceCar{voidrun();}//奥迪车publicclassAudiimplementsCar{@Overridepublicvoidrun(){System.out.println("Audiisrunning");}}//别克车publicclassBuickimplementsCar{@Overridepublicvoidrun(){System.out.println("Buicki

Dubbo SPI自适应扩展和IOC

前言书接上回,本文主要研究DUBBOSPI机制中的IOC和自适应扩展上文中我们定义了一个抽象的汽车接口Car,并提供两个实现别克(Buick)和奥迪(Audi)//车@SPIpublicinterfaceCar{voidrun();}//奥迪车publicclassAudiimplementsCar{@Overridepublicvoidrun(){System.out.println("Audiisrunning");}}//别克车publicclassBuickimplementsCar{@Overridepublicvoidrun(){System.out.println("Buicki

手写Dubbo SPI机制和源码解析

版本2.7.8SPI机制官方文档介绍如下SPI全称为ServiceProviderInterface,是一种服务发现机制。SPI的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过SPI机制为我们的程序提供拓展功能。说白了,SPI是一种第三方框架常用的扩展手段:第三方框架定义接口,使用者来写实现类,通过SPI机制框架运行时可以获取到这个实现类,通过反射创建对象,并使用这个对象来继续完成业务SPI机制所以通过SPI机制,第三方框架可以将某一段业务逻辑交由使用者自定义实现比如Dubbo的负载均衡

手写Dubbo SPI机制和源码解析

版本2.7.8SPI机制官方文档介绍如下SPI全称为ServiceProviderInterface,是一种服务发现机制。SPI的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过SPI机制为我们的程序提供拓展功能。说白了,SPI是一种第三方框架常用的扩展手段:第三方框架定义接口,使用者来写实现类,通过SPI机制框架运行时可以获取到这个实现类,通过反射创建对象,并使用这个对象来继续完成业务SPI机制所以通过SPI机制,第三方框架可以将某一段业务逻辑交由使用者自定义实现比如Dubbo的负载均衡

盘古开发框架集成 ShenYu 网关实现 Dubbo 泛化调用

盘古开发框架下实现微服务网关的缺省姿势为基于pangu-web模块的传统接口调用模式,具体请参考文档:如何发布微服务(API网关)。本文提供另外一种通过集成ApacheShenYu实现网关泛化调用Dubbo服务将其发布为HTTP接口的可选方法。ShenYu网关介绍ShenYu网关基于Webflex非阻塞模型通过泛化调用后端Dubbo服务。依赖Netty不需要Servlet容器,不需要引入服务接口包即可通过Dubbo泛化调用服务接口的方式就可以将后端Dubbo服务转换为HTTPAPI。同时网关支持鉴权、动态限流、熔断、防火墙、灰度发布等。相关名词解释shenyu-admin网关插件和元数据信息配

盘古开发框架集成 ShenYu 网关实现 Dubbo 泛化调用

盘古开发框架下实现微服务网关的缺省姿势为基于pangu-web模块的传统接口调用模式,具体请参考文档:如何发布微服务(API网关)。本文提供另外一种通过集成ApacheShenYu实现网关泛化调用Dubbo服务将其发布为HTTP接口的可选方法。ShenYu网关介绍ShenYu网关基于Webflex非阻塞模型通过泛化调用后端Dubbo服务。依赖Netty不需要Servlet容器,不需要引入服务接口包即可通过Dubbo泛化调用服务接口的方式就可以将后端Dubbo服务转换为HTTPAPI。同时网关支持鉴权、动态限流、熔断、防火墙、灰度发布等。相关名词解释shenyu-admin网关插件和元数据信息配