MqContextC - setup and manage a storage used to persist data-packages … More...
Functions | |
int | csmqmsgque.MqContextC.StorageDelete (int transLIdP_inout=0) |
C#: → C-API delete the storage-row identified by the transLIdP_inout … | |
int | csmqmsgque.MqContextC.StorageImport (int transLIdP_inout=0) |
C#: → C-API import the storage-package into the read-data-package … | |
void | csmqmsgque.MqContextC.StorageClose () |
C#: → C-API close the storage. … | |
void | csmqmsgque.MqContextC.StorageDecrRef (int transLId) |
C#: → C-API decrease the internal refCount lock of the database-entry | |
void | csmqmsgque.MqContextC.StorageIncrRef (int transLId) |
C#: → C-API increase the internal refCount lock of the database-entry | |
void | csmqmsgque.MqContextC.StorageLog ([CallerMemberName]string callfunc=null) |
C#: → C-API log the storage the status of the open transactions | |
void | csmqmsgque.MqContextC.StorageOpen (string storageFile) |
C#: → C-API switch to a file-based-transaction-database … | |
int | csmqmsgque.MqContextC.StorageCount () |
C#: → C-API count the number of storage-rows … | |
int | csmqmsgque.MqContextC.StorageErrCnt (int transLId) |
C#: → C-API increment and return the database row-error-count for the row defined with transLId | |
int | csmqmsgque.MqContextC.StorageExport () |
C#: → C-API export the read-data-package into the STORAGE … | |
List< object > | csmqmsgque.MqContextC.StorageResolve () |
C#: → C-API extract the context->link.protect.rmtTransLId entry from the database | |
MqContextC - setup and manage a storage used to persist data-packages …
The storage is divided into: INTERNAL and EXTERNAL storage. Only the read-data-package can be stored or dumped into the storage.
The read-data-package is saved into the storage using:
ServiceStorage | setup a service listen on a MqContextC_ServiceApi_Identifer and save all read-data-package into the STORAGE … |
StorageExport | export the read-data-package into the STORAGE … |
The read-data-package is restored from the storage using:
StorageImport | import the storage-package into the read-data-package … |
ProxyForward | send the entire read-data-package-data to the link-target … |
All this usually happen in an Event Handler |
Some important facts of the storage-feature:
The following internal storages are supported:
Performance analyse:
Nhi1Exec perfclient.c --all --storage VALUE @ perfserver.c
.database | performance | host crash | application crash | info |
---|---|---|---|---|
memdb | 30.000 | data lost | data lost | non persistent |
tempdb | < 30.000 | data lost | data lost | uses memory and/or temporary file |
filedb (mem) | 10.000 | data lost | data safe | in memory filesystem |
filedb (disc) | 50 | data safe | data safe | disc-speed is the key factor |
|
inline |
C#:
→ C-API ctx.StorageClose()
close the storage. …
Definition at line 1822 of file MqContextC.cs.
|
inline |
|
inline |
|
inline |
C#:
→ C-API int ctx.StorageDelete(int transLIdP_inout = 0)
delete the storage-row identified by the transLIdP_inout …
Definition at line 1806 of file MqContextC.cs.
|
inline |
C#:
→ C-API int ctx.StorageErrCnt(int transLId)
increment and return the database row-error-count for the row defined with transLId
Definition at line 1866 of file MqContextC.cs.
|
inline |
|
inline |
C#:
→ C-API int ctx.StorageImport(int transLIdP_inout = 0)
import the storage-package into the read-data-package …
Definition at line 1813 of file MqContextC.cs.
|
inline |
|
inline |
C#:
→ C-API ctx.StorageLog([CallerMemberName]string callfunc = null)
log the storage the status of the open transactions
Definition at line 1840 of file MqContextC.cs.
|
inline |
C#:
→ C-API ctx.StorageOpen(string storageFile)
switch to a file-based-transaction-database …
Definition at line 1848 of file MqContextC.cs.
|
inline |
C#:
→ C-API {otherCtxP:MqContextC otherLIdP:int} ctx.StorageResolve()
extract the context->link.protect.rmtTransLId
entry from the database
Definition at line 1882 of file MqContextC.cs.