首页 > 其他分享 >NET6 Hangfire 可视化配置

NET6 Hangfire 可视化配置

时间:2024-04-22 17:47:05浏览次数:21  
标签:TimeSpan builder Hangfire 任务 可视化 new NET6 app

Nuget

<PackageReference Include="Hangfire" Version="1.8.5" />
<PackageReference Include="Hangfire.AspNetCore" Version="1.8.5" />
<PackageReference Include="Hangfire.Console" Version="1.4.2" />
<PackageReference Include="Hangfire.Core" Version="1.8.5" />
<PackageReference Include="Hangfire.Dashboard.BasicAuthorization" Version="1.0.2" />
<PackageReference Include="Hangfire.HttpJob" Version="3.8.1" />
<PackageReference Include="Hangfire.SqlServer" Version="1.8.5" />

强制中文

Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN");

代码

var builder = WebApplication.CreateBuilder(args);

var Config = builder.Configuration;
// Add Hangfire services.
builder.Services.AddHangfire(config =>
{
    // 设置Hangfire的本地化选项
    config.SetDataCompatibilityLevel(CompatibilityLevel.Version_180)
    .UseDefaultCulture(new CultureInfo("zh-CN"))
    .UseSimpleAssemblyNameTypeSerializer()  //    序列化器组件
    .UseRecommendedSerializerSettings() //   全局序列化器
    .UseStorage(new SqlServerStorage(Config["ConnectionStrings:HangfireConnection"], new SqlServerStorageOptions
    {
        //TransactionIsolationLevel = IsolationLevel.ReadCommitted,
        QueuePollInterval = TimeSpan.FromSeconds(15),
        JobExpirationCheckInterval = TimeSpan.FromHours(1),
        CountersAggregateInterval = TimeSpan.FromMinutes(5),
        PrepareSchemaIfNecessary = true,
        DashboardJobListLimit = 50000,
        TransactionTimeout = TimeSpan.FromMinutes(1)
        //TablesPrefix = "Hangfire"
    }))
    .UseHangfireHttpJob(options: new HangfireHttpJobOptions
    {

    })
    .UseColouredConsoleLogProvider()    //  日志
    .UseConsole(new ConsoleOptions() { BackgroundColor = "#FF0000" });
});

// Add the processing server as IHostedService
builder.Services.AddHangfireServer();

var app = builder.Build();

app.UseHangfireDashboard("/hangfire", new DashboardOptions
{
    Authorization = new[] {
    new BasicAuthAuthorizationFilter(new BasicAuthAuthorizationFilterOptions
    {
        RequireSsl = false,
        SslRedirect = false,
        LoginCaseSensitive = true,
        Users = new []
        {
            new BasicAuthAuthorizationUser
            {
                Login = app.Configuration.GetSection("HangfireCredentials:UserName").Value,
                PasswordClear = app.Configuration.GetSection("HangfireCredentials:Password").Value
            }
        }
    })}
});

Hangfire添加周期性任务的参数说明

RecurringJobIdentifier:周期性任务的唯一标识符。
JobName:任务的名称。
Method:请求的HTTP方法(例如:GET、POST)。
ContentType:请求的内容类型。
Url:要调用的端点的URL。
Headers:要包含在请求中的其他头部信息。
Data:要发送的请求数据。
Timeout:请求的超时时间(以毫秒为单位)。
TimeZone:用于调度周期性任务的时区。
Cron:指定周期性任务调度的cron表达式。
AgentClass:处理任务执行的类。
AgentTimeout:处理任务的代理超时时间。
BasicUserName:基本身份验证的用户名(如果需要)。
BasicPassword:基本身份验证的密码(如果需要)。
QueueName:将任务加入的队列的名称。
EnableRetry:指示是否对失败的任务启用重试。
RetryTimes:失败任务的重试次数。
RetryDelaysInSeconds:重试之间的延迟时间(以秒为单位)。
SendSuccess:指示是否在任务成功时发送通知。
SendFail:指示是否在任务失败时发送通知。
Mail:通知将发送到的电子邮件地址。
CallbackEL:用于接收任务执行状态更新的回调端点。

 

Refresh:

周期性任务参数

 

标签:TimeSpan,builder,Hangfire,任务,可视化,new,NET6,app
From: https://www.cnblogs.com/CRobot/p/18151075

相关文章

  • 解锁化学密码:元素周期表可视化的魅力之旅
    你是否曾经被复杂的元素周期表所困扰,想要一窥化学世界的奥秘却又无从下手?如今,随着科技的进步,我们有了更直观、更生动的方式来探索这个神秘的领域。 元素周期表可视化,就是将传统的元素周期表以图形化的方式呈现出来。它不再是一张单调乏味的表格,而是一个充满活力、色彩斑斓的世......
  • YOLO可视化界面
    此版本的可视化界面比较麻烦,需要安装gpu版的torch和torchvision包(1)将可视化代码下载到本地文件夹中并解压;(2)在终端激活yolov8的运行环境,可通过anaconda终端激活或pycharm终端进入。任意一种方式进入终端后,依次运行以下三条命令进行依赖库安装pipinstall-rrequirements.txt......
  • YOLOv8可视化界面
    1.配置运行环境在终端安装streamlit和ultralytics两个库streamlit库的安装命令:pipinstallstreamlit==1.22.0-ihttps://pypi.tuna.tsinghua.edu.cn/simpleultralytics库的安装命令:pipinstallultralytics-ihttps://pypi.tuna.tsinghua.edu.cn/simple2.运行可视化界面(1......
  • Algorius Net Viewer 2024.2.1 (Windows) - 网络可视化、管理、监控和清点
    AlgoriusNetViewer2024.2.1(Windows)-网络可视化、管理、监控和清点Comprehensivesoftwareproductforvisualizing,administering,monitoring,andinventoryingcomputersnetworkofanylevel请访问原文链接:AlgoriusNetViewer2024.2.1(Windows)-网络可视化......
  • 数据分析中缺失值可视化(missingno模块)
    missingno模块讲解missingno安装condainstallmissingno或者pipinstallmissingno。missingno常用API讲解importmissingnoasmsno密度图:matrixmsno.matrix(df,labels=True)生成的密度图中的白线代表缺失值,右下角的数字表示不存在缺失值的列,右侧的数字表示数据......
  • 前端使用 Konva 实现可视化设计器(6)
    请大家动动小手,给我一个免费的Star吧~这一章处理一下复制、粘贴、删除、画布归位、层次调整,通过右键菜单控制。github源码gitee源码示例地址复制粘贴复制粘贴(通过快捷键)//复制暂存pasteCache:Konva.Node[]=[];//粘贴次数(用于定义新节点的偏移距离)past......
  • 基于三维地图开发的智慧展馆可视化系统建设方案有何推荐?
    基于三维地图开发的智慧展馆可视化系统建设方案有何推荐?     关注者7被浏览10,520关注问题​写回答​邀请回答​好问题​添加评论​分享​  查看全部5个回答粉刷匠 ​ 关注  1人赞同了......
  • 科学可视化软件介绍 – OpenSceneGraph
    科学可视化软件介绍–OpenSceneGraph叶刘克拉克莫夫​中国石油大学有机化工硕士​关注他 6人赞同了该文章 OpenSceneGraph(有时候简称为OSG)是一个开源的高性能三维图形开发工具包,供软件开发人员在可视模拟、游戏、虚拟现实、科学可视化和建模......
  • 如何从头手动制作一个冲压仿真软件 —— 《冲压模可视化仿真模拟》
    因为工作需要,前段时间曾思考过如何手动做一个冲压仿真软件,但是研究发现这东西居然需要用到很多的数学和物理学的知识,而这方面的知识我又不具备,于是只好作罢,但是后来看到了本文中的这个论文,虽然没有看到全文,但是感觉这个主题还是比较贴切的。原文地址:https://wap.cnki.net/touch......
  • Web Audio API 第5章 音频的分析与可视化
    到目前为止,我们仅讨论了音频的合成与处理,但这仅是WebAudioAPI提供的一半功能。另一半功能则是音频的分析,它播放起来应该是什么样子的。它最典型的例子就是音频可视化,但其实有更多的其它应用场景,包括声调检测,节减检测,语音识别等,这些已大大超出本书范围。对于游戏或交互式应用......