Add DistributionFileServerForceHTTP2
This commit is contained in:
@@ -8,6 +8,7 @@ public class StaticFilesServerConfiguration : MareConfigurationBase
|
|||||||
public bool IsDistributionNode { get; set; } = false;
|
public bool IsDistributionNode { get; set; } = false;
|
||||||
public Uri? MainFileServerAddress { get; set; } = null;
|
public Uri? MainFileServerAddress { get; set; } = null;
|
||||||
public Uri? DistributionFileServerAddress { get; set; } = null;
|
public Uri? DistributionFileServerAddress { get; set; } = null;
|
||||||
|
public bool DistributionFileServerForceHTTP2 { get; set; } = false;
|
||||||
public int ForcedDeletionOfFilesAfterHours { get; set; } = -1;
|
public int ForcedDeletionOfFilesAfterHours { get; set; } = -1;
|
||||||
public double CacheSizeHardLimitInGiB { get; set; } = -1;
|
public double CacheSizeHardLimitInGiB { get; set; } = -1;
|
||||||
public int UnusedFileRetentionPeriodInDays { get; set; } = 14;
|
public int UnusedFileRetentionPeriodInDays { get; set; } = 14;
|
||||||
@@ -30,6 +31,8 @@ public class StaticFilesServerConfiguration : MareConfigurationBase
|
|||||||
StringBuilder sb = new();
|
StringBuilder sb = new();
|
||||||
sb.AppendLine(base.ToString());
|
sb.AppendLine(base.ToString());
|
||||||
sb.AppendLine($"{nameof(MainFileServerAddress)} => {MainFileServerAddress}");
|
sb.AppendLine($"{nameof(MainFileServerAddress)} => {MainFileServerAddress}");
|
||||||
|
sb.AppendLine($"{nameof(DistributionFileServerAddress)} => {DistributionFileServerAddress}");
|
||||||
|
sb.AppendLine($"{nameof(DistributionFileServerForceHTTP2)} => {DistributionFileServerForceHTTP2}");
|
||||||
sb.AppendLine($"{nameof(ForcedDeletionOfFilesAfterHours)} => {ForcedDeletionOfFilesAfterHours}");
|
sb.AppendLine($"{nameof(ForcedDeletionOfFilesAfterHours)} => {ForcedDeletionOfFilesAfterHours}");
|
||||||
sb.AppendLine($"{nameof(CacheSizeHardLimitInGiB)} => {CacheSizeHardLimitInGiB}");
|
sb.AppendLine($"{nameof(CacheSizeHardLimitInGiB)} => {CacheSizeHardLimitInGiB}");
|
||||||
sb.AppendLine($"{nameof(UseColdStorage)} => {UseColdStorage}");
|
sb.AppendLine($"{nameof(UseColdStorage)} => {UseColdStorage}");
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ public sealed class CachedFileProvider : IDisposable
|
|||||||
public CachedFileProvider(IConfigurationService<StaticFilesServerConfiguration> configuration, ILogger<CachedFileProvider> logger,
|
public CachedFileProvider(IConfigurationService<StaticFilesServerConfiguration> configuration, ILogger<CachedFileProvider> logger,
|
||||||
FileStatisticsService fileStatisticsService, MareMetrics metrics, ServerTokenGenerator generator)
|
FileStatisticsService fileStatisticsService, MareMetrics metrics, ServerTokenGenerator generator)
|
||||||
{
|
{
|
||||||
|
AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);
|
||||||
_configuration = configuration;
|
_configuration = configuration;
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_fileStatisticsService = fileStatisticsService;
|
_fileStatisticsService = fileStatisticsService;
|
||||||
@@ -65,6 +66,11 @@ public sealed class CachedFileProvider : IDisposable
|
|||||||
|
|
||||||
using var requestMessage = new HttpRequestMessage(HttpMethod.Get, downloadUrl);
|
using var requestMessage = new HttpRequestMessage(HttpMethod.Get, downloadUrl);
|
||||||
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _generator.Token);
|
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _generator.Token);
|
||||||
|
if (_configuration.GetValueOrDefault(nameof(StaticFilesServerConfiguration.DistributionFileServerForceHTTP2), false))
|
||||||
|
{
|
||||||
|
requestMessage.Version = new Version(2, 0);
|
||||||
|
requestMessage.VersionPolicy = HttpVersionPolicy.RequestVersionExact;
|
||||||
|
}
|
||||||
HttpResponseMessage? response = null;
|
HttpResponseMessage? response = null;
|
||||||
|
|
||||||
try
|
try
|
||||||
|
|||||||
Reference in New Issue
Block a user