ওয়েবহুক এবং ওয়েবসকেটের মধ্যে পার্থক্য


86

আমি সবসময় একটি রিয়েল-টাইম চ্যাট করতে চেয়েছিলাম।

আমি বছর কয়েক আগে পিএইচপি + অ্যাজাক্স + মাইকিউএল এ করেছি এবং আমার সার্ভারটি ভেঙে ফেলেছি। তারপরে আমি ফ্ল্যাশ + একটি পাঠ্য ফাইল দিয়ে চেষ্টা করেছি। আমি হাল ছেড়ে দিয়েছি এবং 10 বছরে চেষ্টা করেছি না। তবে সম্প্রতি আমি ওয়েবহুক এবং ওয়েবসকেট সম্পর্কে শুনেছি। এবং তারা উভয়ই এটি করার একটি উপায় বলে মনে হচ্ছে তবে আমি সত্যিই পার্থক্যটি বুঝতে পারি না। কেউ কি ব্যাখ্যা করতে পারেন?

উত্তর:


236

ওয়েবহুকস

ওয়েবহুকগুলি সার্ভার থেকে সার্ভার যোগাযোগের জন্য। তারা একটি সার্ভার দিয়ে অন্য সার্ভারকে বলে কাজ করে যে কিছু ঘটলে তা কোনও নির্দিষ্ট url এ প্রেরিত ডেটা চায়।

এই নিবন্ধটি জনপ্রিয় পরিষেবাদিতে ওয়েবহুকের কিছু ব্যবহার সম্পর্কে কথা বলেছে। এই সংস্থাটি RESTful API এর প্রসঙ্গে তাদের ব্যবহার সম্পর্কে অনেক কথা বলে।

ওয়েবসাইটসকেট

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

ওয়েবসকেট ব্যবহার করে 2 টি সার্ভার সংযোগ করা সম্ভব , তবে এটি সাধারণত তাদের জন্য ব্যবহৃত হয় না।

দ্বিধা

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

একটি পরিস্থিতি যেখানে সরাসরি তুলনা হতে পারে তা হ'ল যদি আপনি এমন একটি এপিআই তৈরি করছেন যা তৃতীয় পক্ষের সার্ভার দ্বারা গ্রাস করা হবে। এই পরিস্থিতিতে আপনি একটি ওয়েবহুক এপিআই বা একটি ওয়েবসকেট এপিআই সরবরাহ করতে পারেন । উভয়ই তৃতীয় পক্ষকে দ্রুত আপডেটগুলি পাওয়ার অনুমতি দেয়:

  • আপনি যদি ওয়েবহুকগুলি চয়ন করেন তবে সেই তৃতীয় পক্ষকে তাদের ক্লায়েন্টের ব্রাউজারগুলির বিষয়ে আপনি যে পরিবর্তনগুলি বলছেন সেগুলি ধাক্কা দেওয়ার জন্য এখনও একটি উপায় বের করতে হবে।
  • যদি আপনি একটি ওয়েবসকেট এপিআই সরবরাহ করেন তবে তৃতীয় পক্ষটি কেবল তাদের সাইট সেট আপ করতে পারে যাতে তাদের প্রতিটি ব্যবহারকারী সরাসরি আপনার ওয়েবসকেট এপিআইতে সংযুক্ত হয় এবং তাদের সার্ভারগুলিকে কম কাজ করতে হয়।

4
এটি একটি দুর্দান্ত উত্তর! আপনাকে অনেক ধন্যবাদ!
ডেভিড 天宇 ওয়াং

4
ওয়েবসকেটগুলি সাধারণত ক্লায়েন্ট-সার্ভার যোগাযোগের জন্য ব্যবহৃত হয় তবে এটি সীমাবদ্ধ নয়। এগুলি সার্ভার-সার্ভার যোগাযোগের জন্যও ব্যবহার করা যেতে পারে।
পিথিকোস

ওয়েবসকেট এবং ওয়েবহুক দুটিতেই কি সকেট ক্রমাগত খোলা থাকে? 10000s সার্ভার হুকিং কি আলিঙ্গন করে?
থেলিমিস্ট

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

18

ওয়েবহুক এবং ওয়েবসকেটের মধ্যে চয়ন করার জন্য এখানে কিছু অতিরিক্ত তথ্য দেওয়া আছে।

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

ওয়েবসাইটসকেট

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

ওয়েবহুকস

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