作者: James Mickens , Jeremy Elson , Jon Howell , Jay Lorch
关键词:
摘要: Early web content was expressed statically, making it amenable to straightforward prefetching reduce user-perceived network delay. In contrast, today's rich applications often hide behind JavaScript event handlers, confounding static techniques. Sophisticated use custom code prefetch data and do other anticipatory processing, but these solutions are costly develop application-specific.This paper introduces Crom, a generic speculation engine that greatly simplifies the task of writing low-latency, applications. Crom takes preexisting, non-speculative handlers creates speculative versions, running them in cloned browser context. If user generates speculated-upon event, commits precomputed result real Since is written JavaScript, runs on unmodified client browsers. Using experiments with versions applications, we show pre-commit overhead easily fits within think time. We also speculatively fetching page precomputing its layout can make subsequent loads an order magnitude faster.