Predefined Commerce Engine minions
The Sitecore Commerce Engine defines and uses the following minions described in this section:
NodeHeartBeatMinion
The NodeHeartBeatMinion
is a management minion that allows the injection of business/dev-ops processes that must occur on a short-term, regular basis. It is set to run once per second, calling the INodeHeartBeatMinionPipeline
.
Index minions
The index minions perform indexing tasks on Commerce entities (orders, customers and catalog items).
FullIndexMinion
The FullIndexMinion
indexes all items a list. It runs on demand, calling the IPrepareFullIndexMinionPipeline
and the IFullIndexMinionPipeline
to perform indexing functions.
IncrementalIndexMinion
The IncrementalIndexMinion
watches for new items that need to be updated in the index. It runs every 3 minutes and calls the IPrepareIncrementalIndexMinionPipeline
and the IIncrementalIndexMinionPipeline
.
DeleteIndexMinion
The DeleteIndexDocumentsMinion
watches a list. It runs every 3 minutes, calling the IPrepareDeleteIndexDocumentsMinionPipeline
and the IDeleteIndexDocumentsMinionPipeline
.
Other minions available out-of-the-box such as the DeletedCustomersIndex
and the DeletedCatalogItemsIndex
delete different entities lists from the search indexes.
PurgeCartsMinion
The PurgeCartsMinion
runs as a maintenance process that deletes abandoned or empty carts from the database, after they have become eligible for deletion based on a predefined threshold.
The PurgeCartsMinion
watches a list of carts ("ListToWatch": "Carts")
and runs every 24 hours ("WakeupInterval": "24:00:00"
).
The PurgeCartsPolicy
determines the threshold (in number of days) after which empty or abandoned carts are deleted from the cart list. The following example shows the policy settings as defined in the sample Plugin.AdventureWorks.CommerceMinions.json
file (packaged as part of the Sitecore.Commerce.Engine.SDK).
{
"$type":"Sitecore.Commerce.Plugin.Carts.PurgeCartsPolicy, Sitecore.Commerce.Plugin.Carts",
"AbandonedCartsThreshold": 14,
"EmptyCartsThreshold": 2
},
Based on the above policy definition:
-
an abandoned cart becomes eligible for deletion after 14 days of inactivity.
-
an empty cart becomes eligible for deletion after 2 days of inactivity.
The PurgeCartsMinion
calls the IPurgeCartsMinionPipeline
.
Commerce Orders minions
Order process minions play a key role in the overall order process flow, moving orders from list to list, as they transition from the initial pending status, to the final order completed status.