برنامه های کاربردی وب ما همچنان از نظر دامنه، جاه طلبی و عملکرد خود به رشد خود ادامه می دهند - این یک چیز خوب است. با این حال، راهپیمایی بیامان به سمت یک وب غنیتر، روند دیگری را پیش میبرد: میزان دادههای دانلود شده توسط هر برنامه با سرعت ثابتی در حال افزایش است. برای ارائه عملکرد عالی، باید تحویل هر بایت را بهینه کنیم!
یک وب اپلیکیشن مدرن چگونه به نظر می رسد؟ بایگانی HTTP می تواند به ما در پاسخ به این سوال کمک کند. این پروژه با خزیدن دورهای در محبوبترین سایتها (بیش از 300000 از فهرست 1M برتر الکسا) و ثبت و جمعآوری تجزیه و تحلیلها در مورد تعداد منابع، انواع محتوا و سایر ابردادهها برای هر مقصد، نحوه ساخت وب را دنبال میکند.
داده های بالا روند رشد تعداد بایت های دانلود شده برای مقاصد محبوب در وب را بین ژانویه 2013 تا ژانویه 2014 نشان می دهد. البته، همه سایت ها با سرعت یکسان رشد نمی کنند یا به مقدار یکسانی داده نیاز دارند، به همین دلیل است که ما چندک های مختلف در توزیع را برجسته می کنند: 50 (متوسط)، 75 و 90.
یک سایت میانه در ابتدای سال 2014 از 75 درخواست تشکیل شده است که به 1054 کیلوبایت کل بایت های انتقال یافته می رسد و تعداد کل بایت ها (و درخواست ها) با سرعت ثابتی در طول سال گذشته افزایش یافته است. این به خودی خود نباید تعجب آور باشد، اما پیامدهای عملکردی مهمی را به همراه دارد: بله، سرعت اینترنت در حال افزایش است، اما با نرخ های مختلف در کشورهای مختلف سریعتر می شود و بسیاری از کاربران هنوز در معرض محدودیت های داده و اندازه گیری گران هستند. برنامه ها - به ویژه در تلفن همراه.
بر خلاف همتایان دسکتاپ خود، برنامه های وب نیازی به فرآیند نصب جداگانه ندارند: URL را وارد کنید و ما در حال اجرا هستیم -- این یکی از ویژگی های کلیدی وب است. با این حال، برای تحقق این امر، اغلب مجبوریم دهها و گاهی صدها منبع مختلف را واکشی کنیم، که همگی میتوانند به مگابایت داده اضافه شوند و باید در صدها میلیثانیه گرد هم آیند تا تجربه وب فوری را که ما به دنبال آن هستیم، تسهیل کنیم.
دستیابی به یک تجربه وب فوری در پرتو این الزامات کار کوچکی نیست، به همین دلیل است که بهینه سازی کارایی محتوا بسیار مهم است: حذف دانلودهای غیر ضروری، بهینه سازی رمزگذاری انتقال هر منبع از طریق تکنیک های فشرده سازی مختلف، و استفاده از حافظه پنهان هر زمان که ممکن است برای حذف دانلودهای اضافی.