کاوش یک حافظه پنهان عقب/ جلو برای Chrome

آدی عثمانی
Addy Osmani

در تیم Chrome، ما در حال بررسی یک کش جدید به عقب/ جلو برای ذخیره سازی صفحات در حافظه هستیم (حفظ وضعیت جاوا اسکریپت و DOM) زمانی که کاربر از آنجا خارج می شود. این قطعاً یک تلاش بی‌اهمیت نیست، اما اگر موفق شود، حرکت به جلو و عقب را بسیار سریع می‌کند.

یک کش عقب/ جلو (bfcache) هنگام دور شدن از یک صفحه، کل صفحات (از جمله پشته جاوا اسکریپت) را در حافظه پنهان نگه می دارد، به طوری که وقتی کاربر به عقب پیمایش می کند، می توان وضعیت کامل صفحه را بازیابی کرد. به این فکر کنید که وقتی صفحه ای را ترک می کنید مکث می کنید و بعد از بازگشت آن را پخش می کنید .

در اینجا اولین نگاه از یک نمونه اولیه از کش عقب / جلو در عمل در دسکتاپ است:

ما همچنین پیش نمایشی از کش عقب و جلو که در Chrome for Android کار می کند داریم:

ما تخمین می زنیم که این تغییر می تواند عملکرد تا 19٪ از تمام پیمایش ها را برای Chrome تلفن همراه بهبود بخشد . می توانید جزئیات بیشتری در مورد این ویژگی در توضیح bfcache بیابید.

با این تغییر، ریسک تعامل بین مرورگرهای متوسط ​​وجود دارد. هم فایرفاکس و هم سافاری در حال حاضر پیاده‌سازی‌های کش رو به جلو دارند که به طور ماهرانه‌ای متفاوت هستند. کروم به دلیل ناسازگاری با معماری چند فرآیندی کروم، از پیاده سازی WebKit از bfcache استفاده نمی کند.

قصد رسمی ما برای پیاده سازی حافظه پنهان عقب به جلو در blink-dev برای هر کسی که مایل به مشارکت در بحث است، است.

از آرتور سونزوگنی، الکساندر تیمین، کنجی باهوکس، و سامی برای کمک به جمع آوری نمونه اولیه ویدیوهای ما تشکر می کنیم.