কেন এই প্রতিক্রিয়া ক্যাশে করা হচ্ছে?


32

আমার একটি ক্লায়েন্ট রয়েছে যার সাইটের সূচক। Html বর্তমানে এই শিরোনামগুলি নিয়ে ফিরে আসে:

স্বীকৃতি-রেঞ্জ: বাইট
সংযোগ: রাখুন-জীবিত
সামগ্রী-এনকোডিং: জিজিপ
সামগ্রী-দৈর্ঘ্য: 3658
সামগ্রী-প্রকার: পাঠ্য / এইচটিএমএল
তারিখ: থু, 10 অক্টোবর 2013 07:36:27 GMT
ইটাগ: "4aa95e1-2ed2-4e721324728b7"
কিপ-অ্যালাইভ: সময়সীমা = 5, সর্বোচ্চ = 100
শেষ-সংশোধিত: মঙ্গল, 24 সেপ্টেম্বর 2013 13:34:30 জিএমটি
সার্ভার: অ্যাপাচি / ২.২.২২
পরিবর্তনযোগ্য: স্বীকৃতি-এনকোডিং, ব্যবহারকারী-এজেন্ট

আমি স্পষ্টত সুপারিশ যে তারা যোগ যাচ্ছি Expiresবা Cache-Controlযথাযথ হিসাবে, কিন্তু আমি বিভ্রান্ত করছি: Chrome এই সম্পদ ও ব্যবহারের ক্যাশে (ক অনুরোধ পাঠিয়ে না থেকে এটা ক্যাশে এ সব (উদাহরণস্বরূপ), বেশ কয়েক ঘন্টা পরেও, এটি একটি কপি পুনঃব্যবহৃত এটি গতকাল সকাল সাড়ে ৮ টায় সাড়ে ৮ টায় ক্যাশেড হয়েছে)। আমি এই Chrome কনসোলের নেটওয়ার্ক ট্যাব, যেখানে এটি অনুরোধ দেখায় এবং হয়েছে বেশ পরিষ্কারভাবে দেখতে পারেন 200 (OK)ধূসর মধ্যে স্থিতি কলাম এবং (from cache)মধ্যে সাইজ কলাম। (আমি ক্রোমের ক্যাশে ডিফল্ট পরিবর্তন করি নি))

আমি বুঝতে পারি যে অনুমানটি ব্যবহারকারীর এজেন্টদের হেডারগুলির দিক থেকে অনুপস্থিতিতে তাদের নিজস্ব সিদ্ধান্ত নিতে দেয়। এখানে কি হচ্ছে? ক্রোম দেখেছে যে এটি বেশ কয়েকটি দিন আগে শেষবার সংশোধিত হয়েছিল এবং একটি সংস্করণ ব্যবহার করে নির্দ্বিধায় মনে হয় (যা বলা হয়) একদিন অবধি পুরানো আছে? নাকি আমি এখানে কিছু মিস করছি?

উত্তর:


33

"মেয়াদোত্তীর্ণ" এবং "ক্যাশে-নিয়ন্ত্রণ" শিরোনাম নির্দিষ্ট না করা থাকলেও একটি "সর্বশেষ-সংশোধিত" শিরোনাম নির্দিষ্ট করা থাকে, ব্রাউজারগুলিকে অনুমান করতে হবে যে তাদের কতক্ষণ ডকুমেন্টটি ক্যাশে রাখা উচিত। কিছু ব্রাউজার কি ব্যবহার আলগোরিদিম যে পেজটি দিন একটি দিন বা আরো জন্য ক্যাশের মধ্যে রয়ে গেছে।

গুগল ক্যাচিং সেরা অনুশীলন গাইড নির্দেশনা :

সর্বশেষ-সংশোধিত একটি "দুর্বল" ক্যাশে শিরোনাম যা ব্রাউজারটি ক্যাশে থেকে আইটেমটি আনতে হবে কিনা তা নির্ধারণের জন্য একটি হিউরিস্টিক প্রয়োগ করে। (বিভিন্ন ব্রাউজারের মধ্যে হিউরিস্টিকস আলাদা)


মজিলা (ফায়ারফক্স) এর একটি এইচটিটিপি ক্যাচিং এফএকিউ রয়েছে যা এই পরিস্থিতির জন্য তাদের অ্যালগরিদমকে রূপরেখা দেয় (যদিও এটি সম্ভব যে নথির 2002 সালের তারিখের পরে অ্যালগরিদম পরিবর্তন হয়েছে):

... আমরা একটি "সর্বশেষ-সংশোধিত" শিরোনাম খুঁজছি। যদি এই শিরোনামটি উপস্থিত থাকে তবে ক্যাশের সতেজতা জীবনকাল 10 তারিখ দ্বারা বিভক্ত "সর্বশেষ-সংশোধিত" শিরোনামের মানের সাথে "তারিখ" শিরোনামের সমান।

সুতরাং আপনার ক্ষেত্রে যেখানে পরিবর্তিত এবং এখন 15 দিনের মধ্যে পার্থক্য রয়েছে, ফায়ারফক্স 1.5 দিনের জন্য রিসোর্সটিকে ক্যাশে করবে।

এটি প্রদর্শিত হয় যে সমস্ত বড় ব্রাউজারগুলি ফায়ারফক্স প্রয়োগ করে একই 10% বিধি ব্যবহার করে। এই হিরিস্টিকস জিজ্ঞাসা করে স্ট্যাকওয়েফ্লোতে একটি প্রশ্ন জিজ্ঞাসা করা হয়েছে । বিভিন্ন ব্রাউজারের জন্য পৃথক উত্তরগুলি দেখায় যে তাদের সকলের একই রকম বাস্তবায়ন রয়েছে। ইন্টারনেট এক্সপ্লোরার, এবং ওয়েবকিট (ক্রোম এবং সাফারি) এর উত্তর রয়েছে।


ব্রাউজারের ক্যাশের আকার সম্ভবত কোনও ফাইলের সীমাবদ্ধ ফ্যাক্টর হবে যা ক্যাচিং অ্যালগরিদম নির্ধারণ করে যে এটি এক দিনেরও বেশি সময় রাখা যেতে পারে। ব্রাউজারগুলি সাধারণত ক্যাশে যে পরিমাণ ডিস্ক স্পেস ব্যবহার করে সেগুলির জন্য সেটিং থাকে। অনেক ব্যবহারকারী তাদের ব্রাউজার বন্ধ করার সময় তাদের ক্যাশে সাফ করে দেয়। সুতরাং এই জাতীয় ফাইলের জন্য ক্যাশ করা সময়ের পরিমাণের উপর নির্ভর করে:

  • ব্রাউজারটি যে পরিমাণ ক্যাশে স্পেস বরাদ্দ করেছে
  • কোনও ব্যবহারকারী পরিদর্শন করা ওয়েবসাইটগুলির সংখ্যা (এবং সেই সাইটগুলির আকার)
  • ব্যবহারকারী তাদের ব্রাউজারটি বন্ধ করেছেন কিনা

আপনি কি দয়া করে পরিষ্কার করতে পারেন "তবে ফায়ারফক্স 1.5 দিনের জন্য রিসোর্সটি ক্যাশে করবে।" কোন তারিখ থেকে, এটি 1.5 দিন পর্যন্ত ক্যাশে হবে? যদি এটি ইতিমধ্যে 15 দিনের হয়, তবে এটি ইতিমধ্যে শেষ হয়ে গিয়েছিল, তাই না? এবং যেহেতু এখনই সর্বনিম্ন সর্বশেষ সংশোধন করা চিরকালের জন্য বাড়বে তাই আপনি বোঝাতে চেয়েছেন এটি চিরতরে ক্যাশে হবে!
myDoggyWritesCode

1
চিরকাল নয় Not সর্বশেষ পরিবর্তিত শিরোলেখ এবং ডাউনলোডের সময়কালের মধ্যে 1/10 এর জন্য। যদি আপনার জন্য এটি 15 দিন হয়ে যায় তবে এর অর্থ হতে পারে যে ফাইলটি শেষ বার সংশোধন করার পরে 150 দিন কেটে গেছে।
স্টিফেন অস্টেরমিলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.