Kbase 16332: Benefits Using Progress AppServer to Distribute Applications
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  5/10/1998 |
|
Benefits Using Progress AppServer to Distribute Applications
INTRODUCTION
============
This knowledgebase entry discusses performance, security, and
deployment benefits of distributing your application with
Progress AppServer. It also includes some design considerations
relating to performance benefits.
PERFORMANCE
===========
Using an AppServer will provide performance gains in two ways:
1) Application logic is being done by the AppServer instead of
the client. An AppServer will generally be on a faster machine
so your application logic will now be processed by a faster
machine.
2) There will be much less network traffic because records will
not need to be passed to the client for processing they will be
processed right on the AppServer and results will then be passed
back to the client for presentation to the user.
Taking advantage of performance gains will depend on the design
of your application. For example, a simple read or update to the
database will run faster by directly connecting to the database
than by connecting to an AppServer. Yet, very complex joins and
calculations and manipulation of many records will be much
faster with an AppServer than by directly connecting to the
database.
Connecting to an AppServer should also take between 5 and 15
seconds. This time lag could by made somewhat invisible to
end users by creating and connecting to all AppServers at
application startup so that they are not waiting at
different points in the application. This time lag could
also outweigh the performance gains if your application
is running quick procedures on the AppServer. In these cases
you may decide to take this performance penalty in order to
take advantage of the security and deployment benefits of
using an AppServer.
SECURITY
========
Using Progress AppServer for security will enable applications
to have security at the procedure level instead of by database
tables.
Users may or may not have access to certain remotes procedures
and this access can be determined at runtime. Refer to
knowledgebase entry 16208: Using the Progress AppServer for
Security with Export Table.
DEPLOYMENT
==========
Most application code will only need to be deployed on the
AppServer machine instead of each client machine. This will
also make changes to the application much easier since those
changes will only need to be made in one place. This is
especially critical when considering the impact of making a
schema change in a distributed application environment.
Progress Software Technical Support Note # 16332