?
Solved

VB ActiveX DLL Performance Issues

Posted on 2003-02-20
12
Medium Priority
?
194 Views
Last Modified: 2010-05-01
Hi,

I'm currently working on a system which uses ASP's to access a MS Access Database.  The middle business logic layer is done with a Visual Basic ActiveX DLL that was created in VB 6.0.  So visually, the ASP relies on the DLL to pull values and calculate them from the DB, a common development approach.

     ASP <-- DLL <-- DB

The issue is that as the size of the database increases, the performance for the system slows down considerably for the function and method calls to the DLL.  However when these same function and method calls are made in the VB IDE before the DLL is compiled, the performance is not bad.  

An example, I use a method called getMeasuresByOwner and I pass in an owner ID.  If I execute that from the ASP by creating an object from the dll, it takes about 17 seconds.  However if I call that same method from a form before compiling the DLL, it takes me only 6 seconds.  

Is there any reason why the performance should suffer so much?

Thanks.
0
Comment
Question by:aamir11
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 5
  • 2
12 Comments
 
LVL 27

Accepted Solution

by:
Dabas earned 400 total points
ID: 7991144
The main question here is how you are accessing the DB.

When you do so on the IDE, is it on the same computer?

When in your compiled application, is it on the same computer?

Even if it is on the same computer, do you access it directly or through a network path (is it c:\... or \\computer_name\... ) If the latter, then the reading of the data is still going through the network, and can slow you down

Dabas
0
 
LVL 1

Author Comment

by:aamir11
ID: 7993589
Both times I access it, it is through the network.  I understand that hardware differences might cause this as well, but I was hoping to see if there were any issues with how I compile the DLL or how I register and call the DLL that might affect performance.
0
 
LVL 1

Author Comment

by:aamir11
ID: 7993679
Both times I access it, it is through the network.  I understand that hardware differences might cause this as well, but I was hoping to see if there were any issues with how I compile the DLL or how I register and call the DLL that might affect performance.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 27

Expert Comment

by:Dabas
ID: 7996350
Do you have access to MTS (Microsoft Transaction Service?)

Dabas
0
 
LVL 1

Author Comment

by:aamir11
ID: 8009033
Yes, could that be an issue?
0
 
LVL 27

Expert Comment

by:Dabas
ID: 8010724
It is not, but if you register your dlls on MTS and use them in a client - server type of solution it may be the end to your problem
0
 
LVL 1

Author Comment

by:aamir11
ID: 8328437
Apparently the time required to load the DLL into memory was slowing performanace down considerably.   To get a slight performance increase I recompiled in VB with the "Option Explicit" tag and selected the option "Retained in Memory".  I guess this question is done?
0
 
LVL 27

Expert Comment

by:Dabas
ID: 8329040
aamir11:

You can post a comment in the Cleanup section of Community support asking for a refund of your points.

Alternatively, you can choose one of my answers (since there was nobody else active) and assign it a grade of A, B or C

Dabas
0
 

Expert Comment

by:CleanupPing
ID: 8901348
aamir11:
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Experts: Post your closing recommendations!  Who deserves points here?
0
 
LVL 1

Author Comment

by:aamir11
ID: 8902361
Can I get my points refunded?
0
 
LVL 27

Expert Comment

by:Dabas
ID: 8906195
aamir11,
If you want to delete this question, post a zero-point question in http://www.experts-exchange.com/Community_Support/

Subject: Moderator Please Delete
Body: Please delete this question:
http://www.experts-exchange.com/Programming/Programming_Languages/Visual_Basic/Q_20523073.html


Dabas
0
 

Expert Comment

by:CleanupPing
ID: 9056647
aamir11:
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
EXPERTS:
Post your closing recommendations!  No comment means you don't care.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
This article describes how to use a set of graphical playing cards to create a Draw Poker game in Excel or VB6.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Suggested Courses
Course of the Month10 days, 7 hours left to enroll

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question