Browse Prior Art Database

Method of Providing Functional Concurrency Checking By a Web-Application in a Server Cluster

IP.com Disclosure Number: IPCOM000020799D
Original Publication Date: 2003-Dec-15
Included in the Prior Art Database: 2003-Dec-15
Document File: 1 page(s) / 6K

Publishing Venue

IBM

Abstract

Cluster servers serve applications from multiple machines. To provide concurrency checking for potential conflicting functions in the application therefore requires a semaphore capability across more than one processes running across many machines.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 1

Method of Providing Functional Concurrency Checking By a Web-Application in a Server Cluster

Concurrency checking provides for blocking or locking out incompatible functions in the same dataset. For example, two simultaneous operations writing data to the same file. On a larger scaled dataset like a web-site, incompatibilities can also occur in higher functions. For example, adding files to the web-site project while performing a publish of the site.

In a web-application cluster configuration where two or more servers serve an application which manages content in a single database (perhaps independently served by one or more database servers), concurrency checking becomes problematic since conflicting operations can be invoked on separate members of the cluster. Currently concurrency checking algorithms only apply to a single process running one or more threads.

Incompatible database operations like updating the same row from two different processes (or systems) is generally handled by the database code itself. Even shared resources like files, connections, ports, or also handled appropriately by the application server and operating system. The higher-end function incompatibilities are only detectable by the web-application itself.

The concurrency checking is performed by profiling the finite available functions in the web application in order to determine compatible execution. Including add/update/delete and reading content as well as archive, publish, and versioning. The system uses the static profile during runtime...