আমি একটি ত্রি-স্তরের সিস্টেমের জন্য একটি REST এপিআই ডিজাইন করছি: Client application
-> Front-end API cloud server
-> user's home API server (Home)
।
Home
একটি হোম ডিভাইস, এবং Front-end
ওয়েবসকেট বা একটি দীর্ঘ পোলের মাধ্যমে সংযোগ বজায় রাখার কথা রয়েছে (এটিই প্রথম জায়গা যেখানে আমরা REST লঙ্ঘন করছি It এটি পরে আরও খারাপ হয়ে যায়) । Front-end
বেশিরভাগ টানেল সংযোগের Client
জন্য অনুরোধ করে Home
এবং কিছু কল নিজেই পরিচালনা করে। কখনও কখনও Home
বিজ্ঞপ্তি প্রেরণ Client
।
Front-end
এবং Home
মূলত একই এপিআই রয়েছে; ল্যানের মাধ্যমে সরাসরি Client
সংযোগ করা হতে পারে Home
। এই ক্ষেত্রে, নিজেই Home
কিছু Client
ক্রিয়া নিবন্ধিত Front-end
করতে হবে।
এই সিস্টেমে রেস্টের জন্য পেশাদাররা হলেন:
- REST হ'ল মানব-পঠনযোগ্য;
- REST এর ক্রিয়াগুলি (সিআরইউডি এর মতো), প্রোটোকল অবজেক্টগুলিতে বিশেষ্য এবং প্রতিক্রিয়া কোডগুলির একটি সুস্পষ্ট সংজ্ঞায়িত ম্যাপিং রয়েছে;
- এটি এইচটিটিপি-র উপর কাজ করে এবং সম্ভাব্য সমস্ত প্রক্সি পাস করে;
REST বিপরীতে রয়েছে:
- আমাদের কেবল একটি অনুরোধ-প্রতিক্রিয়া যোগাযোগের স্টাইলই নয়, একটি প্রকাশ-সাবস্ক্রাইবও দরকার;
- এইচটিটিপি ত্রুটি কোডগুলি ত্রি-স্তরের যোগাযোগের ত্রুটিগুলি পরিচালনা করতে অপর্যাপ্ত হতে পারে; প্রয়োজনীয় সংযোগটি ভেঙে গেছে এবং সেখানে থাকা উচিত ছিল কেবলমাত্র এটির জন্য কিছু অ্যাসিঙ্ক কলটিতে
Front-end
ফিরে202 Accepted
যেতে পারে ;Home
503
Home
এর কাছে বার্তা প্রেরণ করা দরকারClient
।Client
পোল করতে হবেFront-end
বা সংযোগ বজায় রাখতে হবে।
কার্যকারিতা প্রকাশ / সাবস্ক্রাইব করার জন্য আমরা ডাব্লুএইচএমপি / অটোবাহনের উপর বিবেচনা করছি যখন এটি আমার মনে হয়েছে যে এটি ইতিমধ্যে কোনও বার্তার সারির মতো দেখাচ্ছে।
এটি পরিবহন হিসাবে কোনও ধরণের বার্তাবাহকের সারি মূল্যায়ন করার মতো?
বার্তার সারি বিপরীতে মনে হচ্ছে:
- আমাকে নিজের বার্তা স্তরে CRUD ক্রিয়া এবং ত্রুটি কোডগুলি সংজ্ঞায়িত করতে হবে।
- আমি "উচ্চ রক্ষণাবেক্ষণ ব্যয়" সম্পর্কে কিছু পড়েছি, তবে এর অর্থ কী?
এই বিবেচনা কতটা গুরুতর?
@Jimmy Hoffa
বৈধ পয়েন্ট, ধন্যবাদ এটা ঠিক, কিন্তু সম্পূর্ণ না। এটি একটি সাধারণ ডাটাবেস, সঞ্চয়স্থান এবং আরও অনেক কিছু। @Javier
আপনাকে ধন্যবাদ, এটি একটি উত্তরের একটি ভাল অংশ।
@Mike Brown
ঠিক। দয়া করে।