বড় সাইটগুলি কেন তাদের চিত্র / সিএসএস বহিরাগত ডোমেনগুলিতে হোস্ট করে?


43

ফেসবুক, টুইটার এবং গুগলের মতো সাইটগুলি কেন তাদের চিত্রগুলি বহিরাগত ডোমেনগুলিতে সিএসএস হোস্ট করে:

  • ফেসবুক: static.ak.fbcdn.net
  • টুইটার: a0.twimg.com
  • গুগল: ssl.gstatic.com

প্রশ্ন (গুলি):

  • পারফরম্যান্স হয় কি? নাকি সুরক্ষা?

উত্তর:


53

@ টুম্যানাইমারাইলস আংশিকভাবে সঠিক - এই কৌশলটির উদ্দেশ্য হ'ল ওয়েব ব্রাউজার থেকে সার্ভারে সমান্তরাল সংযোগের অনুমতি দেওয়া। ওয়েব ব্রাউজারগুলিকে একক হোস্টের সাথে ন্যূনতম দুটি যুগপত সংযোগের অনুমতি দেওয়া উচিত তবে অনেকগুলি নতুন ব্রাউজার 60 টি পর্যন্ত পরিচালনা করতে পারে browser ব্রাউজার এবং ওয়েব-সার্ভারের মধ্যে যুগপত যুগপত সংযোগগুলি একটি প্রধান গতির বাধা।

থেকে গুগলের সম্পদ :

এইচটিটিপি ১.১ স্পেসিফিকেশন (বিভাগ ৮.১.৪) বলছে যে ব্রাউজারগুলিকে হোস্টনামে সর্বাধিক দুটি সমবর্তী সংযোগের অনুমতি দেওয়া উচিত (যদিও নতুন ব্রাউজারগুলি এর চেয়ে আরও বেশি অনুমতি দেয়: তালিকার জন্য ব্রাউজারস্কোপ দেখুন)। যদি কোনও এইচটিএমএল নথিতে কোনও হোস্টে অনুমোদিত সর্বোচ্চের চেয়ে আরও বেশি সংস্থান (যেমন সিএসএস, জাভাস্ক্রিপ্ট, চিত্র ইত্যাদি) সম্পর্কিত উল্লেখ থাকে তবে ব্রাউজারটি সেই সংখ্যার সংস্থানগুলির জন্য অনুরোধ জানায় এবং বাকীগুলিতে সারি করে। কিছু অনুরোধ শেষ হওয়ার সাথে সাথে ব্রাউজারটি কাতারে পরবর্তী সংখ্যার সংস্থানগুলির জন্য অনুরোধগুলি জারি করে। এটি সমস্ত সংস্থান ডাউনলোড না করা পর্যন্ত প্রক্রিয়াটি পুনরাবৃত্তি করে। অন্য কথায়, কোনও পৃষ্ঠা যদি একক হোস্টের এক্স বহিরাগত সংস্থাগুলির রেফারেন্স করে, যেখানে হোস্ট প্রতি এক্স অনুমোদিত সর্বোচ্চ সংযোগ, ব্রাউজারটি অবশ্যই প্রতিটি এক্স সংস্থার জন্য 1 টি আরটিটি সহ একযোগে ক্রমানুসারে ডাউনলোড করতে হবে। মোট রাউন্ড-ট্রিপ সময় N / X, যেখানে কোনও হোস্টের কাছ থেকে প্রাপ্ত সংখ্যার সংস্থান N। উদাহরণস্বরূপ, যদি কোনও ব্রাউজার একই হোস্টনামে 4 টি একই সংযোগের অনুমতি দেয় এবং কোনও পৃষ্ঠা একই ডোমেনে 100 টি সংস্থানকে রেফারেন্স দেয় তবে এতে প্রতি 4 টি সংস্থার জন্য 1 টি আরটিটি এবং 25 টি আরটিটি-র মোট ডাউনলোডের সময় লাগবে।

সুতরাং এর কাছাকাছি যাওয়ার উপায়টি হ'ল পৃথক ডোমেন বা হোস্টের অনুরোধগুলিকে "শারদ" করা:

আবার একই গুগল রিসোর্স থেকে:

হোস্ট-নেম জুড়ে সমান্তরাল সম্পদের ভারসাম্য। চিত্র, সিএসএস এবং অন্যান্য বাইনারি বিষয়বস্তু সহ বেশিরভাগ স্থিতিশীল সংস্থার জন্য অনুরোধগুলি সমান্তরাল করা যায়। হোস্ট-নেম জুড়ে যথাসম্ভব এই সমস্ত বস্তুর জন্য ব্যালেন্স অনুরোধ। যদি এটি সম্ভব না হয় তবে থাম্বের নিয়ম হিসাবে, এটি নিশ্চিত করার চেষ্টা করুন যে কোনও হোস্ট সমস্ত হোস্টের মধ্যে গড়ের চেয়ে 50% এর বেশি পরিবেশন করে না। সুতরাং, উদাহরণস্বরূপ, যদি আপনার 40 সংস্থান থাকে এবং 4 টি হোস্ট থাকে তবে প্রতিটি হোস্টের আদর্শভাবে 10 সংস্থান সরবরাহ করা উচিত; সবচেয়ে খারাপ ক্ষেত্রে, কোনও হোস্টের 15 টির বেশি পরিষেবা দেওয়া উচিত নয় you যদি আপনার 100 টি সংস্থান এবং 4 হোস্ট থাকে তবে প্রতিটি হোস্ট 25 টি সংস্থান সরবরাহ করতে পারে; কোনও হোস্টের 38 টির বেশি পরিষেবা দেওয়া উচিত নয়।

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

স্ট্যাটিক সামগ্রী, যেমন চিত্র, জেএস এবং সিএসএস ফাইলগুলির সাথে কুকিজের সাথে চলার দরকার নেই, কারণ এই সংস্থানগুলির সাথে কোনও ব্যবহারকারীর ইন্টারঅ্যাকশন নেই। আপনি কুকি সরবরাহ না করে এমন কোনও ডোমেন থেকে স্থিতিশীল সংস্থানগুলি সরবরাহ করে অনুরোধের বিলম্বকে হ্রাস করতে পারেন। এই কৌশলটি পৃষ্ঠাগুলির জন্য খুব কমই ক্যাশেড স্ট্যাটিক সামগ্রীর উল্লেখ করে যেমন ঘন ঘন চিত্রের থাম্বনেইলগুলি পরিবর্তন করা হয় বা অবিচ্ছিন্নভাবে অ্যাক্সেস প্রাপ্ত চিত্র সংরক্ষণাগারগুলির জন্য দরকারী is 5 টিরও বেশি স্থিতিশীল সংস্থান পরিবেশন করে এমন কোনও পৃষ্ঠার জন্য আমরা এই কৌশলটি প্রস্তাব করি। (এর চেয়ে কম সংখ্যক সংস্থান সরবরাহকারী পৃষ্ঠাগুলির জন্য অতিরিক্ত ডোমেন সেটআপ করার জন্য এটি মূল্যবান নয়))

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


13

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

অনেক সংস্থা সিডিএনও ব্যবহার করে , এমন একটি সরঞ্জাম যা নিশ্চিত করে যে শেষ ব্যবহারকারী তাদের ভৌগলিকভাবে কাছাকাছি থাকা একটি সার্ভার থেকে তাদের ডেটা পেয়ে থাকে, যা সংস্থান অনুরোধের জন্য রাউন্ডট্রিপ সময়কে হ্রাস করে সাইটের কার্যকারিতা বৃদ্ধি করে।


7

ভৌগলিকভাবে ছড়িয়ে দেওয়া সার্ভারগুলিতে আপনার সামগ্রীগুলি একাধিক, বিতরণকারী সার্ভারগুলিতে স্থাপন করার ফলে বড় সাইটগুলি তাদের স্থিতিশীল সামগ্রী (চিত্র, জেএস এবং সিএসএস ফাইলগুলি) একটি সামগ্রী বিতরণ নেটওয়ার্ক বা সিডিএন-তে স্থানান্তর করে যা আপনার পৃষ্ঠাগুলি ব্যবহারকারীর দৃষ্টিকোণ থেকে দ্রুত লোড করে দেবে ।

সিডিএন-এর আলাদা ডোমেন নাম থাকায় এটি ডোমেন শারডিং সুবিধাও সরবরাহ করে


3

2-আইটেমের সীমাবদ্ধতা আর কোনও সমস্যা নয়। এটি HTTP বৈশিষ্টের একটি প্রস্তাবনা থাকা অবস্থায়, সমস্ত আধুনিক ব্রাউজার কমপক্ষে 6 সমবর্তী সংযোগের অনুমতি দেয় ।


-1

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

সুতরাং হ্যাঁ, এটি এখনও গতির উদ্দেশ্যে প্রয়োজন।


গৃহীত উত্তরটি ইতিমধ্যে বলেছে যে কোনও কুকিজ কোনও বাহ্যিক ডোমেনের জন্য প্রেরণ করা হয় না। এই উত্তরটি এমন কিছু বলে না যা অন্য উত্তরগুলি ইতিমধ্যে কভার করে না।
স্টিফেন Ostermiller
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.