Feature Wiki

Information about planned and released features

Tabs

Global Cache: Replace some Caches with Artifacts

1 Initial Problem

When GlobalCache was introduced, it was analyzed which contents from the database do not have to be reloaded with every request, but only with certain actions (e.g. reloading language). Since then, these database contents can be loaded into the GlobalCache, making it available more quickly and reducing the load on the database.

Currently these are data from the domains:

  • Language
  • Object Definition
  • Control Flow
  • Components
  • Template (HTML)
  • Template (Blocks)
  • Template (Variables)
  • Events
  • Global Screen
Besides the fact that some caching mechanisms are no longer supported, the introduction of Artifacts has also created a new possibility to store such data (even faster available).

2 Conceptual Summary

For each of the above-mentioned areas it should be checked whether the data should not be stored in an Artifact. It must be taken into account that certain artifacts will then have to be created not only through the setup process, but also, for example, in administration.
At least the following areas can be migrated according to the current state of knowledge:

  • Object Definition
  • Components
  • Events

Note: As part of the refactoring of ilCtrl with ILIAs 8, the ilCtrl information has already been relocated to an artifact.

3 User Interface Modifications

3.1 List of Affected Views

none

3.2 User Interface Details

none

3.3 New User Interface Concepts

none

4 Technical Information

These modifications can be considered as refactoring and the feature request is to be understood as information.

5 Privacy Information

No new user related data will be processed or collected with this refactoring.

6 Security Implications

It is ensured that artifacts are only created when building ILIAS (resp. the classmap). Artifacts are PHP arrays that cannot be read out via the web server in the browser.

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

10 Implementation

{The maintainer has to give a description of the final implementation and add screenshots if possible.}

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Approval

Approved at {date} by {user}.

Last edited: 31. May 2022, 11:00, Schmid, Fabian [fschmid]