Я пытаюсь отобразить таблицу, поэтому шаблон довольно прост; шаблон строки выглядит так:
<script type=\"text/mustache\" id=\"template-list-records\">
{{#.}}
<tr>
<td>{{airport_code}}</td>
<td>{{city_code}}</td>
<td class=\"pull-right\">
[<a href=\"result.mics?m_uid={{airport_code}}\" class=\"listlink\">details</a>]
</td>
</tr>
{{/.}}
</script>
Проблема в том, что скорость рендеринга начинает экспоненциально замедляться при рендеринге более 1000 результатов (я предполагаю, что она замедляется экспоненциально все время :), но с 1000+ результатов заметно, что скорость рендеринга нелинейна). Теперь при 4000 результатов страница загружается за 2,3 секунды. При 7000 результатов время рендеринга составляет 7,3 секунды, а рендеринг всего набора результатов (около 8500 результатов) занимает 10 секунд. Теперь мне не нужно ускорять его быстрее, чем 8 секунд для полной загрузки результата (так как это количество времени, которое старый функционал требовал для отображения страницы), это было бы бонусом :), но мне все еще нужно побрить 2 секунды. Я посмотрел в инспекторе Timeline, время уходит на рендеринг; рендеринг начинается через 2,5 секунды.
Я предполагаю, что часть проблемы может быть связана с моим ноутбуком (у меня есть некоторые проблемы с графической картой), но все же мне интересно, есть ли способ ускорить это, например. предварительно скомпилируйте таблицу с 8500 строками и при необходимости добавьте/удалите строки (это действительно таблица со списком аэропортов, поэтому число меняется не часто, а когда и меняется, то не сильно).