Overview of System Architecture

Microsoft Dynamics NAV is a three tiered software platform. It has been developed to provide the greatest flexibility when supporting the kind of complex environments that require the extensive functionality of an ERP system. The chart below shows how each of the Tiers works together:

The data for the ERP system is stored in a single SQL Database, and takes advantage of the mature Microsoft SQL Server database platform and associated technologies such as Reporting Services and Analysis Services. Database administration and maintenance can be carried out using the standard and familiar tools that are provided with those products. Optimising performance and availability of the Database Tier is done using standard practise for Microsoft SQL Server, and can include technologies such as Transaction Log shipping, clustering, table partitioning and index optimisation.

The Dynamics NAV Server Tier performs the business logic and provides client connectivity via Web Services hosted with IIS. The Server Tier configuration and hardware can be optimised to provide best performance for connected clients, and is hosted on a separate server to the Database Tier for workload distribution. The Server Tier implements the business logic of the system, and allows a high number of simultaneous transactions by taking advantage of multi-threading, which utilises the multi-core architecture of current server processors.

Users connecting to this system will take advantage of technologies available on their local PC or Terminal Server that provide a rich user experience. The Role Tailored client relies on .NET Framework for standard form and layout controls used in presentation and to apply the presentation logic. Offloading the data storage and processing to the other Tiers means that the client can work effectively in a Terminal Services Environment.

The recommendations for processing and memory available under Terminal Services are similar to those of a standalone PC, with the usual allowance for aggregation and considerations of concurrency.