У цифровому світі швидкість — це валюта користувацького досвіду. Ми очікуємо, що веб-сторінки завантажуватимуться за мілісекунди, відео транслюватимуться миттєво, а додатки реагуватимуть швидко. Однак, коли мова йде про перегляд великих документів онлайн — наприклад, 500‑сторінкового медичного звіту або складного архітектурного креслення — користувачі часто змушені чекати.
Вони дивляться на індикатори завантаження. Чекають на смужки «обробка…». Спостерігають, як сторінки рендеряться повільно, блок за блоком.
Це очікування — рішення дизайну, а не закон фізики. Онлайн переглядач документів працює на движку Doconut, який спочатку підготовлює сторінку, яку ви переглядаєте, а решту — під час читання.
Чому застарілі переглядачі повільні
Щоб зрозуміти, чому деякі переглядачі відстають, треба подивитися, як вони працюють.
- Важкі на стороні клієнта: Деякі переглядачі намагаються завантажити весь PDF або файл у браузер і рендерити його за допомогою JavaScript. Для файлу розміром 100 МБ це означає, що користувач повинен чекати, доки завантажиться весь 100 МБ, перш ніж побачити Сторінку 1.
- Неефективне перетворення: Інші конвертують весь документ у зображення на сервері перед показом будь‑чого. Конвертація 1 000 сторінок займає час, затримуючи перший рендер.
Секрет швидкості: потокове передавання за запитом
Doconut використовує розумніший підхід: Потокове передавання на рівні сторінки.
Коли користувач відкриває документ:
- Спочатку перша сторінка: движок рендерить видиму сторінку і надсилає її, тому документ відкривається, поки решта файлу ще обробляється.
- Фонова обробка: Поки користувач читає Сторінку 1, сервер тихо готує Сторінки 2 і 3 у фоні.
- Векторна оптимізація: Замість надсилання важких необроблених растрових зображень, Doconut може надсилати оптимізовані дані SVG, які є легкими та масштабуються ідеально без пікселізації.
Метрики продуктивності, які мають значення
Якщо ви оцінюєте переглядач, вимірюйте ці показники на власних файлах, а не довіряйте заголовкам:
- Час до першого байту (TTFB): наскільки швидко відповідає сервер?
- Час до першої сторінки (TTFP): сприйнята швидкість переглядача, яку користувачі фактично відчувають.
- Плавність прокручування: чи може хтось перегортати 100‑сторінковий документ без різких затримок?
- Холодний vs. теплий запуск: теплий запуск приховує вартість першої обробки. Тестуйте обидва.
Використовуйте одну й ту ж машину, браузер, мережевий профіль та набір документів для кожного кандидата і повідомляйте перцентилі замість середніх. Медіана приховує повільні документи, які генерують запити в підтримку.
Дружній до пропускної здатності
Швидкість — це не лише процесор; це те, що проходить через мережу.
- Мобільні: потокове передавання лише видимої сторінки означає, що телефон не завантажує файл, який ніколи не буде повністю прочитаний.
- Вектор, коли це допомагає: надсилання оптимізованих векторних даних замість великих растрових зображень зберігає технічний креслення чітким при будь‑якому масштабуванні без важкого навантаження.
Спробуйте на вашому найповільнішому файлі
Щирий бенчмарк — це файл, який дратує вас сьогодні. Відкрийте його на OnlineDocumentViewer.com і спостерігайте, коли з’явиться перша сторінка.
Два обмеження, про які варто знати заздалегідь. Завантаження обмежені за форматом — 25 МБ для PDF, PSD, TIFF, Visio, EPUB та зображень, 20 МБ для Excel, PowerPoint та Project, 15 МБ для Word, 10 МБ для CAD та електронної пошти, 5 МБ для HTML, XML і тексту — тому справді величезний скан буде відхилений, а не рендеритиметься повільно. І файл видаляється після перегляду: немає кешу, який зберігав би ваш документ для наступного відвідувача, бо наступного відвідувача немає.
Висновок
Сприйнята швидкість походить від одного рішення: підготувати сторінку, яку читає користувач, і підготувати решту під час читання. Це те, що змушує великий документ виглядати відкритим, а не завантажуваним.
Для файлів, що перевищують зазначені вище обмеження, або документів, які не залишають вашу мережу, той самий движок ліцензується як Doconut SDK і працює на вашому власному обладнанні, де ви підбираєте машину під найбільший файл, який приймаєте.
