Service - Sell Offer Manager: Difference between revisions
Jump to navigation
Jump to search
Line 77: | Line 77: | ||
<syntaxhighlight lang="JavaScript"> | <syntaxhighlight lang="JavaScript"> | ||
{ | { | ||
cacheId // fromType + "_" + | cacheId // fromType + "_" + fromDataId + "_" + toType | ||
toDataId | toDataId | ||
expireTime | expireTime |
Revision as of 13:02, 5 July 2021
Overview
Each sell offer is handled by a Service - Sell Offer (handlers) service.
The Sell Offer Manager service handles shared orchestration of the Sell Offer Handler services.
Repository
https://bitbucket.org/izara-market-products/izara-market-products-sell-offer-manager/src/master/
DynamoDB tables
Standard Config Table Per Service
Configuration tags
{
configKey: "ProductsGraphServiceName"
configTag: "ProductsGraphServiceName"
configValue: xxx // eg: "ProductsGraph"
}
{
configKey: "SellOfferHandlerService"
configTag: xxx // sellOfferHandlerServiceNameTag, eg: "SellOfferStandard", this is what is saved in each catalog record
configValue: {
serviceName: xxx // eg: "SellOfferStandard", this is the actual deployed service name}
}
}
{
configKey: "TranslateIdsType"
configTag: xxx // eg SellOffer > Product would be sellOffer_product
configValue: {
ttl: 64000 // number of seconds TranslateIdsCache records live for
}
}
SellOffers
Records which Handler manages each sell offer
{
sellOfferId
sellOfferHandlerServiceNameTag
}
- partition key: sellOfferId
- sort key: (none)
LogicalResults
Stores results for any requests to perform logical searches on product data
{
resultId: xxx // eg: filterMainId for a single logical element
dataId: xxx // one productId
}
- partition key: resultId
- sort key: dataId
TranslateIdsCache
Stores a record for any unique translateId process
{
cacheId // fromType + "_" + fromDataId + "_" + toType
toDataId
expireTime
}
- partition key: cacheId
- sort key: toDataId
- expireTime is set as an automatic DynamoDB TTL attibute