AWS এ সাগা প্যাটার্নস কি?

Aws E Saga Pyatarnasa Ki



অ্যাপ্লিকেশনগুলি বিতরণ করা আর্কিটেকচার এবং মাইক্রোসার্ভিসের দিকে স্থানান্তরিত হচ্ছে৷ এটি ডেটা বজায় রাখতে এবং জটিল লেনদেন পরিচালনা করতে সমস্যা সৃষ্টি করে। সাগা নিদর্শন একটি কার্যকর সমাধান প্রস্তাব. Amazon Web Services (AWS) অসংখ্য টুলস এবং পরিষেবা প্রদান করে যা সাগা প্যাটার্ন বাস্তবায়নকে সহজ করে তোলে। এটি বিতরণ করা অ্যাপ্লিকেশন জুড়ে বিরামহীন লেনদেন ব্যবস্থাপনা নিশ্চিত করে।

এই নিবন্ধটি সাগা প্যাটার্ন কী, তাদের উপাদান, সমর্থিত AWS পরিষেবা এবং তাদের সুবিধাগুলি ব্যাখ্যা করবে।







AWS এ সাগা প্যাটার্নস কি?

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



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







আসুন এর মূল উপাদান সম্পর্কে জেনে নেওয়া যাক:

AWS-এ সাগা প্যাটার্নের উপাদানগুলি কী কী?

একটি সম্পূর্ণ মাইক্রোসার্ভিস সমাধানের জন্য একটি বিতরণ করা আর্কিটেকচারে বেশ কয়েকটি পরিষেবার প্রয়োজন। একটি সাগা প্যাটার্নের কয়েকটি মূল উপাদান রয়েছে, যেমন:



  • সাগা স্টেপ
  • সাগা অর্কেস্ট্রেটর
  • ক্ষতিপূরণ

আসুন এই উপাদানগুলো সংক্ষেপে আলোচনা করি।

সাগা স্টেপ

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

সাগা অর্কেস্ট্রেটর

একজন সাগা অর্কেস্ট্রেটরের প্রাথমিক দায়িত্ব হল একটি গাথার সমাপ্তির প্রতিটি ধাপ সফলভাবে পরিচালনা ও পর্যবেক্ষণ করা। যথাযথ পদক্ষেপ নেওয়া হলে এটি বিতরণ করা লেনদেন শুরু করে। কোন পদক্ষেপ ব্যর্থ হলে এটি ক্ষতিপূরণ প্রদান করে।

ক্ষতিপূরণ

গাথা প্রক্রিয়া চলাকালীন একটি ত্রুটির সম্মুখীন হলে, এর অর্কেস্ট্রেটর পূর্ববর্তী পদক্ষেপগুলির দ্বারা প্রবর্তিত পরিবর্তনগুলি পরিবর্তন করতে দ্রুত এবং সিদ্ধান্তমূলক পদক্ষেপ নেয়। এটি নিশ্চিত করে যে ত্রুটির ক্ষেত্রেও সিস্টেমটি শৃঙ্খলা বজায় রাখে।

এগুলি ছিল একটি গাথা প্যাটার্নের প্রাথমিক উপাদান। আসুন AWS পরিষেবাগুলি নিয়ে আলোচনা করি যা গাথা নিদর্শনগুলিকে সমর্থন করে।

AWS-এ সমর্থিত পরিষেবা সাগা প্যাটার্নগুলি কী কী?

এগুলি হল অ্যামাজন দ্বারা অফার করা পরিষেবা যা গল্পের নিদর্শনগুলি অনুসরণ করে:

  • AWS ধাপ ফাংশন
  • এডব্লিউএস ল্যাম্বদা
  • আমাজন ডায়নামোডিবি
  • আমাজন SNS এবং SQS
  • আমাজন API গেটওয়ে
  • AWS CDK
  • AWS SAM

AWS ধাপ ফাংশন

Amazon Web Services Step Functions হল একটি সম্পূর্ণরূপে পরিচালিত পরিষেবা যা কার্যপ্রবাহ এবং মাইক্রোসার্ভিস পরিচালনার সুবিধার্থে ডেভেলপারদেরকে জটিল স্টেট মেশিনের প্রতিনিধিত্বকারী স্টেট মেশিন প্রদান করে (সাগা প্যাটার্ন)। বিকাশকারীরা কার্যকরভাবে অর্কেস্ট্রেট করার সময় স্টেপ ফাংশন নিয়োগ করে বিতরণকৃত লেনদেন ডিজাইন করতে পারে।

এডব্লিউএস ল্যাম্বদা

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

অ্যামাজন ডায়নামোডিবি

Amazon DynamoDB হল AWS দ্বারা একটি NoSQL ডাটাবেস পরিষেবা যা সম্পূর্ণরূপে পরিচালিত। এটি নির্ভরযোগ্য ডেটা স্টোরেজ বিকল্পগুলি অফার করে। সাগা অর্কেস্ট্রেটররা ডিস্ট্রিবিউটেড লেনদেন ট্র্যাক করার জন্য DynamoDB ব্যবহার করতে পারে যখন তারা অগ্রসর হয়।

আমাজন SNS এবং SQS

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

আমাজন API গেটওয়ে

Amazon API Gateway হল API তৈরি, প্রকাশ এবং পরিচালনা করার জন্য Amazon-এর একটি ক্লাউড পরিষেবা। এই APIগুলিকে যেকোনো পছন্দসই স্তরে স্কেল করা যেতে পারে। এই পরিষেবাটি ব্যবহারকারীকে AWS Lambda-এর সাথে সংযুক্ত করে। Lambda আরো সংযুক্ত করা হয় ধাপ ফাংশন যে গাথা নিদর্শন অনুসরণ করে.

AWS CDK

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

AWS SAM

AWS সার্ভারলেস অ্যাপ্লিকেশন মডেলটি সার্ভারহীন অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এই ফ্রেমওয়ার্কটিও ওপেন সোর্স। সাগা প্যাটার্ন ব্যবহার করে যেকোন অ্যাপ্লিকেশন AWS SAM ব্যবহার করে সার্ভারের বিধান ছাড়াই তৈরি করা যেতে পারে।

সেখানে AWS পরিষেবা ছিল যা গাথা নিদর্শন সমর্থন করে। গাথা নিদর্শন অফার যে সুবিধাগুলি আলোচনা করা যাক.

AWS-এ সাগা প্যাটার্নের সুবিধা কী?

সাগা নিদর্শন প্রদান করে এমন কিছু সুবিধা নিম্নরূপ:

  • বিতরণ করা লেনদেন ব্যবস্থাপনা
  • ডেটা সামঞ্জস্য
  • দোষ সহনশীলতা
  • পরিমাপযোগ্যতা
  • আসুন বিস্তারিতভাবে উপকারিতা আলোচনা করা যাক।

    বিতরণ করা লেনদেন ব্যবস্থাপনা

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

    ডেটা সামঞ্জস্য

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

    দোষ সহনশীলতা

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

    পরিমাপযোগ্যতা

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

    এটি ছিল গাথা নিদর্শন এবং তাদের উপাদান এবং AWS পরিষেবাগুলিতে ব্যবহার সম্পর্কে।

    উপসংহার

    সাগা প্যাটার্নগুলি মাইক্রোসার্ভিস আর্কিটেকচারের মধ্যে বিতরণ করা লেনদেন পরিচালনা করার জন্য একটি কার্যকর পদ্ধতি প্রদান করে। AWS স্টেপ ফাংশন, Lambda, DynamoDB, SNS, এবং SQS হল কয়েকটি AWS পরিষেবা যা এই প্যাটার্নকে সমর্থন করে। এই নিবন্ধটি ব্যাপকভাবে গাথা প্যাটার্ন এবং এর কাজ ব্যাখ্যা করেছে।