当前位置: 首页 > news >正文

网站建设手机版js网站建设

网站建设手机版,js网站建设,视频剪辑素材免费网站,dede网站开发步骤上篇文章【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置#xff08;2#xff09;我们介绍了2种网关配置信息更新的方法和扩展Mysql存储#xff0c;本篇我们将介绍如何使用Redis来实现网关的所有缓存功能#xff0c;用到的文档及源码将会在GitHub上开源2我们介绍了2种网关配置信息更新的方法和扩展Mysql存储本篇我们将介绍如何使用Redis来实现网关的所有缓存功能用到的文档及源码将会在GitHub上开源每篇的源代码我将用分支的方式管理本篇使用的分支为course3。附文档及源码下载地址[https://github.com/jinyancao/CtrAuthPlatform/tree/course3]一、缓存介绍及选型网关的一个重要的功能就是缓存可以对一些不常更新的数据进行缓存减少后端服务开销默认Ocelot实现的缓存为本地文件进行缓存无法达到生产环境大型应用的需求而且不支持分布式环境部署所以我们需要一个满足大型应用和分布式环境部署的缓存方案。Redis应该是当前应用最广泛的缓存数据库支持5种存储类型满足不同应用的实现且支持分布式部署等特性所以缓存我们决定使用Redis作为缓存实现。本文将介绍使用CSRedisCore来实现Redis相关操作至于为什么选择CSRedisCore可参考文章[.NET Core开发者的福音之玩转Redis的又一傻瓜式神器推荐],里面详细的介绍了各种Redis组件比较及高级应用并列出了不同组件的压力测试对比另外也附CSRedisCore作者交流QQ群8578575使用中有什么问题可以直接咨询作者本人。二、缓存扩展实现首先本地安装Redis和管理工具Redis Desktop Manager,本文不介绍安装过程然后NuGet安装 CSRedisCore,现在开始我们重写IOcelotCacheT的实现新建InRedisCache.cs文件。实现所有缓存相关接口是不是很优雅呢实现好缓存后我们需要把我们现实的注入到网关里在ServiceCollectionExtensions类中修改注入方法。奈斯我们使用Redis实现缓存已经全部完成现在开始我们在网关配置信息增加缓存来测试下看缓存是否生效并查看是否存储在Redis里。为了验证缓存是否生效修改测试服务api/values/{id}代码增加服务器时间输出。增加新的测试路由脚本然后增加缓存策略,缓存60秒缓存分类test_ahphocelot。现在我们测试访问网关地址http://localhost:7777/api/values/1,过几十秒后继续访问结果如下。可以看出来缓存已经生效1分钟内请求都不会路由到服务端再查询下redis缓存数据发现缓存信息已经存在然后使用Redis Desktop Manager查看Redis缓存信息是否存在奈斯已经存在说明已经达到我们预期目的。三、解决网关集群配置信息变更问题前面几篇已经介绍了网关的数据库存储并介绍了网关的2种更新方式但是如果网关集群部署时采用接口更新方式无法直接更新所有集群端配置数据那如何实现集群配置信息一致呢前面介绍了redis缓存可以解决当前遇到的问题我们需要重写内部配置文件提取仓储类使用redis存储。我们首先使用redis实现IInternalConfigurationRepository接口每次请求配置信息时直接从redis存储避免单机缓存出现数据无法更新的情况。RedisInternalConfigurationRepository代码如下。redis实现后然后在ServiceCollectionExtensions里增加接口实现注入。builder.Services.AddSingletonIInternalConfigurationRepository, RedisInternalConfigurationRepository();然后启动网关测试可以发现网关配置信息已经使用redis缓存了可以解决集群部署后无法同步更新问题。四、如何清除缓存记录实际项目使用过程中可能会遇到需要立即清除缓存数据那如何实现从网关清除缓存数据呢在上篇中我们介绍了接口更新网关配置的说明缓存的更新也是使用接口的方式进行删除详细代码如下。我们可以先拉去授权获取授权方式请参考上一篇然后使用HTTP DELETE方式请求删除地址比如删除前面的测试缓存接口可以请求http://localhost:7777/CtrOcelot/outputcache/test_ahphocelot地址进行删除可以使用PostMan进行测试测试结果如下。执行成功后可以删除指定的缓存记录且立即生效完美的解决了我们问题。五、总结及预告本篇我们介绍了使用redis缓存来重写网关的所有缓存模块并把网关配置信息也存储到redis里来解决集群部署的问题如果想清理缓存数据通过网关指定的授权接口即可完成完全具备了网关的缓存的相关模块的需求。下一篇开始我们开始介绍针对不同客户端设置不同的权限来实现自定义认证敬请期待后面的课程会越来越精彩也希望大家多多支持。相关文章AspNetCore中使用Ocelot之 IdentityServer4Ocelot-基于.NET Core的开源网关实现.NET Core微服务之基于OcelotIdentityServer实现统一验证与授权Swagger如何访问Ocelot中带权限验证的APIOcelot.JwtAuthorize一个基于网关的Jwt验证包.NET Core微服务之基于Ocelot实现API网关服务.NET Core微服务之基于Ocelot实现API网关服务续.NET微服务体系结构中为什么使用Ocelot实现API网关Ocelot简易教程一之Ocelot是什么Ocelot简易教程二之快速开始1Ocelot简易教程二之快速开始2Ocelot简易教程三之主要特性及路由详解Ocelot简易教程四之请求聚合以及服务发现Ocelot简易教程五之集成IdentityServer认证以及授权Ocelot简易教程六之重写配置文件存储方式并优化响应数据Ocelot简易教程七之配置文件数据库存储插件源码解析ASP.NET Core中Ocelot的使用API网关的应用ASP.NET Core中Ocelot的使用基于Spring Cloud Netflix Eureka的动态路由ASP.NET Core中Ocelot的使用基于服务发现的负载均衡【.NET Core项目实战-统一认证平台】第一章 功能及架构分析定制Ocelot来满足需求【.NET Core项目实战-统一认证平台】第三章 网关篇-数据库存储配置1【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置2原文地址: https://www.cnblogs.com/jackcao/p/9960788.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com
http://www.huolong8.cn/news/11333/

相关文章:

  • 售后服务 网站建设子域名做微信开放平台网站应用
  • 网站分析的优劣势网站项目建设方案文档
  • 宁都县建设局网站外贸网站设计郑州
  • 网站安全建设情况报告红木家具网站建设总体规划
  • 做网站UI说不会写文案凡科主要是做什么的
  • 深圳网站建设方案维护网站优化策略分析
  • 扬州建设信用网站修改WordPress文章发布页面
  • 网站备案期间怎么做百度贴吧免费发布信息
  • 长沙企业网站建设公网络营销的八大能力
  • 公司企业网站设计尺寸酷特智能服装定制
  • 邯郸网站设计价位网站通用样式
  • 宁波建网站价格织梦网站主页
  • 成都企业建站系统网站布局设计分析特点
  • 专门做2手手机的网站wordpress 分享代码
  • 网站建设捌金手指花总五中装建设集团董事长
  • 做pc端网站案例一分钟赚50元的游戏
  • sns网站建设哪家公司好内存数据库 网站开发
  • 义乌搭建网站网站备案复查 手机号码打不通
  • 保定网站报价如何做产品展示网站
  • wordpress 字体样式表沧州seo包年平台排行榜
  • 陕西省建设厅网站月报商城网站技术方案
  • 网站页面用什么软件做wordpress安装好后
  • 网站素材大全深圳防疫最新政策
  • 专业模板建站价格wordpress语法高亮
  • 影响网站alexa排名的主要因素有通州网站建设服务
  • 阿里云网站域名备案吉林省四平市
  • 做增员的保险网站百度seo排名优化软件化
  • 做网站骗老外的钱教育网站开发文档
  • 网站后台有什么用建e室内设计网3d模型
  • 网站建设维护协议沧州网站域名注册服务公司