টিসিপি সংযোগটি উন্মুক্ত রাখতে কি আমার হৃদস্পন্দন দরকার?


96

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

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

আমি কারণের উপাদানটির একটি অংশ জানি যে হার্টবিট উপাদান উপাদান বি তাই এটি উপাদানটি অবহিত করতে পারে যদি উপাদান বিয়ের সাথে যোগাযোগের সমস্যা রয়েছে (হয় লিঙ্কটি নিচে রয়েছে বা উপাদান বি চলছে না)। অন্য কোনও কারণে কি হৃদস্পন্দন প্রয়োজন? যেমন খোলার জন্য "পাইপের মধ্যে" প্রায়শই কিছু আছে তা নিশ্চিত করা?

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

আমার প্রশ্নের পুনরাবৃত্তি করতে: টিসিপি / আইপি সংযোগটি বাঁচিয়ে রাখতে কি হৃদস্পন্দন দরকার?


4
এই আচরণও বাস্তবায়ন নির্ভর হতে পারে? এটি কি টিসিপি স্ট্যান্ডার্ডে নির্দিষ্ট কিছু, না এটি বাস্তবায়নের বিশদ হিসাবে রেখে গেছে? আশা করি এর উত্তরও অন্য কেউ দিতে পারেন।
dss539

4
এটি একটি বাস্তবায়ন বিশদ হিসাবে আমি বলতে চাই যে সমস্ত টিসিপি / আইপি ভিত্তিক প্রোটোকলগুলি এটিকে পুরোপুরি আপনার হাতে ছেড়ে দেয় না implement
লয়েড

5
হ্যাঁ - টিসিপি / আইপি becuase না - কিন্তু অন্যান্য হার্ডওয়্যার বা সফটওয়্যার আপনার সংযোগ ফায়ারওয়াল এবং বাড়ি 'রাউটার' যা নিষ্ক্রিয় হওয়া TCP সংযোগগুলির ড্রপ ঝোঁক, এর সাথে সম্পর্কিত যেমন মধ্য দিয়ে যেতে পারে কারণ: stackoverflow.com/questions/3907537/...
markmnl

উত্তর:


55

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


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

4
একটি সাধারণ সময়সীমা কি? সেকেন্ড, মিনিট, ঘন্টা?
মিনিগড

@ লয়েড আমি "ভাবি" মিনিগডের অর্থ, "একটি সাধারণ সময়সীমা কতক্ষণ থাকবে ?" (সেকেন্ড, মিনিট, ঘন্টা, উত্তর দেওয়া ...)
জেরোমেজ

@ জেরোজে কে জানেন, কয়েক বছর কেটে গেছে;)
লয়েড

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

50

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


টিসিপি সংযোগ চিরকাল বেঁচে থাকবে?
ব্যবহারকারী 7817808

24

যদি আপনার উপাদানগুলি:

  • একটি প্রচলিত তারযুক্ত নেটওয়ার্ক হয়
  • তাদের মধ্যে কোনও ফায়ারওয়াল বা নাট রাউটার নেই
  • তাদের উভয়ই ক্রাশ হয়নি

তাহলে আপনার হার্টবিট লাগবে না।

এই অনুমানগুলির কোনও যদি মিথ্যা হয় (আমি আপনাকে দেখছি, জিপিআরএস!), একটি হৃদস্পন্দন বরং দ্রুত হয়ে ওঠে।


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

11

আপনার নিজেকে হার্টবিট পাঠানোর দরকার নেই। টিসিপি সংযোগটি ব্যবহার নির্বিশেষে উন্মুক্ত থাকবে।

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


4
এটি লিনাক্সে কাজ করার জন্য কীভাবে মনে হয়? এটা কি কাজ করে? আমি কি টাইমআউট 2 ঘন্টার কম সময় নির্ধারণ করতে পারি? উদাহরণস্বরূপ 30 সেকেন্ড?
Itay লেভিন

এটি কাজ করার জন্য অ্যাপ্লিকেশনটির রক্ষণশীলকে সমর্থন করা দরকার। কেবল এটি লিনাক্সে সক্ষম করা যথেষ্ট হবে না।
মাইক ভেলা

9

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

ডিফল্ট কিপ-লাইভ ইন্টারভাল 2 ঘন্টা।

http://msdn.microsoft.com/en-us/library/ms819735.aspx

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


3

টিসিপি / আইপি সংযোগটি বাঁচিয়ে রাখার জন্য কি হৃদস্পন্দনগুলি প্রয়োজনীয়?

কোনও সংযোগ কখন মারা গেছে তা সনাক্ত করার জন্য এগুলি দরকারী।


3

টিসিপি সংযোগটি বাঁচিয়ে রাখবে। অ্যাপ্লিকেশন হার্টবিটগুলি অ্যাপলিকেশন স্তরের বিবেচনার জন্য যেমন ব্যর্থতা, লোড ব্যালেন্সিং বা প্রশাসকদের সম্ভাব্য সমস্যার বিষয়ে সতর্ক করার জন্য।


3

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

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


2

প্রোটোকল হিসাবে টিসিপি / আইপি আপনাকে বন্ধ প্যাকেট না পাঠানো বন্ধ না হিসাবে নির্দিষ্ট করা হয়েছে। স্পটিটি ওয়্যারলেস বা ইন্টারনেট সংযোগ থাকার পরেও আমার সকেটগুলি খোলা ছিল remain

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

অতএব, খারাপ সংযোগগুলি সনাক্ত করতে এবং এগুলি খোলার জন্য আপনাকে একটি "হার্টবিট" রাখার জন্য আমি সুপারিশ করব।


2

মূলত একটি টিসিপি সংযোগ রুটের পাশাপাশি সুইচগুলিতে সঞ্চিত লিঙ্কের রাজ্য তৈরি করে। ভাঙ্গা সংযোগগুলি সনাক্ত করতে (যেমন যখন কোনও প্রতিপক্ষ ক্র্যাশ হয় (যথাযথ সংযোগ বিচ্ছিন্ন না করে)), নিষ্ক্রিয়তার একটি সময় পরে এই রাজ্যগুলি উচ্ছেদ করতে হবে। এবং যখন এটি ঘটে তখন আপনার টিসিপি সংযোগটি বন্ধ করে দেওয়া হয়েছে। যদিও এই সময়সীমাগুলি কতক্ষণ আমি ঠিক তা বলতে পারি না, তারা ডিভাইস-প্রযোজক এবং / অথবা ইন্টারনেট সরবরাহকারীদের উপর নির্ভর করে বলে মনে হচ্ছে। আমার মনে আছে আমার নিষ্ক্রিয় এসএসএইচ টার্মিনাল সেশনগুলি দ্রুত (অলস সময়ের 15 মিনিটেরও কম) আমার প্রাক্তন 1 & 1 ইন্টারনেট সরবরাহকারীর দ্বারা বন্ধ ছিল যখন তারা যখন কাবেল-বিডাব্লুড সংযোগ ব্যবহারের সময় কয়েক ঘন্টা খোলা থাকত ...

পরিশেষে, আমি আমার পূর্ববর্তী স্পিকারগুলির সাথে শেষ করছি: কোনও সংযোগ এখনও বেঁচে আছে এবং লাথি মারছে কিনা তা জানার জন্য হার্টবিট একটি ভাল উপায় ...


1

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

কিছু লোক এগুলিকে NOOPs (কোনও অপস না) বলে।

তবে না, তাদের সংযোগটি বাঁচিয়ে রাখার দরকার নেই, কেবল স্ট্যাটাসটি কী তা জানার জন্য সহায়ক।


1

আমি বলব যে আপনার যদি হার্টবিট না থাকে তবে আপনার টিসিপি / আইপি সংযোগটি খোলা আছে বা না তা বিবেচ্য নয়।


1

হার্টবিট টিসিপি প্রোটোকলের জন্য প্রয়োজনীয়তা নয়। এটির পাশের অংশটি মানহীন উপায়ে (যেমন টিয়ার ডাউন প্রক্রিয়াটির মধ্য দিয়ে যায়নি) সংযোগটি বন্ধ করে দিয়েছে কিনা তা সনাক্ত করার জন্য এটি বাস্তবায়ন রয়েছে।


0

সংযোগটি উন্মুক্ত থাকবে - হার্টবিট বাস্তবায়নের দরকার নেই এবং সকেট ব্যবহার করা বেশিরভাগ অ্যাপ্লিকেশনগুলি এটি করে না।


-2

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.