每当我们的Web应用程序通过Citrix VDI使用时,我们都会遇到相当恼人的打字延迟。在模式对话框中,滞后最明显,用户可以在其中编辑注释字段。该对话框是标准的bootstrap:
<div class="modal" id="id_ov_notes_editor" data-backdrop="static" data-keyboard="true" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-body">
<div class="well">
<div class="row">
<div class="col-sm-12">
<textarea id="id_ov_notes_editor_textarea" class="form-control" rows="25"></textarea>
</div>
</div>
</div>
</div>
</div>
我们只在Internet Explorer(10和11)中看到延迟,而且只在Citrix上看到。
顶部显示了在Citrix VDI上运行的IE的IE“UI响应”摘要。底部显示使用在我的本地PC上运行的IE的相同用户交互。两次,唯一的操作是在textarea中键入文本。紫色部分归功于IE“Paint”功能,在本地PC上占17%的时间,在Citrix VDI上占61%。
为什么“Paint”会占用Citrix VDI这么多时间?我们可以在我们的Web应用程序中做些什么来减少这种情况吗?有没有VDI设置?
修改 进一步的测试表明滞后直接取决于textarea的显示尺寸。使用简单的HTML只显示textarea,使用相当小的浏览器窗口时滞后不明显,并且在最大化窗口时显着增加。
由于 西蒙