Have anybody tried to setup Application Server to post invoices and payments in the background.
The target is to avoid table locking for 70 concurent users. Will it help if NAS is installed on dedicated high performance server and does the posting while workstations only mark invoices to be posted?
Regards,
Arturs Gedvillo
CTO
0
Comments
Jan Hoek
Product Developer
Mprise Products B.V.
Using NAS to post will create the same table locks that a user does while posting.
Jan Hoek
Product Developer
Mprise Products B.V.
It's just in theory, wanted to hear someones experience on this.
BTW is it possible to view records of locked table ?
Arturs Gedvillo
CTO
NAS is just anoher user. It will lock the same tables during posting that a normal user would. One NAS would not get "in it's own way", but it could get in the way of normal users. No different from a normal user posting.
With the native db, another user can view the latest committed version of the table's data.
With SQL, it depends on the transaction type.
I want to achieve that users in 15 branches can post purchase invoices, item transfers and BOM journals without delays.
Arturs Gedvillo
CTO
What do you mean by "without delays"?
Example 1:
A user creates a purchase invoice and post it. The posting takes 10 seconds. This means the user must wait at least 10 seconds before beginning to enter the next purchase invoice.
Example 2:
A user creates a purchase invoice and submits it to a queue for posting by NAS. The queue is processed by NAS on a FIFO basis. The invoice will take 10 seconds (maybe less if NAS on faster machine) to process when its turn comes up. But if 5 other invoices (same size) are already in the ueue, the this invoice will take 1 minute to post.
Maybe I should go more into details... :roll:
Arturs Gedvillo
CTO
If all postings will be done from NAS than you can have following effects:
1. Postings are, depending on your network, 50% faster.
2. You must not use table lock if one NAS post all (SQL Server has its on locking rules). If you use no locking, SQL Server is faster.
3. You don't must search for the last entry no. use an alternate method like Single instance CU, where you save the last Entry no. for all Entry line types
All documents, where you have a header (Sales Header, Purchase Header,...are not the problem. The testing process must be splitted to ensure to have no errors during the posting process.
On the journals you should make your on header, where you can make your marks like "open", "Tested" (ready for posting).
I think it’s the only way, to have a high performance environment with a lot of "Working" user.
Also, by using a server type machine, you have more power at your disposal, and it is just one network connection. It saves time all around, and I hear this approach has been used very successfully to solve performance (i.e. locking) problems.
RIS Plus, LLC
NAS is usually run on a faster machine that has direct access to the network backbone. (resulting in better performance).
NAS does not have the overhead of a graphical interface (resulting in better performance).
NAS is useful if the goal is to free up the user to move onto the next process (ie. enter the next order, or pick the next order). However NAS will still access and lock the same resource that the client would, if other clients are attempting to access these resources (different functions) then NAS will not resolve the issue.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.