Last post May 28, 2015 09:22 PM by mintssoul
May 28, 2015 09:22 PM|mintssoul|LINK
I am designing a web application using C#, it allows user to retrieve product information with promotion information.
My question is what techniques should be used,
data storage method (sql db/cache/no-sql), data structure (store as tree), retrieve algorithm, etc
to build a fast response web application.
Any experience or idea that may help, please kindly raise here, thanks.
More details explained below:
There are more than 10000 promotions such as "buy A and B then 20% discount" and "buy any products in gp A free 1 B", etc
Since there is a project to be done, there is no limit on where to store the promotion.
I would like to get any idea for this solution that can be normal database (MSSql) or any other storage (no-sql, csv, etc).
User come to product page, he can search or browse products and then add to cart.
The promotions are use in two ways
A) In the cart, if both A and B exist, a discount 20% will show to user (Assume promotion 'buy A and B then 20% discount')
the main issue is how to i) store the promotion data ii) retrieve the matched promotion to increase the performance of viewing he cart page as there are many promotions.
it is expected that if the data storage or retrieve algorithm are not well designed, the performance will be very slow.
And I would like to prevent this at this design stage.
B) Similarly , on the right hand side of the product page, there will be a discount corner for showing one of the related promotions.
For example, when user viewing product A, then the discount corner may show the promotion "buy A and B will get 20% discount" to attract user.