High performance product catalog in asp.net?

I am planning a high performance e-commerce project in asp.net and need help choosing the best data retrieval model for a product catalog.

Some details,

  • products in 10-20 categories
  • 1000-5000 products in each category
  • products listed with name, price, brand and image, 15-40 per page
  • products must be listed without table tags
  • product information in 2-4 tables to be merged (product images not saved in db)
  • webserver and sql database on different devices
  • ms sql 2005 on a shared db server (pretty poor performance to start with ...)
  • allow users to search for products that combine different criteria such as price range, brand, with / without images.

My questions:

  • what technique should i use to extract food?
  • what technique should i use to present products?
  • what strategy do you recommend?
  • How to solve filtering, sorting, scrolling in the most efficient way?
  • Do you have any recommendations for more reading on this subject?

Thanks in advance!

+1


source to share


4 answers


Let the SQL Server fetch the data. With good enough indexing, the SQL server should be able to handle.



in SQL 2005 you can do a lookup in the results so you have less data to shuffle back and forth.

0


source


I think you get a lot of text search. Try either lucene or Solr (http server over lucene). CNET developed solr to search for its product catalog.



0


source


Have you thought about looking at an existing shopping cart platform that allows you to purchase the source code?

I used www.aspdotnetstorefront.com

They have many examples of large ecommerce stores running on this platform. I have built www.ElegantAppliance.com on this platform. Several thousand products, over 100 categories / subcategories.

0


source


Make sure your database design is normalized as much as possible - use lookup tables where necessary to make sure you don't repeat data unnecessarily.

Save the images to the server's file system and store a relative (not complete) link to them in the database.

Use stored procedures as much as possible and always retrieve as little data as you can from the server to help with memory and network traffic efficiency.

Don't worry about caching, your database needs to be fast enough to get results immediately, if not, make it faster.

0


source







All Articles