Session Recording

可伸缩性注意事项

安装和运行会话录制所需的额外资源很少,超出运行 Citrix Virtual Apps and Desktops 所需的资源。但是,如果您计划使用会话录制来录制大量会话,或者您计划录制的会话可能导致大型会话文件(例如,图形密集型应用程序),请在规划会话录制部署时考虑系统的性能。

有关构建高度可伸缩的会话录制系统的更多信息,请参阅 Citrix 文章 CTX200869

硬件配置建议

请考虑您将向每个会话录制服务器发送多少数据,以及服务器处理和存储这些数据的速度。您的系统存储传入数据的速率必须高于数据输入速率。

要估算数据输入速率,请将会话录制数量乘以每个录制会话的平均大小,然后除以录制会话的时间。例如,您可能在 8 小时工作日内录制 5,000 个 Microsoft Outlook 会话,每个会话 20 MB。在这种情况下,数据输入速率约为 28 Mbps(5,000 个会话乘以 20 MB,除以 8 小时,再除以每小时 3,600 秒,然后乘以 8 转换为 Mbps)。

您可以通过优化单个会话录制服务器的性能或在不同计算机上安装多个会话录制服务器来提高性能。

磁盘和存储硬件

在规划会话录制部署时,磁盘和存储硬件是需要考虑的最重要因素。您的存储解决方案的写入性能尤其重要。数据写入磁盘的速度越快,整个系统的整体性能就越高。

适用于会话录制的存储解决方案包括由本地磁盘控制器或连接的 SAN 作为 RAID 阵列控制的一组本地磁盘。

注意:

将数据存储在基于 SMB 和 NFS 等文件协议的 NAS 上,可能会带来性能和安全隐患。请使用最新版本的协议以避免安全隐患,并执行规模测试以确保适当的性能。

对于本地驱动器设置,具有内置缓存内存的磁盘控制器可提高性能。缓存磁盘控制器必须具有电池备份功能,以确保在断电时数据完整性。

网络容量

100 Mbps 网络链接适用于连接会话录制服务器。千兆以太网连接可能会提高性能,但其性能不会比 100 Mbps 链接高 10 倍。

确保会话录制使用的网络交换机不与可能争用可用网络带宽的第三方应用程序共享。理想情况下,网络交换机应专用于会话录制服务器。

计算机处理能力

对于安装了会话录制服务器的计算机,请参考以下规格要求:

  • 建议使用双 CPU 或双核 CPU
  • 建议使用 4 GB RAM

即使超出这些规格,性能也不会有显著提升。

部署多个会话录制服务器

如果单个会话录制服务器无法满足您的性能需求,您可以在不同的计算机上安装更多会话录制服务器,使这些会话录制服务器作为负载平衡池工作。在此类部署中,会话录制服务器共享存储和数据库。要分发负载,请将会话录制代理指向负责工作负载分发的负载平衡器。

数据库可伸缩性

会话录制数据库需要 Microsoft SQL Server 2019、Microsoft SQL Server 2017、Microsoft SQL Server 2016、Microsoft SQL Server 2014、Microsoft SQL Server 2012 或 Microsoft SQL Server 2008 R2。发送到数据库的数据量很小,因为数据库仅存储有关录制会话的元数据。录制会话文件本身写入单独的磁盘。通常,每个录制会话在数据库中仅需要大约 1 KB 的空间,除非使用会话录制事件 API 将可搜索事件插入到会话中。

Microsoft SQL Server 的 2019、2017、2016、2014、2012 和 2008 R2 Express 版本对数据库大小施加了 10 GB 的限制。按每个录制会话 1 KB 计算,数据库可以编目大约 4,000,000 个会话。Microsoft SQL Server 的其他版本没有数据库大小限制,仅受可用磁盘空间的限制。随着数据库中会话数量的增加,数据库性能和搜索速度的下降可以忽略不计。

如果您不通过会话录制事件 API 进行自定义,则每个录制会话会生成四次数据库事务:两次在录制开始时,一次在用户登录到正在录制的会话时,一次在录制结束时。如果您使用会话录制事件 API 自定义会话,则每个记录的可搜索事件都会生成一次事务。由于即使是最基本的数据库部署也能每秒处理数百个事务,因此数据库上的处理负载不太可能承受压力。影响足够轻微,以至于会话录制数据库可以与包括 Citrix Virtual Apps™ 和 Desktops 数据存储数据库在内的其他数据库在同一 SQL Server 上运行。

如果您的会话录制部署需要在数据库中编目数百万个录制会话,请遵循 Microsoft 关于 SQL Server 可伸缩性的指导。

可伸缩性注意事项