কোনও নেটফ্লিক্স বা টুইটার-স্টাইলের ওয়েব পরিষেবাটি কি রেস্ট বা এসওএপি ব্যবহার করা উচিত? [বন্ধ]


145

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

  1. একটি এসইএপি পরিষেবা বাস্তবায়নের চেয়ে একটি আরএসটি পরিষেবা প্রয়োগের ক্ষেত্রে অসীম সময় নেয়। ডাব্লুএসডিএল এবং আউটপুট প্রক্সি ক্লাস এবং ক্লায়েন্টগুলিতে পড়ার জন্য সমস্ত আধুনিক ভাষা / ফ্রেমওয়ার্ক / প্ল্যাটফর্মের জন্য সরঞ্জাম বিদ্যমান। একটি আরইএসটি পরিষেবা প্রয়োগের কাজটি হাতে হাতে করা হয় এবং - ডকুমেন্টেশন পড়ার মাধ্যমে - এটি পান - তদুপরি, এই দুটি পরিষেবা কার্যকর করার সময়, পাইপ জুড়ে কী আসবে সে সম্পর্কে আপনাকে "অনুমান" করতে হবে কারণ সত্যিকারের স্কিমা বা রেফারেন্স ডকুমেন্ট নেই।

  2. কেন এমন একটি REST পরিষেবা লিখুন যা এক্সএমএলকে যেভাবেই ফেরত দেয়? পার্থক্যটি হ'ল কেবলমাত্র বিশ্রামের সাথে আপনি প্রতিটি উপাদান / বৈশিষ্ট্য উপস্থাপনের ধরণগুলি জানেন না - এটি বাস্তবায়নের জন্য আপনি নিজেরাই রয়েছেন এবং আশা করি যে একদিন কোনও ক্ষেত্রের মধ্যে একটি স্ট্রিং আসে না যা আপনি ভেবেছিলেন যে এটি সর্বদা একটি অন্তর্নিহিত ছিল। এসওএপি ডাব্লুএসডিএল ব্যবহার করে ডেটা স্ট্রাকচারকে সংজ্ঞায়িত করে তাই এটি কোনও নন-ব্রেইনার।

  3. আমি অভিযোগ শুনেছি যে এসওএপি দিয়ে আপনার কাছে এসওএপি খামের "ওভারহেড" রয়েছে। এই দিন এবং যুগে, আমাদের কি সত্যিই কয়েকটা বাইট সম্পর্কে চিন্তা করা দরকার?

  4. আমি যুক্তিটি শুনেছি যে REST এর সাহায্যে আপনি কেবল ব্রাউজারে ইউআরএল পপ করতে পারেন এবং ডেটা দেখতে পারেন। অবশ্যই, যদি আপনার আরইএসটি পরিষেবাটি সরল বা কোনও প্রমাণীকরণ ব্যবহার করে। উদাহরণস্বরূপ, নেটফ্লিক্স পরিষেবা OAuth ব্যবহার করে যার জন্য আপনার অনুরোধ জমা দেওয়ার আগে আপনাকে জিনিসগুলিতে সাইন ইন করতে এবং জিনিসগুলি এনকোড করা দরকার।

  5. প্রতিটি সংস্থার জন্য কেন আমাদের একটি "পঠনযোগ্য" URL দরকার? যদি আমরা পরিষেবাটি বাস্তবায়নের জন্য কোনও সরঞ্জাম ব্যবহার করে থাকি তবে আমরা কি সত্যিকারের ইউআরএলটি সম্পর্কে যত্ন নিই?


5
আপনার মনে রাখা উচিত যে REST "উদ্ভাবিত" হয়নি, এটি HTTP শুরুর পর থেকেই বিদ্যমান।
ডার্ক ভোলমার

5
আপনার এবং রয় ফিল্ডিংয়ের মধ্যে কথোপকথনটি বেশ বিনোদনমূলক হবে। :)
গার্ট গ্রেনান্ডার

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

1
@ জো: পয়েন্ট নেওয়া হয়েছে। তবে আরইএসটি-র বিদ্রূপের অংশটি হ'ল এটি কোনও "নতুন" প্রযুক্তি নয়, এটি 90 এর দশকের গোড়ার দিকে কাজ করা কোনও কিছুর জন্য কেবল একটি নতুন গুঞ্জনবাক্য। এবং @ jsm11482: ঠিক এই কারণেই এই প্রশ্নটি "বিষয়গত এবং যুক্তিযুক্ত" হিসাবে বন্ধ করা হয়েছে - কারণ এটি যুক্তিগুলিকে আকর্ষণ করে!
ড্যানিয়েল প্রাইডেন

2
এই প্রশ্নের আমার উত্তর এখানে bit.ly/cAdYAr
ড্যারেল মিলার

উত্তর:


193

কয়লার খনিতে একটি ক্যানারি।

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

সতর্কতা লক্ষণ

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

অ্যাপ্লিকেশন / এক্সএমএল এবং অ্যাপ্লিকেশন / জসন ফিরিয়ে দেওয়া পরিষেবাগুলি ক্লায়েন্ট বিকাশকারীদের জন্য তাই বিরক্তিকর। আমাদের সেই ব্লব ডেটা দিয়ে কী করার কথা?

ভাগ্যক্রমে, REST পরিষেবাদি সরবরাহকারী প্রচুর সাইটগুলি ক্লায়েন্ট লাইব্রেরিগুলির একটি গোছাও সরবরাহ করে যাতে আমরা সেই লাইব্রেরিগুলি দৃ .়ভাবে টাইপ করা অবজেক্টগুলির একগুচ্ছের অ্যাক্সেস পেতে পারি। যদিও একরকম বোবা মনে হচ্ছে। যদি তারা এসওএপি ব্যবহার করত তবে আমরা সেই প্রক্সি ক্লাসগুলি কোড-জেনড করতে পারি।

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

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

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

আসন্ন বিপর্যয়

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

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

বিকাশকারীরা জিজ্ঞাসা শুরু করতে যাচ্ছেন যে আমরা জসন ফর্ম্যাট এবং এক্সএমএল উভয় ফর্ম্যাটকে সমর্থন করার জন্য কেন আমাদের প্রচেষ্টা নষ্ট করছি, কেন কেবল আমাদের প্রচেষ্টাগুলিকে একের দিকে কেন্দ্রীভূত করা এবং এটি ভালভাবে করা উচিত নয়?

কীভাবে বিষয়গুলি এত ভুল হয়ে গেল

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

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

REST এর এই ওয়াটারড ডাউন সংস্করণটি বিভিন্ন উপায়ে বিকাশকারী সংস্কৃতিতে বৈধ হয়ে উঠেছে। সার্ভার ফ্রেমওয়ার্কগুলি তৈরি করা হয়েছিল যা রিসোর্স আইডেন্টিফিকেশন এবং ইউনিফর্ম ইন্টারফেসকে উত্সাহিত করেছিল, তবে অন্যান্য সীমাবদ্ধতাগুলিকে সমর্থন করার জন্য কিছুই করেনি। পদ্ধতির পার্থক্যের পার্থক্যকে ঘিরে শর্তগুলি ভেসে উঠতে শুরু করেছে (HI-REST বনাম LO-REST, কর্পোরেট REST বনাম একাডেমিক REST, REST বনাম RESTful)।

কিছু লোক চিৎকার করে বলেছে যে আপনি যদি সমস্ত প্রতিবন্ধকতাগুলি প্রয়োগ না করেন তবে এটি বিশ্রাম নয়। আপনি সুবিধা পাবেন না। অর্ধেক রেস্ট নেই। কিন্তু এই কণ্ঠগুলিকে ধর্মীয় উদ্যোগী হিসাবে চিহ্নিত করা হয়েছিল যারা তাদের মূল্যবান শব্দটি অস্পষ্টতা থেকে চুরি হয়ে মূলধারার হয়ে গেছে বলে বিরক্ত হয়েছিল। Jeর্ষান্বিত লোকেরা যারা REST শব্দটিকে তার চেয়ে বেশি কঠিন করার চেষ্টা করে।

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

তুমি ভ্রান্ত হয়েছিলে আমি ভয় পাই

আপনি যদি এ পর্যন্ত এটি তৈরি করে থাকেন তবে আপনার প্রশ্নের সংক্ষিপ্ত উত্তর হ'ল সেই APIs (নেটফ্লিক্স এবং টুইটার) সমস্ত সীমাবদ্ধতার সাথে সম্মতি দেয় না এবং তাই আরএসটি-র জন্য যে সুবিধা বয়ে আনবে সেগুলি আপনি পাবেন না।

REST ক্লায়েন্টগুলি SOAP ক্লায়েন্টগুলির তুলনায় বেশি সময় নিতে পারে তবে তারা একটি নির্দিষ্ট পরিষেবার সাথে আবদ্ধ হয় না, তাই আপনার পরিষেবাগুলিতে এগুলি পুনরায় ব্যবহার করতে সক্ষম হওয়া উচিত। একটি ওয়েব ব্রাউজারের ক্লাসিক উদাহরণটি ধরুন। একটি ওয়েব ব্রাউজার কতগুলি পরিষেবা অ্যাক্সেস করতে পারে? একটি ফিড রিডার সম্পর্কে কি? এখন কতগুলি ভিন্ন পরিষেবাতে গড় টুইটার ক্লায়েন্ট অ্যাক্সেস করতে পারে? হ্যাঁ, একটি মাত্র

REST ক্লায়েন্টদের একটি একক সেবার সাথে ইন্টারফেসের জন্য নির্মিত হওয়ার কথা নয়, তারা কোনও নির্দিষ্ট পরিষেবা দ্বারা পরিবেশন করা যেতে পারে এমন নির্দিষ্ট মিডিয়া ধরণের হ্যান্ডেলগুলি তৈরি করার কথা। এর সুস্পষ্ট প্রশ্ন হ'ল আপনি কীভাবে একটি পরিষেবাটির জন্য একটি REST ক্লায়েন্ট তৈরি করতে পারেন যা অ্যাপ্লিকেশন / জসন বা অ্যাপ্লিকেশন / এক্সএমএল সরবরাহ করে। ভাল আপনি পারবেন না। কারণ এই ফর্ম্যাটগুলি একটি রেস্ট ক্লায়েন্টের পক্ষে সম্পূর্ণ অকেজো। আপনি নিজেই বলেছেন,

সত্যিকারের স্কিমা বা রেফারেন্স ডকুমেন্ট না থাকায় পাইপ জুড়ে কী ফিরে আসবে সে সম্পর্কে আপনাকে "অনুমান" করতে হবে

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

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

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

পঠনযোগ্য ইউআরএলগুলি সম্পর্কে আপনার শেষ পয়েন্টটি এখন পর্যন্ত সবচেয়ে ব্যঙ্গাত্মক। আপনি যদি হাইপারমিডিয়ার সীমাবদ্ধতার প্রতি সত্যই প্রতিশ্রুতিবদ্ধ হন তবে প্রতিটি URL একটি জিইউডি হতে পারে এবং ক্লায়েন্ট বিকাশকারী পড়ার যোগ্যতায় কিছুই হারাবে না।

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

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

এটি তাদের সমস্ত দোষ নাও হতে পারে

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

যদি কোনও ক্লায়েন্ট হার্ড কোডগুলি নির্দিষ্ট ধরণের সংস্থানগুলিতে অ্যাক্সেস করার জন্য ইউআরএল করে তবে সার্ভারকে সেই ইউআরএলগুলি পরিবর্তন করা থেকে বিরত রাখছে। পরিষেবাগুলি এর ইউআরএলগুলি কীভাবে গঠন করে তা অন্তর্ভুক্ত জ্ঞানের উপর ভিত্তি করে যে কোনও ধরনের URL নির্মাণ লঙ্ঘন construction

কোন লিঙ্ক থেকে কী ধরনের উপস্থাপনা ফিরে আসবে সে সম্পর্কে অনুমান করা সমস্যার কারণ হতে পারে। এইচটিটিপি শিরোলেখগুলিতে স্পষ্টভাবে বলা হয়নি এমন জ্ঞানের উপর ভিত্তি করে উপস্থাপনের বিষয়বস্তু সম্পর্কে অনুমান করা নিশ্চিতভাবেই মিলন তৈরি করতে চলেছে যা ভবিষ্যতে ব্যথার কারণ হবে।

তাদের কি এসওএপি ব্যবহার করা উচিত?

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


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

3
না, এটি কেবলমাত্র বাধ্যতামূলক প্রমাণ যে ওয়েব বিকাশকারীরা আরও সহজ হিসাবে যেটি বোঝেন তা পছন্দ করে না, এটি কোনও দীর্ঘমেয়াদী উপায়ে বা পারফরম্যান্স ভিত্তিক দিক থেকে সর্বোত্তম superior আসল বিষয়টি হ'ল, নির্দিষ্ট কাজের জন্য সঠিক সরঞ্জামটি যা প্রয়োজন তা নয়, "আমি এই সরঞ্জামটি জানি, তাই সমস্ত কাজ অবশ্যই তার সাথে মানিয়ে নিতে হবে।"
কেভিন উইলিয়ামস

61

এসওএপি হ'ল একটি অবজেক্ট-ভিত্তিক , দূরবর্তী প্রক্রিয়া কল প্রযুক্তি স্ট্যাক। এটি বিদ্যমান প্রোটোকলের (এইচটিটিপি) শীর্ষে একটি নতুন বিমূর্তি তৈরি করে কাজ করে।

আরআরইএসটি হ'ল একটি নথি ভিত্তিক দৃষ্টিভঙ্গি, যা কেবল বিদ্যমান প্রোটোকলের (এইচটিটিপি) বৈশিষ্ট্যগুলি ব্যবহার করে। "REST" হ'ল একটি গুঞ্জন শব্দ - ধারণাটি হ'ল: এটি যেভাবে ডিজাইনের জন্য ডিজাইন করা হয়েছিল কেবল ওয়েবটি ব্যবহার করুন !

প্রশ্নের সম্পাদনায় জবাব:

  1. "একটি এসইএপি পরিষেবা বাস্তবায়নের চেয়ে একটি আরএসটি পরিষেবা প্রয়োগ করা অসীম সময় নেয়" "

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

  2. "কেন এমন একটি REST পরিষেবা লিখুন যা এক্সএমএলকে যেভাবেই ফেরত দেয়?"

    হ্যাঁ, এটি নির্বোধ হতে পারে। তবে এটি এক্সএমএল কী তার উপর নির্ভর করে। যদি এর জন্য কোথাও সুস্পষ্টভাবে সংজ্ঞায়িত স্কিমা থাকে, তবে কোনও দ্বিধা নেই। উদাহরণস্বরূপ, আপনি ওয়েবএসএল সম্পর্কিত তথ্য পুনরুদ্ধারের জন্য ডাব্লুএসডিএল ইউআরএলকে এক ধরণের রেস্টস্টুল ওয়েব পরিষেবা বলে ভাবতে পারেন। এই ক্ষেত্রে, অন্য এসওএপি অনুরোধের ওভারহেড যুক্ত করা অর্থহীন হবে।

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

  3. "আমি অভিযোগটি শুনেছি যে এসওএপি দিয়ে আপনার এসওএপি খামের" ওভারহেড "রয়েছে this এই দিন এবং যুগে, আমাদের কি সত্যিই কয়েকটা বাইট সম্পর্কে চিন্তা করার দরকার আছে?"

    হ্যাঁ. প্রতিটি পরিস্থিতিতে নয়, তবে প্রচুর ট্র্যাফিক সহ এমন সাইট রয়েছে যেখানে এটি কোনও পার্থক্য করে। রিস্টের পরিবর্তে এসওএপি ব্যবহারের অর্থগত পার্থক্য ছাড়িয়ে যাওয়ার পক্ষে কি যথেষ্ট পার্থক্য রয়েছে? আমি এটাকে সন্দেহ করি. আপনি যদি কোনও অবজেক্ট রিমোটিং প্রোটোকল করছেন এবং বাইটের সংখ্যা একটি পার্থক্য তৈরি করে চলেছে তবে এসওএপি সম্ভবত আপনার পক্ষে কোনও সরঞ্জাম নয় - সম্ভবত এর পরিবর্তে আপনার CORBA বা DCOM ব্যবহার করা উচিত।

  4. "আমি যুক্তিটি শুনেছি যে REST এর সাহায্যে আপনি কেবল ব্রাউজারে ইউআরএল পপ করতে পারেন এবং ডেটা দেখতে পারেন।"

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

  5. "প্রতিটি সংস্থার জন্য আমাদের কেন একটি" পঠনযোগ্য "ইউআরএল দরকার? আমরা যদি পরিষেবাটি বাস্তবায়নের জন্য কোনও সরঞ্জাম ব্যবহার করে থাকি তবে আমরা কি সত্যিকারের ইউআরএলটি সম্পর্কে যত্ন নিই?"

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

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

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

একটি দীর্ঘ গল্প সংক্ষিপ্ত করতে: REST এবং SOAP কেবলমাত্র সরঞ্জাম । তাদের প্রত্যেকের শক্তি এবং দুর্বলতা রয়েছে। আপনার কাছে যদি কেবলমাত্র একটি সরঞ্জাম হাতুড়ি হয় তবে প্রতিটি সমস্যা পেরেকের মতো দেখায়। সুতরাং উভয় সরঞ্জাম জানুন এবং সেগুলি কীভাবে সঠিকভাবে ব্যবহার করবেন তা শিখুন এবং তারপরে প্রতিটি কাজের জন্য সঠিক সরঞ্জামটি চয়ন করুন।


11
মনে রাখবেন যে এসওএপি এইচটিটিপিতে সীমাবদ্ধ নয়, তাই অতিরিক্ত বিমূর্ততা। এসওএপি স্টাইলের বার্তাটি প্রচুর প্রোটোকলগুলিতে ব্যবহার করা যেতে পারে এবং এর জন্য আরআরইএসটি এর চেয়ে আরও বিস্তৃত পৌঁছনো। আমি মনে করি এটি একটি সাধারণ সত্য যে অনেক হার্ড-কোর REST সমর্থক কখনও কখনও স্বীকৃতি দিতে ব্যর্থ হন। REST এর জায়গা আছে তবে এসওএপিও তা করে।
জ্রিস্টা

4
@ জ্রিস্টা: ভালো কথা। এটি এমন নয় যে এসওএপি-তে কোনও সমস্যা আছে ঠিক যেমন একটি হাতুড়ি দিয়ে কোনও সমস্যা নেই, যতক্ষণ না আপনার সমস্যাটি সত্যই পেরেক হয়ে থাকে। বিপরীতে, এই প্রশ্নটি বলে মনে হচ্ছে: "আমি স্ক্রু ড্রাইভারগুলি ঘৃণা করি! কেন একটি হাতুড়ি সবার পক্ষে যথেষ্ট ভাল নয়? আমাকে বিশ্বাস করুন যে স্ক্রু ড্রাইভারের উপস্থিতি থাকতে হবে!" - যা, যখন সেই প্রসঙ্গে রাখা হয়, তখন তা অযৌক্তিকতার জন্য প্রকাশিত হয়।
ড্যানিয়েল প্রাইডেন

2
REST একটি স্থাপত্য শৈলী। আপনি যদি সত্যই চান তবে আপনি এসওএপি দিয়ে বিশদ পরিষেবাগুলি করতে পারেন। আমি মনে করি যে এসইওপি আর্ট এইচটিটিপি-র বিরুদ্ধে আরইএসটি সম্প্রদায়ের প্রধান নিন্দা হ'ল এসওএপি মনে করে যে এইচটিটিপি একটি পরিবহণ প্রোটোকল, যেখানে এটি একটি স্থানান্তর প্রোটোকল।
ব্রুনো

@ ড্যানিয়েল: উপরোক্ত প্রশ্ন সম্পর্কে সম্পূর্ণরূপে একমত ... ভয়ঙ্কর প্রশ্ন, এবং "সাবজেক্টিভ এবং যুক্তিবাদী" উদাহরণটি যেমন পাওয়া যায় তেমন, এবং অবশ্যই এর চেয়ে অবাস্তব হতে পারে না। : পিআই এসওএপি সম্পর্কে একটি পার্থক্য তৈরি করবে ... আমি মনে করি এটি "হাতুড়ি" এর চেয়ে "সুইস সেনা ছুরি" এর বিলে ফিট করে। ; পি
জ্রিস্টা

3
@ দানিয়েল শীশ! কাউকে আপত্তি জানাতে চাইনি। এটি একটি সৎ জিজ্ঞাসাবাদ, কারণ আমি মনে করি না যে এই জাতীয় পরিষেবাগুলি এবং তাদের মতো পরিষেবাদির জন্য বিশ্রামই সঠিক পন্থা approach আমার প্রশ্নটি প্রথম নজরে লিখবেন না দয়া করে। আমি মনে করি এটি ঠিক আছে যে এটি "যুক্তিযুক্ত" বাস্তবতা থেকেই, আমি একটি যুক্তি পেশ করছি। আমি খালি খণ্ডন চাইছি। এই বলে যে "আরএসটি" ওয়েবটি কাজ করার জন্য ডিজাইন করা হয়েছিল তেমন ব্যবহার করে, "আমার কাছে মনে হয়" আমার আগের দিনগুলিতে সমস্ত টুইটার এবং ফেসবুকের আগে ... "আপনি এমন কোনও তথ্য দেননি যা ব্যাখ্যা করে যে কেন এই ধরণের জন্য REST উপযুক্ত? সেবা। বিশদ যত্ন?
জোশ এম

17

একটি সৎ প্রশ্ন একটি সৎ উত্তরের প্রাপ্য। তবে প্রথমে, আপনি যদি এই প্রশ্নের বাক্যটি অন্যরকম প্রশ্নের উত্তর হিসাবে ব্যবহার করেন না কেন যদি আপনি মনে করেন না যে এটি প্রকৃতিতে বাকবিতণ্ডার?

যাই হোক:

  1. " ডাব্লুএসডিএল এবং আউটপুট প্রক্সি ক্লাস এবং ক্লায়েন্টগুলিতে পড়ার জন্য সমস্ত আধুনিক ভাষা / ফ্রেমওয়ার্ক / প্ল্যাটফর্মের জন্য সরঞ্জাম উপস্থিত রয়েছে। ডকুমেন্টেশন পড়ার মাধ্যমে একটি আরইএসটি পরিষেবা বাস্তবায়ন করা হয় " "

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

    ব্লগিং আসলে এটি নতুন নয়, এবং এমন কেউ এটমপব নিয়ে এসেছিল যা কোনও ব্লগিং সফ্টওয়্যারকে কোনও ব্লগে পোস্ট অ্যাক্সেস এবং আপডেট করতে দেয়, যেমন কোনও ওয়েব ব্রাউজার যেমন কোনও ওয়েব পৃষ্ঠায় অ্যাক্সেস করতে পারে। এটি বেশ ঝরঝরে এবং প্রোটোকল দ্বারা আরোপিত বিশ্রামের প্রতিবন্ধকতার কারণে কাজ করে।

    তবে টুইটার এবং নেটফ্লিক্সের ক্ষেত্রে, সর্বজনীন চুক্তি নেই যে "অস্তিত্বের সমস্ত মাইক্রোব্লাগগুলি মিডিয়া টাইপ অ্যাপ্লিকেশন / টুইট ব্যবহার করবে", মূলত মাইক্রোব্লগিং এত নতুন is সম্ভবত কয়েক বছরের মধ্যে কয়েকটি মাইক্রোব্লগিং পরিষেবা একই এপিআইতে স্থির হয় যাতে টুইটার, ফেসবুক, আইডেন্টিকা এবং আন্তঃসংযোগ করতে পারে। তাদের বিদ্যমান এপিআইগুলির কোনওটিই আরএসএসএফুলের কাছাকাছি নয়, যদিও তারা অনেকটাই দাবি করে, তাই আমি শীঘ্রই এটি বাস্তব হওয়ার আশা করি না।

    " তদুপরি, এই দুটি পরিষেবা কার্যকর করার সময়, পাইপ জুড়ে কী আসবে সে সম্পর্কে আপনাকে" অনুমান "করতে হবে কারণ সত্যিকারের স্কিমা বা রেফারেন্স ডকুমেন্ট নেই " "

    আপনি মাথায় পেরেক আঘাত করেছেন। আরআরইএসটি হ'ল বিতরণ এবং হাইপারমিডিয়া সম্পর্কে, এবং এটি বেশ পরিমাণে সমান। একটি ব্রাউজার একটি অনুরোধ থেকে এটি কী পায় তা দেখে এবং এটি ব্যবহারকারীকে দেখায়। একটি HTML পৃষ্ঠা সাধারণত আরও অনেক জিইটি অনুরোধ তৈরি করে, উদাহরণস্বরূপ সিএসএস, স্ক্রিপ্ট এবং চিত্র images একটি চিত্র সাধারণত স্ক্রিনে রেন্ডার করা হয়, জাভাস্ক্রিপ্ট কার্যকর করা হয় ইত্যাদি। প্রতিবার, ব্রাউজারটি এটি করে কারণ এটি কোনও ট্যাগ <img>বা লিঙ্কটিতে লিঙ্কটি খুঁজে পেয়েছিল <style>এবং প্রতিক্রিয়া মিডিয়া টাইপটি ছিল image/jpegবা text/css

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

  2. " কেন এমন একটি REST পরিষেবা লিখুন যা এক্সএমএলকে যেভাবেই ফেরত দেয়? "

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

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

  3. " আমি অভিযোগ শুনেছি যে এসওএপি দিয়ে আপনার কাছে এসওএপি খামের" ওভারহেড "রয়েছে this এই দিন এবং যুগে, আমাদের কি সত্যিই কয়েকটা বাইট সম্পর্কে চিন্তা করার দরকার আছে? "

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

  4. " আমি যুক্তিটি শুনেছি যে REST এর সাহায্যে আপনি কেবল ব্রাউজারে ইউআরএল পপ করতে পারেন এবং ডেটা দেখতে পারেন। "

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

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

  5. " প্রতিটি সংস্থার জন্য আমাদের কেন একটি" পঠনযোগ্য "ইউআরএল দরকার? আমরা যদি পরিষেবাটি বাস্তবায়নের জন্য কোনও সরঞ্জাম ব্যবহার করে থাকি তবে আমরা কি সত্যিকারের ইউআরএলটি সম্পর্কে যত্ন নিই? "

    তুমি কেমন ওয়েব পদ্ধতির দিকে তাকান তবে আমি নিশ্চিত যে মানুষের মোটের আনন্দিত নই যে এই মত একটি উইকিপিডিয়া পৃষ্ঠা সৌন্দর্য জন্য কোনো URI, http://en.wikipedia.org/wiki/Stack_overflowপরিবর্তে http://en.wikipedia.org/wiki/?oldid=376349090। তবে এটি বিশ্রাম নেওয়া আসলে গুরুত্বপূর্ণ নয়। ডান হওয়ার চেষ্টা করার জন্য গুরুত্বপূর্ণ বিষয়টি হল ইউআরআইতে প্রাসঙ্গিক ডেটা স্থাপন করা বাছাই করার সম্ভাবনা নেই। আপনি ভাবতে পারেন যে ডাটাবেস আইডি কখনই পরিবর্তন হবে না, তবে যখন দুটি ডেটা সেট একীভূত করা দরকার তখন কী ঘটে? আপনার সমস্ত প্রাথমিক কী পরিবর্তন হয় keys পৃষ্ঠার শিরোনাম (স্ট্যাক_ওভারফ্লো) পরিবর্তন হবে না।

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

সম্পাদনা করুন: বিন্যাসকরণ


7

মার্টিন ফওলারের রিচার্ডসন ম্যাচিউরিটি মডেলের একটি পোস্ট রয়েছে যা এসওএপি এবং আরএসইএসের মধ্যে পার্থক্য বোঝানোর জন্য দুর্দান্ত কাজ করে।


আরএসটি ব্যাখ্যা করে নিবন্ধটি দুর্দান্ত কাজ করেছে; তবে এসওএপি সংক্ষেপে কেবল একবারই উল্লেখ করা হয়েছে। দুজনের মধ্যে কোনও তুলনা হয় না।
jaco0646

3

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

আরইএসটি-র সমর্থকরা সেই অপ্রয়োজনীয়তা নিয়ে অস্বস্তি বোধ করছেন।


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

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