In a site that has about 4000 products, in 1000 categories, I thought that I
can store each product and category details in its own application("va r"),
instead of trips to the database.
When someone will go to product.asp?id= 123, the page will show the
application("pr oduct123") instead of getting the information from the
database.
If a change of pricing or availability occours, I will delete the
application("pr oduct123"). The product.asp will check if it's empty. If it
is, it will get the data from the database and show that, but the next time
someone goes to that page, there is no need to connect to the database.
I've used it many times for chunks of HTML (see http://www.learnasp.com/freebook/asp/speedappdata.aspx), but my question is,
how much can I save in application data? Can I put 4000 of them? 7 1677
Bruce wrote:
In a site that has about 4000 products, in 1000 categories, I thought
that I can store each product and category details in its own
application("va r"), instead of trips to the database.
When someone will go to product.asp?id= 123, the page will show the
application("pr oduct123") instead of getting the information from the
database.
If a change of pricing or availability occours, I will delete the
application("pr oduct123"). The product.asp will check if it's empty.
If it is, it will get the data from the database and show that, but
the next time someone goes to that page, there is no need to connect
to the database.
I've used it many times for chunks of HTML (see http://www.learnasp.com/freebook/asp/speedappdata.aspx), but my
question is, how much can I save in application data? Can I put 4000
of them?
It depends on the server hardware (amount of RAM) and the number of
applications running on the server. This is the type of question that can
only be answered by testing. For example, we have on idea how much memory is
consumed by storing one of these productls, let alone 4000. If scalability
is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the
need to lock the application object while making changes to its contents.
While the application is locked, no requests in the application can be
served. Whether this is a concern or not depends on the frequency of price
changes and can only be answered by testing.
Is the call to the database so time-consuming that caching the data in
application is necessary?
--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"
"Bob Barrows [MVP]" <re******@NOyah oo.SPAMcomwrote in message
news:Of******** ******@TK2MSFTN GP03.phx.gbl...
Bruce wrote:
In a site that has about 4000 products, in 1000 categories, I thought
that I can store each product and category details in its own
application("va r"), instead of trips to the database.
When someone will go to product.asp?id= 123, the page will show the
application("pr oduct123") instead of getting the information from the
database.
If a change of pricing or availability occours, I will delete the
application("pr oduct123"). The product.asp will check if it's empty.
If it is, it will get the data from the database and show that, but
the next time someone goes to that page, there is no need to connect
to the database.
I've used it many times for chunks of HTML (see http://www.learnasp.com/freebook/asp/speedappdata.aspx), but my
question is, how much can I save in application data? Can I put 4000
of them?
It depends on the server hardware (amount of RAM) and the number of
applications running on the server. This is the type of question that can
only be answered by testing. For example, we have on idea how much memory
is
consumed by storing one of these productls, let alone 4000. If scalability
is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the
need to lock the application object while making changes to its contents.
While the application is locked, no requests in the application can be
served. Whether this is a concern or not depends on the frequency of price
changes and can only be answered by testing.
Or just don't bother locking the application object. That'll be fine in
this case.
--
Anthony Jones - MVP ASP/ASP.NET
Thanks for the response.
The site is hosted on a shared hosting (discount asp .net), where I don't
hav control over testing and looking at the RAM etc. If every product is 3
KB of information, is that 4000*3 ?
How would I test if caching is faster than connecting to a database? (I want
to test speed of page load, and scalability).
I've stumbled upon http://www.webgecko.com/products/aspcache/, is anyone
familiar with that? The page claims that it's much faster than storing in
application data, but I can't use it on a shared hosting :( Is there
something else similar?
"Bob Barrows [MVP]" <re******@NOyah oo.SPAMcomwrote in message
news:Of******** ******@TK2MSFTN GP03.phx.gbl...
It depends on the server hardware (amount of RAM) and the number of
applications running on the server. This is the type of question that can
only be answered by testing. For example, we have on idea how much memory
is consumed by storing one of these productls, let alone 4000. If
scalability is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the
need to lock the application object while making changes to its contents.
While the application is locked, no requests in the application can be
served. Whether this is a concern or not depends on the frequency of price
changes and can only be answered by testing.
Is the call to the database so time-consuming that caching the data in
application is necessary?
"Bruce" <fake_dont_send @anything_.comw rote in message
news:e%******** ********@TK2MSF TNGP02.phx.gbl. ..
Thanks for the response.
The site is hosted on a shared hosting (discount asp .net), where I don't
hav control over testing and looking at the RAM etc. If every product is 3
KB of information, is that 4000*3 ?
How would I test if caching is faster than connecting to a database? (I
want
to test speed of page load, and scalability).
I've stumbled upon http://www.webgecko.com/products/aspcache/, is anyone
familiar with that? The page claims that it's much faster than storing in
application data, but I can't use it on a shared hosting :( Is there
something else similar?
Yeah use ASP.NET and do things like Response caching.
12MB of product data is peanuts.
If your concerned about performance then its more important to consider what
the hit rate will be and how much CPU your ASP code is going to consume.
--
Anthony Jones - MVP ASP/ASP.NET
Another option is to use the FileSystem.Scri pting object to generate a
static html version of each page, and show that. On each request. code can
check for the presence of an html file, and if it exists, show it (include
file, perhaps?), otherwise generate it from the database and show it. If
you amend the details of any product, code will delete the associated html
file.
--
Mike Brind
"Bruce" <fake_dont_send @anything_.comw rote in message
news:e%******** ********@TK2MSF TNGP02.phx.gbl. ..
Thanks for the response.
The site is hosted on a shared hosting (discount asp .net), where I don't
hav control over testing and looking at the RAM etc. If every product is 3
KB of information, is that 4000*3 ?
How would I test if caching is faster than connecting to a database? (I
want to test speed of page load, and scalability).
I've stumbled upon http://www.webgecko.com/products/aspcache/, is anyone
familiar with that? The page claims that it's much faster than storing in
application data, but I can't use it on a shared hosting :( Is there
something else similar?
"Bob Barrows [MVP]" <re******@NOyah oo.SPAMcomwrote in message
news:Of******** ******@TK2MSFTN GP03.phx.gbl...
>It depends on the server hardware (amount of RAM) and the number of applications running on the server. This is the type of question that can only be answered by testing. For example, we have on idea how much memory is consumed by storing one of these productls, let alone 4000. If scalability is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the need to lock the application object while making changes to its contents. While the application is locked, no requests in the application can be served. Whether this is a concern or not depends on the frequency of price changes and can only be answered by testing.
Is the call to the database so time-consuming that caching the data in application is necessary?
Maybe not include files. You can't set their value dynamically. But
Server.Transfer would work.
"Mike Brind" <du***@newsgrou ps.comwrote in message
news:O4******** ******@TK2MSFTN GP02.phx.gbl...
Another option is to use the FileSystem.Scri pting object to generate a
static html version of each page, and show that. On each request. code
can check for the presence of an html file, and if it exists, show it
(include file, perhaps?), otherwise generate it from the database and show
it. If you amend the details of any product, code will delete the
associated html file.
--
Mike Brind
"Bruce" <fake_dont_send @anything_.comw rote in message
news:e%******** ********@TK2MSF TNGP02.phx.gbl. ..
>Thanks for the response.
The site is hosted on a shared hosting (discount asp .net), where I don't hav control over testing and looking at the RAM etc. If every product is 3 KB of information, is that 4000*3 ?
How would I test if caching is faster than connecting to a database? (I want to test speed of page load, and scalability).
I've stumbled upon http://www.webgecko.com/products/aspcache/, is anyone familiar with that? The page claims that it's much faster than storing in application data, but I can't use it on a shared hosting :( Is there something else similar?
"Bob Barrows [MVP]" <re******@NOyah oo.SPAMcomwrote in message news:Of******* *******@TK2MSFT NGP03.phx.gbl.. .
>>It depends on the server hardware (amount of RAM) and the number of application s running on the server. This is the type of question that can only be answered by testing. For example, we have on idea how much memory is consumed by storing one of these productls, let alone 4000. If scalability is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the need to lock the application object while making changes to its contents. While the application is locked, no requests in the application can be served. Whether this is a concern or not depends on the frequency of price changes and can only be answered by testing.
Is the call to the database so time-consuming that caching the data in application is necessary?
Me and my spineroosms. Of course that should have been
Scripting.FileS ystemObject.
"Mike Brind" <du***@newsgrou ps.comwrote in message
news:uu******** ******@TK2MSFTN GP06.phx.gbl...
Maybe not include files. You can't set their value dynamically. But
Server.Transfer would work.
"Mike Brind" <du***@newsgrou ps.comwrote in message
news:O4******** ******@TK2MSFTN GP02.phx.gbl...
>Another option is to use the FileSystem.Scri pting object to generate a static html version of each page, and show that. On each request. code can check for the presence of an html file, and if it exists, show it (include file, perhaps?), otherwise generate it from the database and show it. If you amend the details of any product, code will delete the associated html file.
-- Mike Brind
"Bruce" <fake_dont_send @anything_.comw rote in message news:e%******* *********@TK2MS FTNGP02.phx.gbl ...
>>Thanks for the response.
The site is hosted on a shared hosting (discount asp .net), where I don't hav control over testing and looking at the RAM etc. If every product is 3 KB of information, is that 4000*3 ?
How would I test if caching is faster than connecting to a database? (I want to test speed of page load, and scalability).
I've stumbled upon http://www.webgecko.com/products/aspcache/, is anyone familiar with that? The page claims that it's much faster than storing in application data, but I can't use it on a shared hosting :( Is there something else similar?
"Bob Barrows [MVP]" <re******@NOyah oo.SPAMcomwrote in message news:Of****** ********@TK2MSF TNGP03.phx.gbl. ..
It depends on the server hardware (amount of RAM) and the number of applicatio ns running on the server. This is the type of question that can only be answered by testing. For example, we have on idea how much memory is consumed by storing one of these productls, let alone 4000. If scalability is a concern, you should be striving to avoid page faults.
The other concern is concurrency: I assume you have already realized the need to lock the application object while making changes to its contents. While the application is locked, no requests in the applicatio n can be served. Whether this is a concern or not depends on the frequency of price changes and can only be answered by testing.
Is the call to the database so time-consuming that caching the data in applicatio n is necessary?
This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: J. Baute |
last post by:
I'm caching data in the Application object to speed up certain pages on a website
The main reason is that the retrieval of this data takes quite a while (a few seconds) and fetching the same data from the "cache" hardly takes any time
A basic pattern used to get the data from disk, or from cache is this
data = getDataFromCache("mydata"
if data = "" the
data = getDataFromDisk(
storeDataInCache(data, "mydata"
end i
|
by: Davey |
last post by:
I am planning on developing an application which will involve skills that I
have very little experience of - therefore I would appreciate comments on my
initial design thoughts.
Overview on system:
I'm not going to divulge the exact aims of the application but the purpose
of it is to allow multiple client applications to retrieve data from a
database (on a db server) and feed this data into another Windows
|
by: Dave |
last post by:
I need to add the ability to drag from a Windows Form and drop into a
non dotNet application. For example, having a generated image in my
app that I wish to drag out into explorer as a friendly way to save
it.
I have tried creating the object that I place into the DoDragDrop() by
inheriting the COM interfaces IDropSource and IDataObject with no
luck. If anyone can help I am very much open to suggestions.
Thanks in advance!
|
by: Abhishek Srivastava |
last post by:
Hello All,
In IIS 6.0 We have a concept of worker processes and application pools.
As I understand it, we can have multiple worker process per appliction
pool. Each worker process is dedicated to a pool. If I assign only one
application to a applicaton pool and have multiple worker processes
assigned to that pool. Will my application be processed by many worker
processes?
|
by: B B |
last post by:
Okay, here is what's happening:
I have a reasonably fast laptop (1.4 GHz Mobile M, so comparable to 2.5GHz
P4) doing .net development.
Running Windows XP pro, SP2
IIS is installed and running fine
All SQL Servers I am referring to share a small (10 computers or so) LAN
with a 100MB Switch.
No other computers on the LAN exhibit this problem.
| |
by: Graham |
last post by:
I have been having some fun learning and using the new Controls and methods in .Net 2.0 which will make my life in the future easier and faster. Specifically the new databinding practises and wizards.
But, I have found that trying to do something "outside the norm" adds a rather large level of complexity and/or data replication.
Background
I have been commissioned to create a web-based application for a client. It has a formsaunthentication...
|
by: John Cosmas |
last post by:
I need to execute some threads that load items into my APPLICATION object. I
haven't figured out how to do that when I fire off a thread on a page, that
takes its time and loads data into the APPLICATION level object which will
be used later. Here is an example code I've used to fire it off.
Dim pclsUserServices As clsUserServices = New clsUserServices
Dim pobjUserServices As Thread
pobjThread100 = New Thread(New ThreadStart(AddressOf...
|
by: Timothy.Rybak |
last post by:
Hello all,
This is my first attempt at an application, so kid gloves are
appreciated.
I need to make a very simple form that only has a few elements. One is
TraceCode - a text field that is populated when a user scans a label.
The other is ScanDate - a date/time field that should equal the
date/time of the scan (e.g. 7/31/2006 5:00:00 AM).
|
by: salad |
last post by:
I have an application written in MS-Access. It is a complete
application that manages the day-to-day operations of a business.
The program is nearly ready to be used in other customer sites.
I am wondering if any of you have advice on supporting an application.
Since it has never had any outside exposure, what I don't want is to
make a bunch of sales and not be able to support the issues that arise.
I believe as kinks are worked out...
|
by: Dave |
last post by:
I have a global.asax file with Application_Start defined and create some
static data there and in another module used in the asp.net application and
I realize that static data is shared amongst child apps of an IIS
application and can be used by multiple users during the application life
cycle and for multiple page loads for the same or different page under a
root application.
What I don't understand and need to know is whether that...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look !
Part I. Meaning of...
| |
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth.
The Art of Business Website Design
Your website is...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
| |
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
|
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...
| |