Drupal Commerce product variations
A rather complex part of building e-commerce solutions is the aspect of “Product variations”. You should analyse your offer to prevent surprises.
Drupal Commerce offers this functionality:
Product attributes are the descriptors we use to define kinds of products. For example, we could describe a tshirt by the color and size. These attributes mean that in the real physical world your store may only carry one red shirt, but you have three sizes or three “variations.” Commerce software must deal with product variations in a flexible way.
Combine this with Commerce Fancy Attributes for the use of images and more advanced selection visualisations.
If you have a task that must occur regularly, but will take a long amount of time to complete, the cron queue might be a good solution. For instance, if you have a lot of nodes that need to stay synchronized with a remote dataset, you might want to synchronize a large portion of them during a cron run, but would like your other cron tasks to complete in a timely manner.
Drupal provides an easy interface to adding such long-running background tasks via hook_cron_queue_info() and hook_cron().”