আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য

রানটাইমে ক্যাশে করা মানগুলি কীভাবে পুনরুদ্ধার করা উচিত তা কনফিগার করে।
এই নীতিটি সাধারণ উদ্দেশ্যে স্বল্প-মেয়াদী ক্যাশে ব্যবহারের উদ্দেশ্যে। এটি পপুলেট ক্যাশে নীতি (এন্ট্রি লেখার জন্য) এবং অবৈধ ক্যাশে নীতি (অকার্যকর এন্ট্রিগুলির জন্য) এর সাথে একত্রে ব্যবহৃত হয়।
ব্যাকএন্ড সম্পদের প্রতিক্রিয়া ক্যাশে করার জন্য, প্রতিক্রিয়া ক্যাশে নীতি দেখুন।
উপাদান রেফারেন্স
এই নীতিতে আপনি যে উপাদানগুলি কনফিগার করতে পারেন তা নিম্নলিখিতগুলি তালিকাভুক্ত করে৷
<LookupCache async="false" continueOnError="false" enabled="true" name="Lookup-Cache-1"> <DisplayName>Lookup Cache 1</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref=""/> </CacheKey> <!-- Omit this element if you're using the included shared cache. --> <CacheResource/> <CacheLookupTimeoutInSeconds/> <Scope>Exclusive</Scope> <AssignTo>flowVar</AssignTo> </LookupCache>
একটি ভাগ করা ক্যাশে ডিফল্টরূপে অন্তর্ভুক্ত করা হয়। শেয়ার করা ক্যাশে ব্যবহার করতে, এই নীতি কনফিগারেশনে <CacheResource>
উপাদানটি বাদ দিন।
অন্তর্নিহিত ডেটা স্টোর সম্পর্কে আরও জানতে, ক্যাশে অভ্যন্তরীণ দেখুন। ক্যাশে কনফিগার করার বিষয়ে আরও জানতে, একটি পরিবেশ ক্যাশে তৈরি এবং সম্পাদনা দেখুন।
<LookupCache> বৈশিষ্ট্য
নিম্নলিখিত সারণী সমস্ত নীতির মূল উপাদানগুলির জন্য সাধারণ বৈশিষ্ট্যগুলি বর্ণনা করে:
বৈশিষ্ট্য | বর্ণনা | ডিফল্ট | উপস্থিতি |
---|---|---|---|
name | নীতির অভ্যন্তরীণ নাম। ঐচ্ছিকভাবে, ম্যানেজমেন্ট UI প্রক্সি এডিটরে নীতিটিকে একটি ভিন্ন, প্রাকৃতিক-ভাষা নামের সাথে লেবেল করতে | N/A | প্রয়োজন |
continueOnError | একটি নীতি ব্যর্থ হলে একটি ত্রুটি ফেরত দিতে একটি নীতি ব্যর্থ হওয়ার পরেও ফ্লো এক্সিকিউশন চালিয়ে যেতে | মিথ্যা | ঐচ্ছিক |
enabled | নীতি প্রয়োগ করতে নীতি বন্ধ করতে | সত্য | ঐচ্ছিক |
async | এই বৈশিষ্ট্যটি অবমূল্যায়ন করা হয়েছে৷ | মিথ্যা | অবচয় |
<DisplayName> উপাদান
ম্যানেজমেন্ট UI প্রক্সি এডিটরে নীতিটিকে একটি ভিন্ন, প্রাকৃতিক-ভাষা নামের সাথে লেবেল করতে name
বৈশিষ্ট্য ছাড়াও ব্যবহার করুন।
<DisplayName>Policy Display Name</DisplayName>
ডিফল্ট | N/A আপনি এই উপাদানটি বাদ দিলে, নীতির |
---|---|
উপস্থিতি | ঐচ্ছিক |
টাইপ | স্ট্রিং |
<AssignTo> উপাদান
ক্যাশে থেকে পুনরুদ্ধার করার পরে ক্যাশে এন্ট্রি বরাদ্দ করা হয় এমন ভেরিয়েবলটি নির্দিষ্ট করে। ভেরিয়েবল অবশ্যই লেখার যোগ্য হতে হবে। যদি ক্যাশে লুকআপ একটি মান পুনরুদ্ধার না করে, তাহলে ভেরিয়েবল সেট করা হবে না।
<AssignTo>variable_to_receive_cached_value</AssignTo>
ডিফল্ট: | N/A |
উপস্থিতি: | প্রয়োজন |
প্রকার: | স্ট্রিং |
<CacheKey> উপাদান
ক্যাশে সংরক্ষিত ডেটার একটি অংশে একটি অনন্য পয়েন্টার কনফিগার করে।
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
ডিফল্ট: | N/A |
উপস্থিতি: | প্রয়োজন |
প্রকার: | N/A |
<CacheKey>
ক্যাশে সংরক্ষিত ডেটার প্রতিটি অংশের নাম তৈরি করে।
রানটাইমে, <KeyFragment>
মানগুলি হয় <Scope>
উপাদান মান বা <Prefix>
মান দিয়ে প্রিপেন্ড করা হয়। উদাহরণস্বরূপ, নিম্নলিখিত ফলাফল UserToken__apiAccessToken__
< value_of_client_id> এর একটি ক্যাশে কীতে পরিণত হয় :
<CacheKey> <Prefix>UserToken</Prefix> <KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" /> </CacheKey>
আপনি <CacheKey>
উপাদানটি <Prefix>
এবং <Scope>
এর সাথে ব্যবহার করেন। আরও তথ্যের জন্য, ক্যাশে কীগুলির সাথে কাজ করা দেখুন।
<CacheLookupTimeoutInSeconds> উপাদান
সেকেন্ডের সংখ্যা নির্দিষ্ট করে যার পরে একটি অসফল ক্যাশে লুকআপ ক্যাশে মিস বলে বিবেচিত হবে৷ যদি এটি ঘটে, ক্যাশে-মিস পাথ বরাবর প্রবাহ পুনরায় শুরু হয়।
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
ডিফল্ট: | 30 |
উপস্থিতি: | ঐচ্ছিক |
প্রকার: | পূর্ণসংখ্যা |
<ক্যাশরিসোর্স> উপাদান
ক্যাশে নির্দিষ্ট করে যেখানে বার্তা সংরক্ষণ করা উচিত।
যদি এই নীতিটি (এবং আপনার সংশ্লিষ্ট PopulateCache এবং InvalidateCache নীতি) অন্তর্ভুক্ত শেয়ার করা ক্যাশে ব্যবহার করে তাহলে এই উপাদানটিকে সম্পূর্ণরূপে বাদ দিন।
<CacheResource>cache_to_use</CacheResource>
ডিফল্ট: | N/A |
উপস্থিতি: | ঐচ্ছিক |
প্রকার: | স্ট্রিং |
ক্যাশে কনফিগার করার বিষয়ে আরও জানতে, একটি পরিবেশ ক্যাশে তৈরি এবং সম্পাদনা দেখুন।
<CacheKey>/<KeyFragment> উপাদান
একটি মান নির্দিষ্ট করে যা ক্যাশে কী-তে অন্তর্ভুক্ত করা উচিত, ক্যাশে করা প্রতিক্রিয়াগুলির সাথে মিলিত অনুরোধগুলির জন্য একটি নামস্থান তৈরি করে৷
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
ডিফল্ট: | N/A |
উপস্থিতি: | ঐচ্ছিক |
প্রকার: | N/A |
এটি একটি কী (একটি স্ট্যাটিক নাম যা আপনি প্রদান করেন) বা একটি মান (একটি পরিবর্তনশীল উল্লেখ করে একটি গতিশীল এন্ট্রি সেট) হতে পারে। ক্যাশে কী তৈরি করতে সমস্ত নির্দিষ্ট টুকরো একত্রিত করা হয় (প্লাস উপসর্গ)।
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
আপনি <Prefix>
এবং <Scope>
এর সাথে একত্রে <KeyFragment>
উপাদান ব্যবহার করেন। আরও তথ্যের জন্য, ক্যাশে কীগুলির সাথে কাজ করা দেখুন।
গুণাবলী
বৈশিষ্ট্য | টাইপ | ডিফল্ট | প্রয়োজন | বর্ণনা |
---|---|---|---|---|
রেফ | স্ট্রিং | না | যে ভেরিয়েবল থেকে মান পেতে হবে। এই উপাদানটিতে একটি আক্ষরিক মান থাকলে ব্যবহার করা উচিত নয়। |
<CacheKey>/<Prefix> উপাদান
ক্যাশে কী উপসর্গ হিসাবে ব্যবহার করার জন্য একটি মান নির্দিষ্ট করে।
<Prefix>prefix_string</Prefix>
ডিফল্ট: | N/A |
উপস্থিতি: | ঐচ্ছিক |
প্রকার: | স্ট্রিং |
যখন আপনি একটি <Scope>
-গণিত মানের পরিবর্তে আপনার নিজস্ব মান নির্দিষ্ট করতে চান তখন <Scope>
-এর পরিবর্তে এই মানটি ব্যবহার করুন। যদি সংজ্ঞায়িত করা হয়, <Prefix>
ক্যাশে লিখিত এন্ট্রিগুলির জন্য ক্যাশ কী মান পূর্বে-প্রেপেন্ড করে। একটি <Prefix>
উপাদান মান একটি <Scope>
উপাদান মান ওভাররাইড করে।
আপনি <CacheKey>
এবং <Scope>
এর সাথে একত্রে <Prefix>
উপাদানটি ব্যবহার করেন। আরও তথ্যের জন্য, ক্যাশে কীগুলির সাথে কাজ করা দেখুন।
<স্কোপ> উপাদান
<CacheKey>
উপাদানে <Prefix>
উপাদান প্রদান করা না হলে একটি ক্যাশে কী-এর জন্য একটি উপসর্গ তৈরি করতে ব্যবহৃত গণনা।
<Scope>scope_enumeration</Scope>
ডিফল্ট: | "এক্সক্লুসিভ" |
উপস্থিতি: | ঐচ্ছিক |
প্রকার: | স্ট্রিং |
<Scope>
সেটিং একটি ক্যাশে কী নির্ধারণ করে যা <Scope>
মান অনুসারে পূর্বে যুক্ত করা হয়। উদাহরণ স্বরূপ, স্কোপ Exclusive
এ সেট করা হলে একটি ক্যাশে কী নিম্নলিখিত ফর্মটি গ্রহণ করবে: orgName__envName__ অ্যাপ্লিকেশন নাম__proxy|TargetName__ [ serializedCacheKey ]।
যদি একটি <Prefix>
উপাদান <CacheKey>
এ উপস্থিত থাকে, তাহলে এটি একটি <Scope>
উপাদান মানকে ছাড়িয়ে যায়। বৈধ মান নীচের গণনা অন্তর্ভুক্ত.
আপনি <CacheKey>
এবং <Prefix>
এর সাথে একযোগে <Scope>
উপাদান ব্যবহার করেন। আরও তথ্যের জন্য, ক্যাশে কীগুলির সাথে কাজ করা দেখুন।
গ্রহণযোগ্য মান
Global | ক্যাশে কী পরিবেশে স্থাপন করা সমস্ত API প্রক্সি জুড়ে ভাগ করা হয়। ক্যাশে কী orgName __ envName __ আকারে আগে লেখা আছে। আপনি যদি |
Application | API প্রক্সি নামটি উপসর্গ হিসাবে ব্যবহৃত হয়। ক্যাশে কী orgName__envName__ অ্যাপ্লিকেশন নাম ফর্মে আগে লেখা আছে। |
Proxy | প্রক্সিএন্ডপয়েন্ট কনফিগারেশন উপসর্গ হিসাবে ব্যবহৃত হয়। ক্যাশে কী orgName__envName__ অ্যাপ্লিকেশন Name__proxyEndpointName ফর্মে আগে লেখা আছে। |
Target | TargetEndpoint কনফিগারেশন উপসর্গ হিসাবে ব্যবহৃত হয়। orgName__envName__ অ্যাপ্লিকেশনের নাম__targetEndpointName ফর্মে ক্যাশে কী প্রিপেন্ড করা হয়েছে। |
Exclusive | ডিফল্ট এটি সবচেয়ে নির্দিষ্ট, এবং তাই একটি প্রদত্ত ক্যাশের মধ্যে নেমস্পেস সংঘর্ষের ন্যূনতম ঝুঁকি উপস্থাপন করে। উপসর্গ দুটি রূপের একটি:
orgName__envName__ অ্যাপ্লিকেশনের নাম__proxyNameITargetName ফর্মে ক্যাশে কী প্রিপেন্ড করা হয়েছে উদাহরণস্বরূপ, সম্পূর্ণ স্ট্রিং এই মত দেখতে পারে: apifactory__test__weatherapi__16__default__apiAccessToken |
ব্যবহারের নোট
সাধারণ-উদ্দেশ্য ক্যাশিংয়ের জন্য এই নীতিটি ব্যবহার করুন। রানটাইমে, LookupCache নীতি ক্যাশে থেকে একটি মান পুনরুদ্ধার করে, AssignTo উপাদানের সাথে আপনার নির্দিষ্ট করা ভেরিয়েবলের মান নির্ধারণ করে (যদি কোনো মান পুনরুদ্ধার করা না হয়, ভেরিয়েবল সেট করা হবে না)। এটি ক্যাশকি এবং স্কোপ উপাদানগুলিকে একত্রিত করে কনফিগারেশনের মাধ্যমে তৈরি করা ক্যাশে কী-এর উপর ভিত্তি করে মানটি সন্ধান করে। অন্য কথায়, একটি PopulateCache নীতি দ্বারা ক্যাশে যোগ করা একটি নির্দিষ্ট মান পুনরুদ্ধার করতে, আপনার LookupCache নীতিতে অবশ্যই ক্যাশে কী-সম্পর্কিত উপাদানগুলি PopulateCache নীতির মতো কনফিগার করা থাকতে হবে।
পপুলেট ক্যাশে নীতি , লুকআপক্যাশে নীতি এবং ইনভালিডেটক্যাশে নীতির সাথে সাধারণ উদ্দেশ্য ক্যাশে আপনার কনফিগার করা একটি ক্যাশে বা ডিফল্টরূপে অন্তর্ভুক্ত একটি ভাগ করা ক্যাশে ব্যবহার করে৷ বেশিরভাগ ক্ষেত্রে, অন্তর্নিহিত ভাগ করা ক্যাশে আপনার চাহিদা পূরণ করা উচিত। ডিফল্ট ক্যাশে ব্যবহার করতে, শুধুমাত্র <CacheResource>
উপাদানটি বাদ দিন।
ক্যাশে কনফিগার করার বিষয়ে আরও জানতে, একটি পরিবেশ ক্যাশে তৈরি এবং সম্পাদনা দেখুন। অন্তর্নিহিত ডেটা স্টোর সম্পর্কে আরও জানতে, ক্যাশে অভ্যন্তরীণ দেখুন।
ফ্লো ভেরিয়েবল
ফ্লো ভেরিয়েবলগুলি HTTP শিরোনাম বা বার্তা বিষয়বস্তুর উপর ভিত্তি করে নীতি এবং প্রবাহের জন্য গতিশীল রানটাইম আচরণ কনফিগার করতে ব্যবহার করা যেতে পারে বা প্রবাহে উপলব্ধ প্রসঙ্গ। ফ্লো ভেরিয়েবল সম্পর্কে আরও তথ্যের জন্য, ভেরিয়েবল রেফারেন্স দেখুন।
আপনি একটি LookupCache নীতিতে সংজ্ঞায়িত ক্যাশের আচরণ কাস্টমাইজ করার পরে নিম্নলিখিত পূর্বনির্ধারিত ফ্লো ভেরিয়েবলগুলি উপলব্ধ।
ভেরিয়েবল | টাইপ | অনুমতি | বর্ণনা |
---|---|---|---|
lookupcache{policy-name}.cachename | স্ট্রিং | শুধুমাত্র পঠনযোগ্য | নীতিতে ব্যবহৃত ক্যাশের নাম ফেরত দেয়। |
lookupcache{policy-name}.cachekey | স্ট্রিং | শুধুমাত্র পঠনযোগ্য | ব্যবহৃত কী ফেরত দেয়। |
লুকআপক্যাশে।পলিসি-নাম}.ক্যাচেহিট | বুলিয়ান | শুধুমাত্র পঠনযোগ্য | নীতি নির্দিষ্ট ক্যাশে কী-এর জন্য একটি মান খুঁজে পেলে সত্য। |
lookupcache{policy-name}.assignto | স্ট্রিং | শুধুমাত্র পঠনযোগ্য | ক্যাশে বরাদ্দ করা ভেরিয়েবল ফেরত দেয়। |
ত্রুটি কোড
This section describes the error messages and flow variables that are set when this policy triggers an error. This information is important to know if you are developing fault rules for a proxy. To learn more, see What you need to know about policy errors and Handling faults.
Error code prefix
N/A
Runtime errors
This policy does not throw any runtime errors.
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
Error name | Cause | Fix |
---|---|---|
InvalidCacheResourceReference |
This error occurs if the <CacheResource> element is set to a
name which does not exist in the environment where the API proxy is being deployed. |
build |
InvalidTimeout |
If the <CacheLookupTimeoutInSeconds> element is set to
a negative number, then the deployment of the API proxy fails. |
build |
CacheNotFound |
This error occurs if the specific cache mentioned in the error message has not been created on a specific Message Processor component. | build |
Fault variables
N/A
Example error response
N/A