7.0.0
This version contains major changes, that are also described in the Blog.
-
Orleans removed: Orleans has been removed to make deployment easier. Nodes are independent now and you can host it basically everywhere. One instance needs to be assigned as a worker with the
CLUSTERING__WORKER=true
to environment variable. The default is true, so ensure that the other nodes have the value to set to false. The communication between instances and worker is established with a simple MongoDB-based queue, therefore there is no additional dependency. -
Faster JSON serialization: Newtonsoft.JSON has been replaced with System.Text.Json, leading to a 100% performance improvement when writing and reading JSON. Some part of the MongoDB serialization (especially writing of app, schema or rule objects) was also implemented with Newtonsoft.JSON. This part became actually slower, but you can tell Squidex to use a faster serialization with the environment variable
STORE__MONGODB__VALUEREPRESENTATION=String
. The downside is that the objects are written to MongoDB as strings and not as normal values, therefore you cannot query for app, schema or rule properties anymore. -
Dedicated collections per content: You can have one collection per schema now, which gives you the option to create indexes manually to improve query performance. Read the blog post for migration instructions.
Changed
- Assets: Moved the update of tag counts to a event consumers to improve consistency.