网关部署 1.在网关服务器上,安装.net core 3.1运行环境: 2.到 https://www.cnblogs.com/IWings/p/13354541.html 下载Gateway.zip,解压到网关服务器 3.打开appsettings.json配置文件,修改里面的配置,我的配置如下所示: { "Port": , "UnLockKeyTimeout": , //当微服务掉线后,lockkey有效期(单位:毫秒) "DataFolder&quo…
前言 在微服务开发中,存在诸多的开发痛点,例如分布式事务.全链路跟踪.限流降级和服务平滑上下线等.而在这其中,分布式事务是最让开发者头痛的.那分布式事务是什么呢? 分布式事务就是指事务的参与者.支持事务的服务器.资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上.简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败.本质上来说,分布式事务就是为了保证不同数据库的数据一致性.或者,在换一…
1.什么是锁 锁是为了解决多线程或者多进程资源竞争的问题. 同一进程的多个线程资源竞争可以用lock解决. lock 关键字可确保当一个线程位于代码的临界区时,另一个线程不会进入该临界区. 如果其他线程尝试进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放. class Test { //定义一个私有成员变量,用于Lock private static object lockobj = new object(); void DoSomething() { lock (lockobj)…
eShopOnContainers eShopOnContainers是微软官方的微服务架构示例,GitHub地址https://github.com/dotnet-architecture/eShopOnContainers 在eShopOnContainers架构中有一个使用RabbitMQ实现的EventBus(事件总线),EventBus使用的是发布订阅模式, 使用事件驱动,使得有了一个新需求后直接添加对应Handler并注册订阅即可,符合单一职责原则.下在就详细说说我是如果把eShop…
原文链接:https://www.javazhiyin.com/5130.html 微服务开发专栏:https://www.javazhiyin.com/category/springcloud Ribbon是什么? Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具. 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起.Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等.…
Java生鲜电商平台-SpringCloud微服务开发中的数据架构设计实战精讲 Java生鲜电商平台:   微服务是当前非常流行的技术框架,通过服务的小型化.原子化以及分布式架构的弹性伸缩和高可用性,可以实现业务之间的松耦合.业务的灵活调整组合以及系统的高可用性.为业务创新和业务持续提供了一个良好的基础平台.本文包括下面若干内容. 1.微服务技术框架中的多层数据架构设计 2.数据架构设计中的要点 3.要点1:数据易用性 4.要点2:主.副数据及数据解耦 5.要点3:分库分表 6.要点4:多源数据…
1.Anno简介? Anno是一个微服务框架引擎.入门简单.安全.稳定.高可用.全平台可视化监控.依赖第三方框架少.详情请查看<[开源].net微服务开发引擎Anno开源啦> 本章主题:.net微服务开发引擎Anno 让复杂的事简单点- 日志.链路追踪一目了然 1.链路追踪和用户自定义日志挂钩 在前面我们已经了解到Anno 可以监控整个微服务集群的状态,包括CPU.内存.硬盘.访问量等等.一个不可监控的微服务平台是可怕的,出了问题 难以准确定位问题的根源.在市面上微服务框架很多都没有链路追踪功…
[内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https://docs.docker.com/docker-for-mac/install/  2.Windows适用Docker下载地址:https://docs.docker.com/docker-for-windows/install/  二.Mac下安装Docker 1.双击下载好的Docker.dm…
[内容指引] 1.用IDEA打开微服务项目; 2.更新Maven依赖: 3.IntelliJ IDEA JDK配置; 4.修改代码: 5.运行微服务: 6.将代码变更提交到Github. 经过前面的努力,我们已经为Spring Cloud微服务开发准备好了合适的环境.目前我们的操作系统上已安装了JDK.IntelliJ IDEA高效开发工具.Maven项目管理工具.Docker和Mysql等镜像.Github代码版本管理工具Github Desktop.今天我们小试牛刀,来个体验级的综合演练:…
简介 api网关是提供给外部调用的统一入口,类似于dns,所有的请求统一先到api网关,由api网关进行指定内网链接. ocelot是基于netcore开发的开源API网关项目,功能强大,使用方便,它包含了负载均衡.路由.请求聚合.服务发现.权限认证等功能. 基础准备 开发环境:vs2017 netcore:2.1 新建项目    netcore安装ocelot install-package Ocelot  安装ocelot组件 配置ocelot 1.添加ocelotSettings.json…