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

html网站模板怎么用友情链接买卖代理

html网站模板怎么用,友情链接买卖代理,wordpress 任务发布插件,地方社区网站 备案目录 托管服务的异常问题 托管服务中使用DI 托管服务案例:数据的定时导出 场景,代码运行在后台。比如服务器启动的时候在后台预先加载数据到缓存,每天凌晨3点把数据导出到备份数据库,每隔5秒钟在两张表之间同步一次数据。托管服…

目录

托管服务的异常问题

托管服务中使用DI

托管服务案例:数据的定时导出


场景,代码运行在后台。比如服务器启动的时候在后台预先加载数据到缓存,每天凌晨3点把数据导出到备份数据库,每隔5秒钟在两张表之间同步一次数据。托管服务实现IHostedService接口,一般编写从BackgroundService继承的类。如需定时操作,可使用Hangfire框架。

builder.Services.AddHostedService<HostedService>();

托管服务的异常问题

  1. 从.NET 6开始,当托管服务中发生未处理异常的时候,程序就会自动停止并退出。可以把HostOptions.BackgroundServiceExceptionBehavior设置为Ignore,程序会忽略异常,而不是停止程序。不过推荐采用默认的设置,因为“异常应该被妥善的处理,而不是被忽略”。
  2. 要在ExecuteAsync方法中把代码用try……catch包裹起来,当发生异常的时候,记录日志中或发警报等。

托管服务中使用DI

  1. 托管服务是以单例的生命周期注册到依赖注入容器中的。因此不能注入生命周期为范围或者瞬态的服务。比如注入EF Core的上下文的话,程序就会抛出异常。
  2. 可以通过构造方法注入一个IServiceScopeFactory服务,它可以用来创建一个IServiceScope对象,这样我们就可以通过IServiceScope来创建短生命周期的服务了。记得在Dispose中释放IServiceScope。
public class HostedService : BackgroundService
{private IServiceScope serviceScope;public HostedService(IServiceScopeFactory serviceScopeFactory){this.serviceScope = serviceScopeFactory.CreateScope();}public override void Dispose(){this.serviceScope.Dispose();base.Dispose();}protected override async Task ExecuteAsync(CancellationToken stoppingToken){try{var testService = serviceScope.ServiceProvider.GetRequiredService<TestService>();Console.WriteLine("HostService1启动" + testService.Add(1, 1));await Task.Delay(3000);string txt = await File.ReadAllTextAsync("f:/1.txt");Console.WriteLine("文件读取完成");string s = null;s.ToString();await Task.Delay(3000);Console.WriteLine(txt);}catch (Exception ex){Console.WriteLine("服务中出现未处理异常" + ex);}}
}
public class TestService
{public int Add(int a, int b){return a + b;}
}
builder.Services.AddHostedService<HostedService>();
builder.Services.AddScoped<TestService>();

托管服务案例:数据的定时导出

常驻后台的托管服务并不需要特殊的技术,我们只要让ExecuteAsync中的代码一直执行不结束就行了。实现的功能就是每隔五秒钟统计一次数据库中的数据,将数据写入文本。

builder.Services.AddHostedService<ScheduledService>();public class ScheduledService : BackgroundService
{private readonly IServiceScope serviceScope;public ScheduledService(IServiceScopeFactory serviceScopeFactory){this.serviceScope = serviceScopeFactory.CreateScope();}public override void Dispose(){this.serviceScope.Dispose();base.Dispose();}protected override async Task ExecuteAsync(CancellationToken stoppingToken){try{var dbCtx = serviceScope.ServiceProvider.GetRequiredService<MyDbContext>();while (!stoppingToken.IsCancellationRequested){var count = dbCtx.Users.LongCount();await File.WriteAllTextAsync("F:/1.txt", count.ToString());await Task.Delay(5000);}Console.WriteLine("导出成功" + DateTime.Now);}catch (Exception ex){Console.WriteLine(ex);}}
}
http://www.hrbkazy.com/news/48757.html

相关文章:

  • 广告营销文案seo排名优化软件有用吗
  • 网站搭建框架是什么网店网络推广方案
  • 百度网站收录提交入口全攻略百度推广登录入口官网网址
  • 广汉网站建设seo网站优化培训怎么样
  • 华强北设计网站建设郑州有没有厉害的seo顾问
  • 网站托管..qq引流推广平台
  • 网站都是每年续费的吗搜索引擎哪个好
  • 肇庆网站建设方案优化新乡网站优化公司推荐
  • 公司网站建设哪家比较好台州网站优化公司
  • 网站后台的作用营销课程培训
  • wordpress架设进出销正规网站优化哪个公司好
  • 做公众号排版的网站站长工具传媒
  • 网站开发一定要用框架吗互联网营销师证书含金量
  • 一张图片切块做网站背景全网营销推广平台有哪些
  • 长沙官网优化多少钱潍坊关键词优化软件
  • 做电脑系统的网站百度小说排行
  • 汉口网站建设 优帮云友情链接大全
  • 手机网站建设推广方案semester at sea
  • 百度广告优化师合肥网络推广优化公司
  • .net做的网站代码酒店如何进行网络营销
  • 怎样用axure做网站上的注册广告联盟广告点击一次多少钱
  • 企业手机端网站模板24小时最新国际新闻
  • 网站建设改版升级推广方式营销方案
  • 东莞营销型高端网站建设个人网站注册平台
  • 拉企业做网站好干吗今天发生的重大新闻内容
  • 邢台168交友最新信息唐山seo推广公司
  • 咸阳b2c网站制作价格外包公司软件开发
  • 网站建设公司怎样拓展网站业务做一个微信小程序需要多少钱
  • 海淘科技上海网站设计百度搜索引擎网站
  • 网站建设丿金手指谷哥12seo搜索引擎优化推广