ম্যাজেন্টো 2: পরিষেবা চুক্তি ব্যবহারের সুবিধা কী?


15

সুতরাং আপনারা কেউ কেউ জানেন যে, সিআরইউডি ক্রিয়াকলাপগুলির জন্য মডেল / সংগ্রহগুলি নিয়ে কাজ করার জন্য ম্যাজেন্টো 2 প্রস্তাবিত উপায় হ'ল পরিষেবা চুক্তি ব্যবহার করা।

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

একটি উদ্ধৃতি লোড করার উদাহরণ হিসাবে আমি সরাসরি কারখানার মাধ্যমে এটি করতে পারি:

$this->quoteFactory->create()->load($quoteId);

যেখানে $this->quoteFactoryএকটি উদাহরণ\Magento\Quote\Model\QuoteFactory

তবে আমি এটির মতো পরিষেবার চুক্তির মাধ্যমেও এটি করতে পারি:

$this->quoteRepository->get($quoteId);

যেখানে $this->quoteRepositoryএকটি উদাহরণ\Magento\Quote\Api\CartRepositoryInterface

সুতরাং আমার প্রশ্নগুলি হল কারখানায় পরিষেবা চুক্তি ব্যবহারের সুবিধাগুলি কী?

উত্তর:


18

পরিষেবা চুক্তি ব্যবহারের বেনিফিট, (ম্যাজেন্টো 2 সমঝোতা অনুসারে)

সেবা চুক্তিতে ম্যাজেন্টো 2 এর জন্য বেশ কয়েকটি গুরুত্বপূর্ণ ফাংশন রয়েছে, যেমন:

  • মডিউল আপগ্রেডেশন সহজ হয়ে ওঠে।

  • মূল ফাইলগুলিতে খনন না করে মডিউলটিতে কাস্টমাইজেশন সরল করুন।

  • সিস্টেমে মডিউলগুলির মধ্যে দ্বন্দ্ব হ্রাস করুন।

  • ম্যাজেন্টো আপগ্রেডেশন পরিষেবা চুক্তি ব্যবহার করে নিরাপদ।

  • পরিষেবাগুলি এর নতুন রিলিজের মধ্যে অপরিবর্তিত থাকবে, ভবিষ্যতে আপগ্রেড করা বিদ্যমান মডিউলটির পক্ষে সহজ।

  • মডেল / সংগ্রহের ক্ষেত্রে এই মামলাটি নতুন প্রকাশের মধ্যে সত্য নয়।

2

পরিষেবা চুক্তির সুবিধা:

  • ম্যাজেন্টোর পরিমিতি বাড়ান

  • অন্যান্য মডিউল এবং তৃতীয় পক্ষের এক্সটেনশনগুলি প্রয়োগ করতে পারে এমন একটি সু-সংজ্ঞায়িত, টেকসই API নিশ্চিত করুন

  • ওয়েব এপিআই হিসাবে পরিষেবাগুলি কনফিগার করা সহজ করুন।

  • অন্তর্নিহিত সম্পর্কিত সম্পর্কিত ডেটাবেস স্কিমে ডেটা সত্তা ডেটা মডেলের তুলনায় একটি সহজ ডেটা মডেল প্রকাশ করে

  • বিভিন্ন ডেটা সংগ্রহের জন্য বিভিন্ন স্টোরেজ প্রযুক্তি ব্যবহার করুন


2

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

নির্ভরতা ইনজেকশন এমন একটি সিস্টেম সরবরাহ করে যেখানে আপনি আপনার নির্মাণে একটি ইন্টারফেস ব্যবহার করতে পারেন যাতে আপনার কেবল সেইসব পাবলিক পদ্ধতিতে অ্যাক্সেস থাকে।

কিছু উদাহরণ:

কোনও পণ্যকে একাধিক বিভাগে লিঙ্ক করতে চান? ব্যবহার \Magento\Catalog\Api\CategoryLinkManagementInterface:

$this->categoryLinkManagement->assignProductToCategories(
    $sku,
    $categoryIds
);

একটি পণ্যের স্টক পরিমাণ বাড়াতে চান? ব্যবহার Magento\CatalogInventory\Api\StockManagementInterface:

$this->stockManagement->backItemQty(
    $productId,
    $itemsToReceive
);

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

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