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

兰溪网站seo 百度网盘

兰溪网站,seo 百度网盘,宁波妇科中医哪个好,网站推广需求C# 使用HangFire 第一章:.net Framework 4.6 WebAPI 使用Hangfire 第二章:net 8使用hangfire实现库存同步任务 文章目录 C# 使用HangFire前言项目源码一、项目架构二、项目服务介绍HangFire服务结构解析HangfireCollectionExtensions 类ModelHangfireSettingsHttpAuthInfoUs…C# 使用HangFire 第一章:.net Framework 4.6 WebAPI 使用Hangfire 第二章:net 8使用hangfire实现库存同步任务 文章目录 C# 使用HangFire前言项目源码一、项目架构二、项目服务介绍HangFire服务结构解析HangfireCollectionExtensions 类ModelHangfireSettingsHttpAuthInfoUserInfo appsetting.jsonNLog.configProgram.cs StockChangeServers服务结构解析项目内结构结构介绍项目用到的包服务示例示例Demoappsetting.config 总结 前言 在第一章中我介绍了如何在.net Framework 4.6 WebAPI 中使用Hangfire,实现Hangfire定时调用我们开发的API接口,但是在实际业务中调用接口往往需要处理耗时任务,如果还像第一章中的方式去调用的话就会出现请求超时的情况。今天我就以电商系统库存同步业务为例子给大家讲解如何使用hangfire调用耗时任务。 后续我也会把项目放在CSDN上供大家下载学习。 项目源码 下载项目源码 一、项目架构 项目采用微服务的方式开发,分为以下两个服务: HangFireServers(调用和管理后面两个服务)StockChangeServers(同步库存信息至电商平台)SkuServers(从电商平台拉取商品信息)二、项目服务介绍 该服务用于定时调用库存同步服务。作为库存同步服务和商品SKU更新服务的管理。 HangFire服务结构解析 该服务中用到的包: 项目内结构: HangfireCollectionExtensions 类 该类的主要作用是配置hangfire的监控面板 也就是这里的样式,还配置了用户的账户密码和Hangfire最大开启线程以及是否只读等信息。 using Hangfire; using Hangfire.Console; using Hangfire.Dashboard.BasicAuthorization; using Hangfire.Heartbeat; using Hangfire.Heartbeat.Server; using Hangfire.HttpJob; using Hangfire.Redis.StackExchange; using Hangfire.Server; using Hangfire.Tags; using Hangfire.Tags.Redis.StackExchange; using HangfireServers.Model; using Microsoft.AspNetCore.Localization; using Microsoft.Extensions.Options; using Spring.Core.TypeConversion; using StackExchange.Redis;namespace HangfireServers.Extensions {public static class HangfireCollectionExtensions{private const string HangfireSettingsKey = "Hangfire:HangfireSettings";private const string HttpJobOptionsKey = "Hangfire:HttpJobOptions";private const string HangfireConnectStringKey = "Hangfire:HangfireSettings:ConnectionString";private const string HangfireLangKey = "Hangfire:HttpJobOptions:Lang";public static IServiceCollection AddSelfHangfire(this IServiceCollection services, IConfiguration configuration){var hangfireSettings = configuration.GetSection(HangfireSettingsKey);var httpJobOptions = configuration.GetSection(HttpJobOptionsKey);services.ConfigureHangfireSettings(hangfireSettings);services.ConfigureHangfireHttpJobOptions(httpJobOptions);services.AddTransientIBackgroundProcess, ProcessMonitor();services.AddHangfire(globalConfiguration ={services.ConfigurationHangfire(configuration, globalConfiguration);});services.AddHangfireServer((provider, config) ={var settings = provider.GetServiceIOptionsHangfireSettings()?.Value;ConfigFromEnv(settings ?? new HangfireSettings());var queues = settings?.JobQueues.Select(m = m.ToLower()).Distinct().ToList();var workerCount = Math.Max(Environment.ProcessorCount, settings.WorkerCount); //工作线程数,当前允许的最大线程,默认20config.ServerName = settings.ServerName;config.ServerTimeout = TimeSpan.FromMinutes(4);config.SchedulePollingInterval = TimeSpan.FromSeconds(1);//秒级任务需要配置短点,一般任务可以配置默认时间,默认15秒config.ShutdownTimeout = TimeSpan.FromMinutes(30); //超时时间config.Queues = queues?.ToArray(); //队列config.WorkerCount = workerCount;});return services;}public static void ConfigurationHangfire(this IServiceCollection services, IConfiguration configuration,IGlobalConfiguration globalConfiguration){var serverProvider = services.BuildServiceProvider();var langStr = configuration.GetSection(HangfireLangKey).Getstring();var envLangStr = GetEnvConfigstring("Lang");if (!string.IsNullOrEmpty(envLangStr)) langStr = envLangStr;if (!string.IsNullOrEmpty(langStr)){Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(langStr);}var hangfireSettings = serverProvider?.GetServiceIOptionsHangfireSettings()?.Value;ConfigFromEnv(hangfireSettings??new HangfireSettings());var httpJobOptions = serverProvider?.GetServiceIOptionsHangfireHttpJobOptions()?.Value;ConfigFromEnv(httpJobOptions??new HangfireHttpJobOptions());
http://www.dnsts.com.cn/news/86424.html

相关文章:

  • 网站如何做好优化仿网站出售
  • 邹平网站设计网站色彩运用
  • 创新的邯郸网站建设wdcp 网站建设
  • 淘宝网站建设费用网络架构要求包括
  • 网站改版意见微软软件开发工程师待遇
  • 微网站开发协议wordpress格式化sql串
  • 事务所网站建设如何取消网站备案
  • 网站设计一般是什么专业seo做什么网站赚钱
  • 河南电力建设工程公司网站网站建设销售实训报告
  • 有哪些免费的视频网站广告公司简介ppt
  • 学习怎样建网站青海省教育厅门户网站官网
  • 网站设计专家微信小程序公司网站怎么制作
  • 网站建设素材包娄底市建设网站
  • 五指山网站开发价格宁波设计网站公司
  • 网站产品简介怎样用编程语言做网站
  • wordpress被镜像有了网站后台后怎么做seo优化
  • 买做指甲的材料在哪个网站教学督导网站建设报告
  • 品牌案例网站物流信息网站cms
  • 做旅游宣传网站的流程图百度网站的优势
  • 购物网站开发方案德江网站建设
  • 罗定市城乡规划建设局网站黑龙江省建设教育协会网站
  • 山东省建设厅招标网站首页当阳网站建设
  • 查询邮箱注册过的网站广州个人网页制作
  • 长沙网站制作公司有哪些幼儿网站源代码
  • 怎样做好网站wordpress 搭建cms
  • 做塑胶网站需要什么材料wordpress高级企业自适应主题
  • 查询网站用什么做的wordpress 分类目录使用英文
  • 安全的网站建设公做网站时怎么选择数据库类型
  • 网站建设 10万元如何更换网站服务商
  • cn网站怎么做wordpress简约下载站模板