Building Distributed
Applications
Using the Progress AppServer
Reasons to Partition
Reasons to partition your application using the Progress AppServer include:
- Performance—Using the AppServer, you can significantly improve the performance of your distributed application because the AppServer allows you to distribute the processing load across the machines in your network. Network traffic is minimized, which can result in a dramatic improvement in client application throughput and/or response time depending on how you program your application and configure it with the AppServer.
You further also improve the performance of your distributed application, especially one that has an event-driven 4GL client, by initiating procedure requests asynchronously. By default, a procedure executes on the AppServer as a synchronous request, requiring the client to wait for the result before continuing execution. If you initiate an asynchronous request, the 4GL client continues execution without waiting for the result. Thus, the user can continue to execute client functions after submitting one or more asynchronous requests for execution. The client then processes the results of each asynchronous request as it becomes available.
- Security—You can restrict access to data, as required, but at the same time take advantage of the ability to distribute and share data throughout your network. In addition to standard Progress Database security features and any other security features that your enterprise employs, the Progress AppServer allows you to protect your data at the business logic level (where business rules are applied in your application). The Progress AppServer accesses your database with user authorization that is independent of the client application. Using the Progress AppServer allows you to restrict database access to the AppServer user, thus forcing all client applications to go through the AppServer to gain access to your corporate data. It is the business logic that you write using the 4GL and deploy with the AppServer that provides this business logic level of security.
- Maintenance—Because your core business logic is deployed at your AppServer site rather than at the client application sites across the network, maintenance of your distributed application is simplified significantly. A modification to the business logic only needs to be made at the single AppServer site rather than at each of the client sites across the network.
- Open Client Access—Using the Progress Open Client Toolkit, you can build a client application in Java or as an ActiveX Controller, and have that client application execute your business logic on an AppServer deployed on some other machine in your network. A single AppServer instance can simultaneously support 4GL, Java, and ActiveX client applications.
- Intelligent Data Interface—As the interface to the Progress Database, the AppServer provides functionality similar to database triggers and stored procedures. In addition to native Progress-database triggers, you can use procedures running on the AppServer to filter or otherwise process database queries and updates.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |