API উষ্ণ
বাস্তব পদ্ধতি, হেডার, কুকিজ, বডি এবং কনফিগার ম্যাট্রিক্স সহ REST এবং GraphQL এন্ডপয়েন্ট গরম রাখুন।
13 মিনিট পড়া
এপিআইগুলি ঠিক ওয়েব পৃষ্ঠাগুলির মতো ঠান্ডা হয়ে যায়। যদি একটি JSON প্রতিক্রিয়া তৈরি করা ব্যয়বহুল হয় এবং এটি আপনার CDN বা গেটওয়েতে ক্যাশ করা হয়, তাহলে মেয়াদ শেষ হওয়ার পরে প্রথম ক্লায়েন্ট একই জরিমানা প্রদান করবে যা একজন ওয়েবসাইট ভিজিটর করবে।
API উষ্ণকারী সমাধান করে। অ্যাকাউন্ট → API ওয়ার্মার্স এর অধীনে, ওয়েবসাইট ওয়ার্মার্স থেকে এগুলি আলাদাভাবে পরিচালিত হয় এবং তাদের নিজস্ব পরিকল্পনার সীমা রয়েছে৷
ওয়েবসাইট warmers থেকে পৃথক
API ওয়ার্মার্স তাদের নিজস্ব এনটাইটেলমেন্ট সহ একটি স্বতন্ত্র বৈশিষ্ট্য। যদি বিভাগটি অনুপস্থিত বা লক করা থাকে, তাহলে আপনার প্ল্যানে সেগুলি অন্তর্ভুক্ত নয় — প্ল্যান এবং সীমা দেখুন।
কখন একটি ব্যবহার করবেন
| পরিস্থিতি | কেন একটি API উষ্ণ সাহায্য করে |
|---|---|
| একটি মাথাবিহীন স্টোরফ্রন্ট বা সাইট | পণ্য, তালিকা, এবং বিষয়বস্তু JSON প্রতিটি পৃষ্ঠা রেন্ডারে আনা হয়। এই রুটগুলিকে উষ্ণ করা পুরো সামনের প্রান্তকে দ্রুত রাখে। |
| একজন সর্বজনীন বিকাশকারী API | জনপ্রিয় এন্ডপয়েন্ট এবং ডকুমেন্টেশন উদাহরণ যারা প্রথমে কল করবে তার জন্য ধীর হওয়ার পরিবর্তে প্রতিক্রিয়াশীল থাকে। |
| একটি ব্যাকএন্ড-ফর-ফ্রন্টেন্ড স্তর | সমষ্টিগত শেষপয়েন্ট যা বেশ কয়েকটি পরিষেবার জন্য ফ্যান আউট পুনর্নির্মাণ ব্যয়বহুল। তাদের উষ্ণ করা মোবাইল এবং ওয়েব ক্লায়েন্টদের রক্ষা করে। |
| ভারী GraphQL অপারেশন | মুষ্টিমেয় কিছু প্রশ্ন সাধারণত ট্রাফিককে প্রভাবিত করে। এই নির্দিষ্ট অপারেশনগুলিকে উষ্ণ করা /graphql একবার আঘাত করার চেয়ে অনেক বেশি গুরুত্বপূর্ণ। |
একটি API উষ্ণতর এন্ডপয়েন্টগুলির জন্য উপযোগী নয় যেগুলি কখনই ক্যাশে করা হয় না, বা যেগুলি প্রতি ব্যবহারকারীর জন্য অনন্য এবং তাই পূরণ করার জন্য কোনও ভাগ করা ক্যাশে কপি নেই৷
একটি API উষ্ণতা তৈরি করা হচ্ছে
- 1
API হোস্টনাম যাচাই করুন
এন্ডপয়েন্ট URLs অবশ্যই একটি যাচাইকৃত হোস্টনাম ব্যবহার করতে হবে, ঠিক ওয়েবসাইট ওয়ার্মারদের মতো। হোস্টনাম যাচাইকরণ দেখুন।
- 2
উষ্ণতার নাম দিন এবং এটি নিষ্ক্রিয় রেখে দিন
প্রথমে কনফিগার করুন, আপনি সন্তুষ্ট হলে সক্রিয় করুন।
- 3
এক বা একাধিক শেষ পয়েন্ট যোগ করুন
প্রতিটি এন্ডপয়েন্টের একটি URL এবং একটি HTTP পদ্ধতি এবং ঐচ্ছিকভাবে একটি লেবেল, বডি এবং বিষয়বস্তুর প্রকার রয়েছে৷
- 4
এন্ডপয়েন্টের প্রয়োজন হলে auth যোগ করুন
গ্লোবাল হেডার এবং কুকিজ উষ্ণতার প্রতিটি অনুরোধে প্রয়োগ করা হয়।
- 5
ঐচ্ছিকভাবে একটি কনফিগার ম্যাট্রিক্স দিয়ে প্রসারিত করুন
প্রায় অভিন্ন ওয়ার্মার তৈরি না করেই অনেকগুলি রূপ — লোকেল, ভাড়াটে, আইডি — কভার করুন৷
- 6
হার এবং ব্যবধান সেট করুন, তারপর সক্রিয় করুন
ওয়েবসাইট ওয়ার্মারের মতো একই ধারণা: আপনার ক্যাশে TTL হারানোর জন্য প্রায়ই যথেষ্ট গরম, ধীরে ধীরে আঘাত না করার জন্য যথেষ্ট।
শেষবিন্দু
উষ্ণতার প্রতিটি শেষ পয়েন্ট স্বাধীনভাবে কনফিগার করা হয়েছে:
- লেবেল
- একটি ঐচ্ছিক মানব-পাঠযোগ্য নাম, তাই শেষবিন্দুর একটি দীর্ঘ তালিকা পাঠযোগ্য থাকে।
- WordPress
- একটি যাচাইকৃত হোস্টনামের সম্পূর্ণ এন্ডপয়েন্ট ঠিকানা। PATH মাত্রার সাথে পেয়ার করা হলে
{id}বা:idএর মতো পাথ স্থানধারক থাকতে পারে৷ - পদ্ধতি
GET,POST, এবং অন্যান্য আপনার পরিকল্পনার উপর নির্ভর করে। প্ল্যানগুলি সাধারণতGETএবংHEADডিফল্টভাবে অনুমতি দেয়, উচ্চ স্তরে আরও পদ্ধতি সহ।- প্রোটোকল
RESTবাGRAPHQL। GraphQL নির্বাচন করা অপারেশন এবং ক্যোয়ারী ক্ষেত্র প্রকাশ করে।- শরীরের টেমপ্লেট অনুরোধ
- একটি বহন যে পদ্ধতির জন্য, পাঠাতে শরীরের. API অনুরোধের বডি এনটাইটেলমেন্ট প্রয়োজন।
- WordPress
- অনুরোধের মূল অংশের বিষয়বস্তুর প্রকার, সাধারণত
application/json৷ - অদম্য
- এন্ডপয়েন্টটিকে দুবার কল করা নিরাপদ হিসেবে চিহ্নিত করে, ঠান্ডা/উষ্ণ ডবল ফেচ সক্ষম করে যা উন্নতি পরিমাপ করে। প্রকৃতপক্ষে দুবার কল করার সময় কোনো পার্শ্বপ্রতিক্রিয়া না থাকলেই এটি সক্রিয় করুন।
- সক্রিয়
- এই নির্দিষ্ট শেষ বিন্দু রান অন্তর্ভুক্ত কিনা. একটি এন্ডপয়েন্ট মুছে না দিয়ে সাময়িকভাবে অক্ষম করার জন্য সুবিধাজনক।
লেখার ক্রিয়াকলাপগুলিকে অক্ষমতায় চিহ্নিত করার বিষয়ে সতর্ক থাকুন
একটি এন্ডপয়েন্টে একটি ডাবল আনয়ন যা অর্ডার তৈরি করে, ইমেল পাঠায় বা চার্জ কার্ডগুলি এটি দুবার করবে৷ শুধুমাত্র একটি শেষ বিন্দু idempotent চিহ্নিত করুন যখন পুনরাবৃত্তি করা প্রকৃতপক্ষে নিরীহ।
ম্যাট্রিক্স কনফিগার করুন
বেশির ভাগ API-এর ভেরিয়েন্ট আছে: প্রতি লোকেল, প্রতি ভাড়াটে, মুদ্রা প্রতি, বা আইডি প্রতি একই প্রান্তবিন্দু বলা হয়। প্রত্যেকের জন্য একটি উষ্ণতা তৈরি করা অপরিবর্তনীয়।
একটি কনফিগার ম্যাট্রিক্স এটি সমাধান করে। আপনি একাধিক মান সহ মাত্রা সংজ্ঞায়িত করেন, এবং Cache Rocket সম্পূর্ণ কার্টেসিয়ান পণ্যটিকে পৃথক উষ্ণ অনুরোধে প্রসারিত করে।
| মাত্রা ধরনের | মান ইনজেক্ট করে | উদাহরণ |
|---|---|---|
| WordPress | ক্যোয়ারী স্ট্রিং | /cart, /checkout, /my-account |
| WordPress | একটি অনুরোধ শিরোনাম | X-Tenant: acme, X-Tenant: globex |
| WordPress | একটি কুকি | X-Tenant: acme, X-Tenant: globex |
| WordPress | URL এর মধ্যে A {placeholder} | {id} → 1, 2, 3 |
একটি কাজের উদাহরণ
Endpoint: GET https://api.example.com/v1/products/{category}
Dimensions:
PATH category = shoes, bags, hats
QUERY locale = en, nl
Expands to 6 warm requests:
/v1/products/shoes?locale=en
/v1/products/shoes?locale=nl
/v1/products/bags?locale=en
/v1/products/bags?locale=nl
/v1/products/hats?locale=en
/v1/products/hats?locale=nlসংমিশ্রণগুলি দ্রুত গুণিত হয়
মোট অনুরোধ হল প্রতিটি মাত্রার মান গণনার পণ্য। পাঁচটি মানের তিনটি মাত্রা হল একটি একক শেষ বিন্দু থেকে 125টি সমন্বয়। ফর্মটি একটি চলমান গণনা এবং আপনার পরিকল্পনা সর্বাধিক দেখায় — আপনি মান যোগ করার সাথে সাথে এটি দেখুন।
আপনি পরিকল্পনা সর্বোচ্চ অতিক্রম করলে, উষ্ণতা সংরক্ষণ করবে না। মান হ্রাস করুন, বেশ কয়েকটি উষ্ণতায় বিভক্ত করুন বা আপগ্রেড করুন।
প্রমাণীকরণ
গ্লোবাল অনুরোধের শিরোনাম এবং কুকিজ উষ্ণতার উৎপন্ন প্রতিটি ভেরিয়েন্টে প্রয়োগ করা হয়। এখানেই একটি Authorization হেডার বা একটি সেশন কুকি যায়।
Authorization: Bearer YOUR_LONG_LIVED_TOKEN
X-Api-Key: YOUR_API_KEYবৈকল্পিক বাস্তব ক্লায়েন্ট আসলে অনুরোধ উষ্ণ
যদি আপনার ক্যাশে Authorization দ্বারা পরিবর্তিত হয়, একটি পরিষেবা টোকেন দিয়ে উষ্ণতা সেই টোকেনের সাথে কী করা একটি ক্যাশে এন্ট্রি পূরণ করে — যা কোনও প্রকৃত ক্লায়েন্ট কখনও আঘাত করবে না। ভাগ করা, ক্যাশেযোগ্য প্রতিক্রিয়াগুলির জন্য, একজন সাধারণ ক্লায়েন্ট যেভাবে এন্ডপয়েন্টকে কল করে সেভাবে উষ্ণ।
টোকেনের মেয়াদ শেষ। যদি একটি API উষ্ণ হঠাৎ 401 ফিরে আসতে শুরু করে, একটি হার্ড-কোডেড টোকেনই সর্বপ্রথম চেক করতে হবে।
WordPress
GraphQL এর নিজস্ব চিকিত্সা প্রয়োজন কারণ কর্মক্ষমতা নির্দিষ্ট অপারেশনের উপর নির্ভর করে, শেষ পয়েন্টের পথ নয়। /graphql একবার আঘাত করা আপনাকে কিছুই বলে না; আপনার তিনটি ভারী প্রশ্নের উষ্ণতা আপনাকে সবকিছু বলে।
একটি এন্ডপয়েন্টের প্রোটোকল GraphQL এ সেট করুন, তারপর সরবরাহ করুন:
- GraphQL অপারেশন — এটি একটি
queryবা একটিmutationহোক। উষ্ণায়ন মিউটেশন প্রায় কখনই উপযুক্ত নয়। - GraphQL প্রশ্ন — পাঠানোর জন্য অপারেশন ডকুমেন্ট।
- ভেরিয়েবল — রিকোয়েস্ট বডি টেমপ্লেটের মাধ্যমে অথবা ম্যাট্রিক্স ডাইমেনশন মান হিসাবে বেশ কয়েকটি পরিবর্তনশীল সেট গরম করার জন্য তাদের সরবরাহ করুন।
Note
GraphQL উষ্ণায়ন API ওয়ার্মার্সের উপরে, নিজস্ব প্ল্যান এনটাইটেলমেন্ট দ্বারা গেট করা হয়।
OpenAPI আমদানি
সমর্থিত প্ল্যানগুলিতে আপনি টাইপ করার পরিবর্তে একটি OpenAPI 3 স্পেসিফিকেশন থেকে সরাসরি এন্ডপয়েন্ট আমদানি করতে পারেন৷ একটি JSON বা YAML স্পেকের URL পেস্ট করুন এবং আমদানি ক্লিক করুন; আবিষ্কৃত শেষ পয়েন্ট উষ্ণ যোগ করা হয়, ছাঁটাই এবং সামঞ্জস্য করতে প্রস্তুত.
Tip
আমদানি লিখিত ক্রিয়াকলাপ সহ স্পেক বর্ণনা করে এমন সবকিছু নিয়ে আসে। তালিকাটি যত্ন সহকারে পর্যালোচনা করুন এবং সক্রিয় করার আগে সময়সূচীতে কল করা উচিত নয় এমন কিছু অক্ষম করুন।
সীমা এবং সময়সূচী
- প্রতি মিনিটে সর্বোচ্চ উষ্ণতা
- এই API উষ্ণতার জন্য রেট সিলিং, একটি ওয়েবসাইট উষ্ণতার সর্বোচ্চ URLs প্রতি মিনিটের সমতুল্য।
- সময় শেষ করার অনুরোধ করুন
- হাল ছেড়ে দেওয়ার আগে উত্তরের জন্য কতক্ষণ অপেক্ষা করতে হবে।
- স্বয়ংক্রিয় শুরুর ব্যবধান
- কত ঘন ঘন একটি নতুন উষ্ণ পাস শুরু হয়, সেকেন্ডের মধ্যে।
- সারি ব্যবধান
- চক্রের মধ্যে পুনরায় সারিবদ্ধ কাজের গতি।
- HTTPS এ পুনরায় লিখুন
http://এন্ডপয়েন্ট URLshttps://এ আপগ্রেড করুন।- উষ্ণ সময়সূচী
- পিক এবং অফ-পিক উইন্ডো, ওয়েবসাইট ওয়ার্মার হিসাবে একই JSON ফর্ম্যাট। অ্যাডভান্সড ওয়ার্মিং দেখুন।
আপনার প্ল্যানটি API উষ্ণতার সংখ্যা, প্রতি উষ্ণতার শেষ পয়েন্ট এবং প্রতি উষ্ণতার সংমিশ্রণকেও সীমাবদ্ধ করে।
সাধারণ সমস্যা
- সবকিছু
401বা403ফেরত দেয়। - প্রমাণীকরণ শিরোনাম বা কুকি অনুপস্থিত, ভুল, বা মেয়াদ শেষ। দীর্ঘজীবী টোকেনগুলি সাধারণ অপরাধী — টোকেনটি এখনও বৈধ এবং ঘোরানো হয়নি তা পরীক্ষা করুন৷
- অনেকগুলি সংমিশ্রণ উদ্ধৃত করে উষ্ণতা সংরক্ষণ করবে না।
- আপনার ম্যাট্রিক্স প্ল্যানের সর্বোচ্চ সীমার বাইরে প্রসারিত হয়। মাত্রার মান হ্রাস করুন, বেশ কয়েকটি উষ্ণতায় শেষ বিন্দু বিভক্ত করুন বা আপগ্রেড করুন।
- আমার প্রয়োজনীয় পদ্ধতিটি ড্রপডাউনে নেই।
- কোন HTTP পদ্ধতিগুলি অনুমোদিত তা পরিকল্পনাগুলি সীমাবদ্ধ করে৷ নিম্ন স্তরগুলি সাধারণত শুধুমাত্র
GETএবংHEADঅনুমতি দেয়৷ - ওয়ার্মিং পরিষ্কারভাবে চলে কিন্তু প্রকৃত ক্লায়েন্টদের জন্য প্রতিক্রিয়া এখনও ধীর।
- আপনি সম্ভবত ক্লায়েন্টদের অনুরোধের চেয়ে একটি ভিন্ন ক্যাশ ভেরিয়েন্ট পূরণ করছেন — সাধারণত একটি
Authorizationহেডার, একটি কুকি বা একটি হেডারের কারণে আপনার CDN পরিবর্তিত হয়। একজন প্রকৃত ক্লায়েন্ট যে অনুরোধ পাঠায় তার সাথে উষ্ণতা যা পাঠায় তার সাথে তুলনা করুন। - আমি কি একটি এন্ডপয়েন্ট উষ্ণ করতে পারি যার জন্য একটি স্বাক্ষরিত, স্বল্পস্থায়ী টোকেন প্রয়োজন?
- নির্ভরযোগ্য নয়, কারণ ওয়ার্মার প্রতি রানে একটি নতুন স্বাক্ষর তৈরি করতে পারে না। হয় একটি ক্যাশেযোগ্য অননুমোদিত বৈকল্পিক প্রকাশ করুন, অথবা একটি দীর্ঘস্থায়ী পরিষেবা টোকেন ব্যবহার করুন যেখানে এটি নিরাপদ।