এইচটিটিপি অনুরোধের সময় অকাল শেষ হয়ে গেলে কী ঘটে?


13

মনে করুন, আমি আমার ব্রাউজারে একটি URL লিখি এবং ব্রাউজারটি HTTP অনুরোধ জমা দেয় m রিমোট এইচটিটিপি সার্ভারটি অনুরোধটি গ্রহণ করে এবং অনুরোধটি সরবরাহ করার জন্য একটি দীর্ঘ কাজ শুরু করে।

আমি যদি অনুরোধটি সম্পূর্ণ হওয়ার আগেই শেষ করে দিই (উদাহরণস্বরূপ, এসসি বা ফায়ারফক্সে চাপুন), কীভাবে অনুরোধটি বন্ধ হয়ে যায়? ব্রাউজারটি সার্ভারের কাছে এই গর্ভপাতের অনুরোধটি যোগাযোগ করবে (আমার মনে হয় এটি হয় না)?

না, ধরেই নেই, দীর্ঘ কাজ শেষ হওয়ার পরে সার্ভার ফলাফলটি দিয়ে কী করবে? এটি কি এটি আবার ফেরত পাঠায়? যদি তা হয় তবে কী হবে? এটি আমার পিসি পর্যন্ত পৌঁছায়? নাকি পথে হারিয়ে যায়?

এটি কেবল আমার কৌতূহলের জন্য।

আপনার সময় জন্য ধন্যবাদ :)


2
আপনি কি ওয়্যারশার্ক ক্যাপচার চালানোর চেষ্টা করেছেন? নেটওয়ার্কের মাধ্যমে একটি কম্পিউটার অন্য কম্পিউটারকে কী প্রেরণ করে তা দেখতে এটিকে বাস্তব সহজ করে তোলে।
রেসাইক্লিস্ট

উত্তর:


8

ঠিক আছে, এটি সার্ভার কী করছে তার উপর নির্ভর করে। সাধারণত, প্রেরণের চেষ্টা না করা পর্যন্ত এটি সমাপ্ত অনুরোধটিকে "সনাক্ত" করে না। এই মুহুর্তে, স্ক্রিপ্টটি ওয়েব সার্ভার থেকে একটি ইউজার_বার্ট বার্তা পাবে (পিএইচপি-তে, আপনি এটির সাথে ব্যবহারকারীকে অবজ্ঞা করার জন্য বলতে পারেন ignore_user_abort(true);)। ক্লায়েন্টের কাছে ডেটা প্রেরণের চেষ্টা না করে, অনুরোধটি বাতিল হয়ে গেছে তা সার্ভারের পক্ষে জানার উপায় নেই।

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


-2

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

উদাহরণ:

আমরা http://localhostapache2 HTD- র জন্য হিট করেছি । ধরুন এটি চলছে না ব্রাউজারটি একটি সকেট খোলে, 80 (ডিফল্ট) পোর্টে একটি বার্তা প্রেরণ করে এবং দেখে মনে হয় কোনও প্রতিক্রিয়া আছে কিনা। যেহেতু কোনও শ্রোতা নেই যেহেতু অ্যাপাচি চলছে না, তাই এই পিংয়ের অনুরোধটি মোটেও কোনও সাড়া পায় না। কমপক্ষে 200 ঠিক আছে বা কোনও ধরণের হাত কাঁপুন। তাহলে আমাদের পিংকে কী হবে? http কিছু জিনিস প্রেরণ করে: যেমন GET http://localhost 80... ইত্যাদি এই লাইনের সাথে কী ঘটে? GET http://localhost 80? এটি কেবল একটি চার্জ এবং অদৃশ্য হয়ে যায়।

এটি কেবল আমার বিশ্বাস, এবং আরও স্পষ্টতার জন্য আমাদের প্রথমে টিসিপি'র রেফারেন্স করা উচিত । কেবলমাত্র তখনই আমরা বুঝতে পারি যে ইন্টারনেট প্রোটোকল এবং পরবর্তী পোস্টগুলি কীভাবে আচরণ করে। শেষ পর্যন্ত, কোনও অকাল সমাপ্ত HTTP অনুরোধের জন্য কোনও দৃ concrete় সংজ্ঞা নেই like এজন্য একে অকাল সমাপ্তি বলা হয়।


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