Commit Graph

13 Commits

Author SHA1 Message Date
Diego Heras aca4a16bae
ci/cd: fix whitespaces (#11749) 2021-05-16 20:13:54 +02:00
Diego Heras b365607714
core: improve search cache debug logs (#10502) 2020-12-14 00:46:18 +01:00
Diego Heras ebe05267b2
core: FlareSolverr integration. Bypass Cloudflare protection (#9028) 2020-12-13 21:42:10 +01:00
Diego Heras f8d3781f7a
core: search cache optimizations #10382 (#10484)
* Empty cache when user changes proxy configuration
* Reduce the CPU needed to clean up results that exceed the limit per indexer
2020-12-12 18:44:08 +01:00
Diego Heras 69125add3e
core: redo search cache from scratch. resolves #10382 (#10447)
In simple words, when you make a request in Jackett, the results are saved in memory (cache). The next request will return results form the cache improving response time and making fewer requests to the sites.
* We assume all indexers/sites are stateless, the same request return the same response. If you change the search term, categories or something in the query Jackett has to make a live request to the indexer.
* There are some situations when we don't want to use the cache:
** When we are testing the indexers => if query.IsTest results are not cached
** When the user updates the configuration of one indexer => We call CleanIndexerCache to remove cached results before testing the configuration
** When there is some error/exception in the indexer => The results are not cached so we can retry in the next request
* We want to limit the memory usage, so we try to remove elements from cache ASAP:
** Each indexer can have a maximum number of results in memory. If the limit is exceeded we remove old results
** Cached results expire after some time
* Users can configure the cache or even disable it
2020-12-11 23:14:21 +01:00
Diego Heras 6156ad0cd5
core: allow renaming & merging of trackers with config (part 1 #8355) (#8608)
core: allow renaming & merging of trackers with config (part 1 #8355) (#8608)

* rename site field to id in yaml indexers
* add id field in c# indexers
* use id field instead of class name in c#
2020-05-11 21:59:28 +02:00
Cory 2920cf7d20
Revert accidentally deleted line. Resolves #7870 (#7874) 2020-03-27 21:35:26 +13:00
Cory b5a6aab894
core: prefer object initializers (#7342) 2020-03-26 17:15:28 -05:00
Cory 348dddfbee
core: Apply declarations styles (#7166) 2020-02-11 11:16:19 +13:00
Cory c12da520a4
Run dotnet format on solution (#7145) 2020-02-09 15:35:16 +13:00
flightlevel 40b0cdffc3 Reduce cache size 2019-04-14 11:59:48 +10:00
flightlevel 3e5e48c3a0
Change namespace to Jackett.Common (#2691)
Really hope I don't break anything with this
Went to have a go at .NET core and it just became too confusing for me with 'Jackett' namespace referring to both Jackett.Common and Jackett
2018-03-10 19:05:56 +11:00
Nathan Holland 571c52a0f2 Feature/netcore preparation (#2072)
* Use platform detection that works on mono 4.6+

* Move to use package reference for restoring nuget packages.

* DateTimeRoutines does not have Nuget packages that support .NET Standard (and therefore .NET Core). We will have to include them for now until we can get rid of this dependency.

* Start spliting some interfaces into their own files - this will help by allowing us to split them out in the future into a seperate project so the actual implementations can stay within their respective architectures when required

* Move out common libraries

* Few more tidy up tasks to get things working with .NET Standard

* Restructure the solution layout

* Encoding work to reduce rework later on platforms without Windows codepages (or require compliance with RFC1345)

* Move folder structure around to have more natural layout of the solutions

* DI server configuration to get rid of "temporary" hack and dependency circle for serverservice

* Make all encoding consistent to match the expected encoding casing for earlier versions of mono.
2017-11-05 20:42:03 +11:00
Renamed from src/Jackett/Services/CacheService.cs (Browse further)