1.前言 hi,大家好,我是三合,距离上一篇博客已经过去了整整两年,这两年里,博主通关了<人生>这个游戏里的两大关卡,买房和结婚.最近闲了下来,那么当然要继续写博客了,今天这篇博客的主要内容是,net core/.net6中,如何利用SummerBoot(点我打开详情介绍)中的feign模块快速接入微服务中心nacos(点我打开详情介绍),接下来我会从微服务的概念到feign的使用方法,由浅入深的进行介绍. 2.服务与实例 服务与实例的关系,可以类比为程序员与你我的关系,程序员是服务,我们是实…
首先简单解释一下什么是声明式实现? 要做一件事, 需要知道三个要素,where, what, how.即在哪里( where)用什么办法(how)做什么(what).什么时候做(when)我们纳入how的范畴. 1)编程式实现: 每一个要素(where,what,how)都需要用具体代码实现来表示.传统的方式一般都是编程式实现,业务开发者需要关心每一处逻辑 2)声明式实现: 只需要声明在哪里(where )做什么(what),而无需关心如何实现(how).Spring的AOP就是一种声明式实现,…
在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.Feign就是Spring Cloud提供的一种声明式REST客户端.可以通过Feign访问调用远端微服务提供的REST接口.现在我们就用Feign来调用SERVICE-HELLOWORLD暴露的REST接口,以获取到“Hello World”信息.在使用Feign时,Spring Cloud集成了Ribbon和Eureka来提供HTTP客户端的负载均衡…
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 前言 上一篇[.Net Core微服务入门全纪录(七)--IdentityServer4-授权认证]中使用IdentityServer4完成了鉴权中心的搭建,配合网关实现了统一的授权认证.进行到这里,系统环境已经比较复杂了,想把整个系统运行起来会非常繁琐:要运行Consul.业务服务.网关.鉴权中心.web客户端,还要安装数据库.MQ等等...那么本篇将使用Docker Compose来解决以上问题,仅需一个简单的命令,即可启动整个…
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 前言 上一篇[.Net Core微服务入门全纪录(八)--Docker Compose与容器网络]完成了docker-compose.yml文件的编写,最后使用docker compose的一个up指令即可在docker中运行整个复杂的环境.本篇简单介绍一下Ocelot与Swagger的集成,方便在网关项目中统一查看各个服务的api文档. 开始 首先,网关项目,服务项目 NuGet安装Swashbuckle.AspNetCore:…
系列目录 1.net core天马行空系列:原生DI+AOP实现spring boot注解式编程 2.net core天马行空系列: 泛型仓储和声明式事物实现最优雅的crud操作 哈哈哈哈,大家好,我就是高产似母猪的三合.日常开发中,我们常会遇到这样的场景,一个接口,有多个实现类,在某个业务中,我们希望指定某个实现类,如今网络上常见的解决方案,就是注入一个委托或者利用工厂模式,这些方式虽然能实现功能,但使用起来还是不够优雅,如何才称得上优雅呢?自然是在添加服务的时候给服务指定名称,注入的时候根据…
系列目录 1.net core天马行空系列:原生DI+AOP实现spring boot注解式编程 2.net core天马行空系列: 泛型仓储和声明式事物实现最优雅的crud操作 3.net core天马行空系列: 一个接口多个实现类,利用mixin技术通过自定义服务名,实现精准属性注入 4.net core天马行空系列:SummerBoot,将SpringBoot的先进理念与C#的简洁优雅合二为一 正文开始 hi,大家好,我就是高产似母猪的三合.距离上一篇文章,好像有点久了,我也不知道我都在干…
前言 写这篇博客主要目的是记录一下自己的学习过程,只能是简单入门级别的,因为水平有限就写到哪算哪吧,写的不对之处欢迎指正. 什么是微服务? 关于微服务的概念解释网上有很多... 个人理解,微服务是一种系统架构模式,它和语言无关,和框架无关,和工具无关,和服务器环境无关... 微服务思想是将传统的单体系统按照业务拆分成多个职责单一.且可独立运行的接口服务,各个服务之间不耦合.至于服务如何拆分,没有明确的定义. 几乎任何后端语言都能做微服务开发. 创建项目 一个客户端,一个产品服务,一个订单服务.3…
前言 上一篇[.Net Core微服务入门全纪录(一)--项目搭建]讲到要做到服务的灵活伸缩,那么需要有一种机制来实现它,这个机制就是服务注册与发现.当然这也并不是必要的,如果你的服务实例很少,并且很稳定,那么就没有必要使用服务注册与发现. 服务注册与发现 服务注册:简单理解,就是有一个注册中心,我们的每个服务实例启动时,都去注册中心注册一下,告诉注册中心我的地址,端口等信息.同样的服务实例要删除时,去注册中心删除一下,注册中心负责维护这些服务实例的信息. 服务发现:既然注册中心维护了各个服务实…
前言 上一篇[.Net Core微服务入门全纪录(二)--Consul-服务注册与发现(上)]已经成功将我们的服务注册到Consul中,接下来就该客户端通过Consul去做服务发现了. 服务发现 同样Nuget安装一下Consul: 改造一下业务系统的代码: ServiceHelper.cs: public class ServiceHelper : IServiceHelper { private readonly IConfiguration _configuration; public S…