Xytech Architecture
The Xytech solution utilizes a multi-tier architecture, requiring at minimum three server roles: a database server, an application server, and an instance of Microsoft Internet Information Server™ (IIS) web server.
The Xytech Windows client requires Microsoft Windows™ 10. The Web client is hosted by IIS and accessed using compliant web browsers.
- The Xytech Windows client can be deployed using Microsoft ClickOnce™ technology via a URL, or a file share; or can be installed manually (e.g. for deployments utilizing Windows Remote Desktop). For distributed client installations over a high latency network, a remote hosting technology such as Windows Remote Desktop is recommended. To utilize the Xytech Windows client application on the Macintosh™ or Linux™ platforms, a Windows emulator application or a Windows-compatible remote desktop solution is required.
- The Xytech Web client is a web application and can be run on devices that support a current HTML5-compatible web browser. To ensure an acceptable user experience that accesses the complete suite of applications, Xytech recommends that such devices have a minimum screen size of 7 inches (17.8 cm) measured diagonally, with a 9-inch (22.8 cm) or larger screen preferred. For specific applications (Library and Rental Check In/Out/Move), Xytech provides Layouts optimized for the smaller screens found on hand-held devices.
The Xytech Application Server (“AppServer”) software is installed on an instance of the Windows Server Operating system. The Xytech system stores its data in the Microsoft SQL database management system. A Microsoft Windows Internet Information Server (IIS) is required as the host environment for the online Help documentation and the Web user interface, and is necessary to utilize the URL option for the Windows ClickOnce™ deployment service.
- If the AppServer is installed on a separate server from the Xytech SQL database, Gigabit Ethernet (or faster) connectivity between the application server and the database server is recommended.
For smaller installations (less than thirty users), the database, AppServer, and Web server (IIS) can be hosted on a single, suitably configured Windows Server system. For larger installations or installations with moderate to heavy transaction volumes, Xytech recommends that separate servers (physical or “virtual”, see page 9) be utilized for each component in the installation. This includes the database server, the AppServer, and IIS. In addition, where fault tolerance or fail-over capabilities are required, multiple DBMS and AppServer instances are necessary, configured in accordance with the customer’s environment.
In general, single server solutions are not recommended for Xytech implementations where a larger quantity of connections (users, integrations, web services) are to be supported. Additional technical requirements cannot be specified until the customer has provided Xytech with detailed information and analysis specific to the individual installation.
The TCP/IP networking protocol is utilized for all communication between Windows clients and servers. The Web client application utilizes HTTP over any compatible topology. HTTPS can be utilized by applying SSL certificates to the full application stack.
The Xytech software may be deployed either directly on a host computer or in a virtual machine (aka “VM”) environment. The Xytech SQL Server database may be deployed either on a dedicated SQL Server or as a database instance on a SQL farm.
NOTE: Microsoft .NET Framework 4.7.2 is required for all Windows client and server systems in order to utilize Xytech v10 and above. This version of the .NET Framework is incompatible with the Microsoft Windows XP and Microsoft Server 2003 (and earlier) Operating Systems, and therefore these Operating Systems are not supported and cannot be utilized.
Hardware and Software Guidelines for Client Workstations (Windows)
Item |
Minimum |
Recommended |
Comments |
Operating System |
Windows 10 Professional with .NET Framework 4.7.2 | Windows 10 with .NET Framework 4.8 | A 64bit instance of Windows is required to utilize more than 4 GB of RAM. Windows 7 (and earlier) is not supported for Xytech version 10 and above. |
Processor |
2 GHz or faster CPU | 2 GHz or faster dual-core CPU | 2.8 GHz or faster dual-core CPU recommended for Scheduling module users. |
PC Memory (RAM) |
4 GB RAM | 8+ GB RAM | 8 GB RAM (or greater) is recommended for “power users” who frequently have multiple windows open at once and/or need to manage a large quantity of data |
Available Hard Disk Space |
1 GB | 1 GB | |
Display Adaptor |
1920x1080/1200, 24-bit color or higher | 2560x1600 24-bit color or higher | 2560x1600 (widescreen) is recommended for schedulers and “power users” that frequently have multiple windows open simultaneously |
Display |
24 inch (61 cm) color | 30 inch (76 cm) color or larger | 30 inch (76 cm) widescreen recommended for Scheduling module users |
Network Interface |
100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that will require access to Xytech services |
Web Browser |
Google Chrome, Microsoft Edge, Firefox Quantum (current versions). Based on Xytech’s internal evaluations, Google Chrome is the preferred browser to use for the Xytech Web user interface. | Microsoft Internet Explorer has been deprecated by Microsoft and is not recommended for any OS. |
Hardware and Software Guidelines for Client Workstations (Macintosh)
Item |
Minimum |
Recommended |
Comments |
| Operating System | Mac OS “Mojave” (10.14) or higher | Mac OS “Big Sur” (11) or higher | |
| Memory (RAM) | 4 GB RAM | 8+ GB RAM | If running a virtualization solution, a minimum of 4 GB of RAM is required with at least 2 GB allocated to Windows OS. |
| Available Hard Disk Space | 1 GB | 2 GB | If running a virtualization solution, a minimum of 20 GB of free disk space is required |
| Display Resolution | 1920x1080/1200, 24-bit color or higher | 2560x1600 24-bit color or higher | 2560x1600 (widescreen) is recommended for schedulers and “power users” that frequently have multiple windows open simultaneously. |
| Monitor | 24 inch (61 cm) color | 30 inch (76 cm) color or larger | 30 inch (76 cm) widescreen recommended for Scheduling module users. |
| Network Interface | 100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that will require access to Xytech services. |
Web Browsers |
Apple Safari, Firefox Quantum or Google Chrome (current versions). Based on Xytech’s internal evaluations, Google Chrome is the preferred browser to use for the Xytech Web user interface. |
Additional Comments |
Use of Macintosh computers to access the Xytech Windows client application requires a Windows Terminal Server, or Citrix remote hosting, or a Windows desktop virtualization solution (e.g. VMWare Fusion, etc.). The Web user interface runs directly in the web browser applications |
Hardware and Software Guidelines for iOS devices (iPhone, iPad)
Item |
Minimum |
Recommended |
Comments |
Operating System |
Current version of iOS as provided by Apple. |
||
Device Storage |
16 GB (more Memory may be required depending on the quantity of other installed Apps and the volume of data on the device) |
Additional Comments |
Xytech software can be accessed on iOS devices using a compliant web browser and the Xytech Web user interface. For sites that wish to utilize an iOS device as a remote access client to a Microsoft Remote Desktop, Xytech recommends the current version of the Microsoft iOS Remote Desktop application. This is available from the Apple App Store. For specific applications (Library and Rental Check In/Out/Move), Xytech provides Layouts optimized for the smaller screens found on hand-held devices. Contact Xytech for assistance with these Layouts and specific hardware recommendations. |
Hardware and Software Guidelines for the SQL Database Server
Item |
Minimum |
Recommended |
Comments |
Operating System |
Microsoft Windows 2016 Server with .NET Framework v4.7.2 | Microsoft Windows 2019 with .NET Framework v4.8 | 64-bit OS Windows Server 2012 (and earlier) is not supported for Xytech v10 and above. |
DBMS |
Microsoft SQL Server 2019 | Microsoft SQL Server 2022 |
SQL Server 2022 is HIGHLY recommended for performance reasons 64 bit Standard or Enterprise editions. Versions of SQL Server earlier than 2019 are not supported for the Xytech v10 and above. |
Processor |
2.5 GHz dual-core CPU | 3.0 GHz dual-core CPU or better | Single dual-core processor supporting up to 50 concurrent users - recommend two additional cores for each additional 50-75 concurrent users. |
Memory (RAM) |
8 GB RAM This will support up to 25 concurrent users for typical usage. Add 8 GB for each multiple of 25 additional concurrent users. |
16 GB RAM or more This will support up to 50 concurrent users for typical usage. Add 8 GB for each multiple of 25 additional concurrent users. |
|
Hard Disk System |
FC/SCSI/SATA/SAS with Hardware RAID | SSD with hardware RAID | For systems with more than 150 users, DB table storage optimization may be required for maximum performance. |
Available Hard Disk Space |
40 GB | 100 GB | Disk usage is based on activity, sizes given are starting points with the realization disk usage will grow over time and should be monitored |
Network Interface |
100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that will require access to Xytech services. |
| The Xytech system natively supports Microsoft SQL Server clustering. Xytech recommends SQL Server clustering for installations that require load balancing and/or fault tolerance. |
Hardware and Software Guidelines for Xytech Application Server
Item |
Minimum |
Recommended |
Comments |
Operating System |
Microsoft Windows 2016 Server with .NET Framework v4.7.2 | Microsoft Windows 2019 with .NET Framework v4.8 | |
Processor |
2.8+ GHz dual-core processor | 3.0+ GHz quad-core processor | Quad-core processors strongly recommended. Second quad-core processor recommended for greater than 100 users. |
Memory (RAM) |
8 GB RAM available for Xytech software | 16 GB RAM available for Xytech software | Additional AppServer(s) are recommended for greater than 100 users. |
Hard Disk Space |
2 GB available for Xytech software | 2 GB available for Xytech software | |
Network Interface |
100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that will require access to Xytech services. The Microsoft OLE DB Driver for SQL Server is required to connect to the SQL DBMS. |
Additional Comments |
Large implementations should run the Xytech Application Server on a separate server from the database server to ensure peak performance. For sites that wish to utilize multiple instances of the AppServer for load balancing and/or fault tolerance, additional AppServer instances can be licensed, please contact your Xytech Account Manager for pricing. |
Hardware & Software Guidelines for Application Server (Windows Remote Desktop Server)
Item |
Minimum |
Recommended |
Comments |
Operating System |
Microsoft Windows 2016 with .NET Framework v4.7.2 | Microsoft Windows 2019 with .NET Framework v4.8 | |
Application Deployment |
Windows Remote Desktop | Windows Remote Desktop | |
Processor |
2.5 GHz dual-core CPU | 2.8GHz quad-core CPU or faster | Quad-core processor strongly recommended |
Memory (RAM) |
4 GB RAM | 8 GB RAM or more |
Windows Terminal Services server requires a minimum of 512 MB RAM plus additional RAM for each user to support running their programs on the server. Users require a minimum allocation of 128 MB each. |
Hard Disk Space |
1 GB | 2 GB | |
Network Interface |
100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that will require access to Xytech services. The Microsoft OLE DB Driver for SQL Server is required to connect to the SQL DBMS. |
Additional Comments |
Large implementations may require multiple application servers and must be installed and configured to support load balancing. For sites that wish to utilize an iOS device as a remote access client, Xytech recommends the current version of the Microsoft iOS Remote Desktop application. This is available from the Apple App Store. Xytech does not directly support Microsoft Windows Remote Desktop. Xytech will work with the customer’s personnel to ensure Xytech software is working properly once remote hosting environment is established by the customer. |
Hardware and Software Guidelines for Platform Web/Integration/Help system Server
Item |
Minimum |
Recommended |
Comments |
Operating System |
Microsoft Windows 2016 Server with .NET Framework v4.7.2 (MSMQ optional), and the IIS (Internet Information Server) Service enabled. | Microsoft Windows 2019 with .NET Framework v4.8 (MSMQ optional), and the IIS (Internet Information Server) Service enabled. |
The IIS web server instance must be configured and enabled for operational use in support of the following components: • Xytech Web user interface, • Xytech Smart Client ClickOnce installation option, • as a host for the Xytech online Help system. The MSMQ service is required in message queues are being used for integrations and/or the Xytech email notification functionality. |
Processor |
2.5 GHz dual-core processor or faster | 2.8 GHz quad-core processor or faster | |
Memory (RAM) |
4 GB available for Xytech software | 8 GB or more available for Xytech software | With a minimum of 1 GB free for Platform Web/API/Data Integration Server applications |
Hard Disk System |
SCSI/SATA/SAS | SCSI/SATA/SAS | |
Hard Disk Space |
10 GB available for Xytech software | 10 GB available for Xytech software | |
Network Interface |
100 Mbps network interface | 1000 Mbps (aka “Gigabit”) network interface | TCP/IP protocol required for all network nodes that require access to Xytech services. The Microsoft OLE DB Driver for SQL Server is required to connect to the SQL DBMS. |
Additional Comments |
This server hardware specification is configured for the exclusive use of the Xytech services and processes. If additional services or software not related to Xytech Systems’ software are to be installed or supported on this hardware platform, increased CPU, RAM, disk capacity, and Windows user licenses may be required. |
General considerations with regards to the use of Virtual Machines which effect system performance
- When deploying Xytech Application Server and/or SQL database server instances on Virtual Machines, the “bare metal” server guidelines detailed in the preceding sections should be increased 20% to 30% to account for Virtual Machine overhead.
- The Virtual Machine instance(s) should be dedicated to Xytech software and not shared with other applications.
- Each Virtual Machine should be bound to its own network interface card (NIC) so it does not share bandwidth with other Virtual Machines.
- SQL Server should be set to use all available cores (default).
- Map virtual disks directly to physical disks. Avoid dynamic disks.
- Physical disks should not be shared with other Virtual Machines.
- Ideally, each Virtual Machine should have its own controllers and disk array.
- Generally, RAID 10 is more efficient than RAID 5.
- SQL Server log and data should be stored on separate physical disks.
- Taking a snapshot of the Virtual Machines will sever connections with all clients. Snapshots cause SQL I/O to freeze, breaking the connection with the Xytech Application Server. Existing client connections are severed as a result and must be re-established; therefore, snapshots should be executed during scheduled maintenance, or during periods of low user activity.
- In summary, the goal is to isolate and/or reduce contention of resource usage between Virtual Machines.
For further information:
IMPORTANT: These guidelines are offered as basic recommendations and are subject to revision without notice. Xytech Systems, LLC makes no warranty or guarantee of system performance or specific suitability of this hardware or software to customer’s specific requirements. All trademarks are owned by their respective Parties.