Browse Source

Document all options.

pull/1011/head
Sebastian 3 years ago
parent
commit
7ade8a3660
  1. 5
      backend/src/Squidex.Domain.Apps.Entities/Contents/GraphQL/CachingGraphQLResolver.cs
  2. 2
      backend/src/Squidex.Domain.Apps.Entities/Contents/GraphQL/GraphQLOptions.cs
  3. 13
      backend/src/Squidex/appsettings.json
  4. 6
      tools/TestSuite/docker-compose.yml

5
backend/src/Squidex.Domain.Apps.Entities/Contents/GraphQL/CachingGraphQLResolver.cs

@ -25,7 +25,6 @@ namespace Squidex.Domain.Apps.Entities.Contents.GraphQL;
public sealed class CachingGraphQLResolver : IConfigureExecution
{
private static readonly TimeSpan CacheDuration = TimeSpan.FromMinutes(10);
private readonly IBackgroundCache cache;
private readonly ISchemasHash schemasHash;
private readonly IServiceProvider serviceProvider;
@ -68,14 +67,14 @@ public sealed class CachingGraphQLResolver : IConfigureExecution
private Task<CacheEntry> GetModelEntryAsync(IAppEntity app)
{
if (options.CacheDuration <= 0)
if (options.CacheDuration <= TimeSpan.Zero)
{
return CreateModelAsync(app);
}
var cacheKey = CreateCacheKey(app.Id, app.Version.ToString(CultureInfo.InvariantCulture));
return cache.GetOrCreateAsync(cacheKey, CacheDuration, async entry =>
return cache.GetOrCreateAsync(cacheKey, options.CacheDuration, async entry =>
{
return await CreateModelAsync(app);
},

2
backend/src/Squidex.Domain.Apps.Entities/Contents/GraphQL/GraphQLOptions.cs

@ -9,7 +9,7 @@ namespace Squidex.Domain.Apps.Entities.Contents.GraphQL;
public sealed class GraphQLOptions
{
public int CacheDuration { get; set; } = 10 * 60;
public TimeSpan CacheDuration { get; set; } = TimeSpan.FromMinutes(10);
public int DataLoaderBatchSize { get; set; } = 1000;

13
backend/src/Squidex/appsettings.json

@ -306,6 +306,19 @@
"resizerUrl": ""
},
"graphQL": {
// Defines how long the graphl schema is cached. Default: 10 min.
"cacheDuration": "00:10:00",
// The batch size of the data loader.
//
// HINT: Can be overriden with the X-BatchSize header up to a maximum of 5000.
"dataLoaderBatchSize": 1000,
// Enables subscriptions.
"enableSubscriptions": true
},
"logging": {
// The log level of the implementation adapter.
//

6
tools/TestSuite/docker-compose.yml

@ -14,7 +14,7 @@ services:
- ASSETS__RESIZERURL=http://resizer
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex1
- GRAPHQL__CACHEDURATION=0
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__MULTIPLEDOMAINS=true
@ -40,7 +40,7 @@ services:
- ASSETS__RESIZERURL=http://resizer
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex2
- GRAPHQL__CACHEDURATION=0
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__MULTIPLEDOMAINS=true
@ -66,7 +66,7 @@ services:
- CONTENTS__OPTIMIZEFORSELFHOSTING=true
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex3
- GRAPHQL__CACHEDURATION=0
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__MULTIPLEDOMAINS=true

Loading…
Cancel
Save