Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Node.js uygulamasından Edge dağıtılmış önbelleğine erişmek için apigee-access modülünü kullanabilirsiniz. Modül, önbellek alma ve veri yerleştirme, alma ve kaldırma yöntemlerini içerir.
Apigee Edge dağıtılmış önbelleği, dizeleri veya diğer verileri depolamanıza olanak tanır. Çoğu önbellek gibi, maksimum boyuta sahip ve en son kullanılan önbellektir. Apigee Edge'de önbellek, Node.js uygulamanızın yürütüldüğü tüm düğümler arasında dağıtılır. Önbelleği bir Apigee Edge API'si üzerinden yönetebilirsiniz. API'yi kullanarak önbellek kaynaklarını manuel olarak oluşturabilir veya varsayılan kaynağı kullanabilirsiniz. Apigee Edge'de önbelleğe alma işlemine giriş için Edge'deki kalıcılık araçları başlıklı makaleyi inceleyin. Dağıtılmış önbellek hakkında daha fazla bilgi edinmek için Örnek: Genel amaçlı önbelleğe alma başlıklı makaleyi inceleyin.
apigee-access modülü ve diğer özellikleri hakkında bilgi edinmek için Using the apigee-access module (apigee-access modülünü kullanma) başlıklı makaleyi inceleyin.
Yöntemler
(1) getCache
var
cache = apigee.getCache(cacheName);Adlandırılmış bir önbelleği arayın ve gerekirse oluşturun. Sonuçta elde edilen önbellek, çoğu duruma uygun önceden tanımlanmış bir yapılandırma parametreleri grubu kullanır.
Parametreler:
cacheName: Dize, önbelleğin adı. (Önbellek kaynağının adı değil).
İadeler:
Önbellek nesnesi.
Örnek:
var apigee = require('apigee-access'); var cache = apigee.getCache('cache');
(2) getCache
var
customCache = apigee.getCache(cacheName, options );Yapılandırma nesnesinde belirtilen özel bir önbellek kaynağına erişin. Önbellek kaynağı oluşturma hakkında bilgi için Ortam önbelleği oluşturma ve düzenleme başlıklı makaleyi inceleyin.
Parametreler:
cacheName: Dize, özel önbelleğin adı. (Önbellek kaynağının adı değil)
options: Bir yapılandırma nesnesi. Nesne boş olabilir veya aşağıdaki isteğe bağlı parametreleri içerebilir:
-
resource: Önbellek verilerinin depolandığı bir Apigee "önbellek kaynağının" adı. Önbellek kaynakları, bellek ayırma ve diğer önbellek parametrelerine ince ayar yapmak için kullanılır. Belirtilmezse varsayılan bir kaynak kullanılır. Önbellek kaynağı yoksa yöntem hata verir. -
scope: Çakışmaları önlemek için önbellek girişlerine önek eklenip eklenmeyeceğini belirtir. Geçerli değerlerglobal,applicationveexclusiveşeklindedir.-
global: Tüm önbellek girişleri, aynı Apigee "ortamındaki" tüm Node.js uygulamaları tarafından görülebilir. -
application: Tüm önbellek girişleri, aynı Apigee Edge uygulamasının parçası olan tüm Node.js önbellekleri tarafından görülebilir. -
exclusive: (Varsayılan) Önbellek girişleri yalnızca aynı uygulamadaki aynı ada sahip Node.js önbellekleri tarafından görülür. Bu, varsayılan seçenektir.
-
-
prefix: Önbellek anahtarı adı, Önbellek politikasını doldurma ve Önbellek anahtarlarıyla çalışma bölümlerinde açıklandığı gibi bir ön ek içeriyorsa bunu belirtmek için bu parametreyi kullanın. Edge, önek adına otomatik olarak çift alt çizgi eki ekler. Bu nedenle, "UserToken" ön ekiyle bir önbellek anahtarı oluşturulduysa burada belirtilecek ön ek "UserToken__" olur. -
defaultTtl: Bir önbellek girişinin varsayılan geçerlilik süresini (TTL) saniye cinsinden belirtir. Belirtilmezse önbellek kaynağındaki varsayılan TTL kullanılır. -
timeout: Dağıtılmış önbellekten sonuç getirmek için beklenecek süre (saniye cinsinden). Varsayılan değer 30 saniyedir. Gecikmeye duyarlı uygulamalar, önbellek altyapısı aşırı yüklendiğinde yavaş yanıt sürelerini önlemek için bu değeri düşürmek isteyebilir.
İadeler:
Özel bir önbellek nesnesi.
Örnek:
var apigee = require('apigee-access'); var customCache = apigee.getCache('doesNotMatter', { resource: 'MyCustomResource', scope: 'global', prefix: 'UserToken'} ); customCache.put("myCacheKey", "xyz");
Bu, şu şekilde yapılandırılmış bir LookupCache politikasıyla çalışır:
<LookupCache name="Lookup-Cache-1"> <CacheKey> <Prefix>UserToken</prefix> <KeyFragment>myCacheKey</KeyFragment> </CacheKey> <CacheResource>MyCustomResource</CacheResource> <Scope>Global</Scope> <AssignTo>contextVariable</AssignTo> </LookupCache>
put
cache.put('key',
data, ttl, function(error));Verileri önbelleğe yerleştirme
Parametreler:
-
key: (Zorunlu) Önbellekteki öğeyi benzersiz şekilde tanımlayan bir dize. Önbellek anahtarları 2 KB ile sınırlıdır. -
data: (Zorunlu) Önbelleğe alınacak verileri temsil eden bir dize, arabellek veya nesne. Diğer tüm veri türleri hataya neden olur. Kolaylık sağlamak için nesneler "JSON.stringify" kullanılarak dizeye dönüştürülür. -
ttl: (İsteğe bağlı) Verilerin önbellekte kalacağı maksimum süre (saniye cinsinden). Belirtilmezse varsayılan bir TTL kullanılır. -
callback: (İsteğe bağlı) Belirtilirse veriler güvenli bir şekilde önbelleğe alındıktan sonra çağrılacak bir işlev. Ekleme hatası varsa ilk parametre olarak bir Error nesnesiyle, aksi takdirde parametre olmadan çağrılır.
Örnek:
var apigee = require('apigee-access'); var cache = apigee.getCache(); // Insert a string into cache using the default TTL cache.put('key1', 'Buenos dias, Mundo!'); // Insert a string into cache using a TTL of 120 seconds cache.put('key2', 'Hello, World!', 120); // Insert a string with the default TTL, and get notified when the insert is complete cache.put('key3', 'Ciao, Mondo!', function(error) { // "error" will be falsy unless there was an error on insert }); // Insert a string with a TTL of 600 seconds, and get notified when the insert is complete cache.put('key4', 'Hallo Wereld!', 600, function(error) { // "error" will be falsy unless there was an error on insert });
get
cache.get('key',
function(error, data));Önbellekten veri alma
Parametreler:
-
key(zorunlu): Önbellekteki öğeyi benzersiz şekilde tanımlayan bir dize.Apigee Edge politikasından (ör. Populate Cache policy) önbelleğe yerleştirilen önbellek girişleri için, politikanın girişler için anahtarları oluşturma şeklinden çıkarım yaparak önbellek anahtarını oluşturmanız gerekir. Bunu yapmak için politikanın nasıl yapılandırıldığını bilmeniz gerekir. Önbellek anahtarlarıyla çalışma başlıklı makalede, önbellek anahtarlarının politikalar tarafından nasıl oluşturulduğu açıklanmaktadır. Ancak kapsamla ilgili dize değerleri belirtmemeniz gerektiğini unutmayın. Node.js'den yapılan çağrılarda kapsam zaten bağlamın bir parçasıdır.
-
callback(zorunlu): Veriler kullanılabilir olduğunda çağrılacak bir işlev. Önbelleğe alınmış veriler varsa ikinci parametrede döndürülür.-
error: Bir Error nesnesi. Önbellekten alınırken bir hata oluşursa burada bir hata nesnesi ayarlanır. Aksi takdirde bu parametre "tanımsız" olarak ayarlanır. -
data: Varsa alınan veriler. Bu, dört değerden biri olacaktır:- Bir dize eklenmişse bu bir dize olur.
- Bir arabellek eklenmişse bu bir arabellek olur.
- Bir nesne eklenmişse "JSON.stringify" tarafından üretilen nesnenin JSON sürümünü içeren bir dize olur.
- Hiçbir şey bulunamazsa "tanımsız" olur.
-
Örnek:
var apigee = require('apigee-access'); var cache = apigee.getCache(); cache.get('key', function(error, data) { // If there was an error, then "error" will be set. // If error is falsy, "data" is the item that was retrieved: // - undefined, in the case of cache miss, or // - a Buffer, or // - a String });
kaldır
cache.remove('key', function(error));Önbelleğe alınmış bir öğeyi geçersiz kılma Bir anahtar geçersiz kılındıktan sonra, başka bir değer eklenmediği sürece sonraki get() istekleri "undefined" değerini döndürür.
Parametreler:
-
key(Zorunlu): Geçersiz kılınacak öğeyi önbellekte benzersiz şekilde tanımlayan dize.Apigee Edge politikasından (ör. Populate Cache policy) önbelleğe yerleştirilen önbellek girişleri için, politikanın girişler için anahtarları oluşturma şeklinden çıkarım yaparak önbellek anahtarını oluşturmanız gerekir. Bunu yapmak için politikanın nasıl yapılandırıldığını bilmeniz gerekir. Önbellek anahtarlarıyla çalışma başlıklı makalede, önbellek anahtarlarının politikalar tarafından nasıl oluşturulduğu açıklanmaktadır. Ancak kapsamla ilgili dize değerleri belirtmemeniz gerektiğini unutmayın. Node.js'den yapılan çağrılarda kapsam zaten bağlamın bir parçasıdır.
-
callback(Zorunlu): Hata varsa ilk parametre olarak bir Error nesnesiyle çağrılacak geri çağırma işlevi.
Örnek:
var apigee = require('apigee-access'); var cache = apigee.getCache(); cache.remove('key', function(error) { });