Ada Eklentileri
Kavramlar

Sınırlar

Süre, bellek, işlemci, ağ ve depolama sınırları; aşıldığında ne olur.

Eklentiler Adanotch'u ve Mac'i yavaşlatmamalı. Her eklenti kendi sürecinde çalışır ve Adanotch bu süreci izler.

Çalışma

SınırDeğerAşılınca
Tek senkron tur200 msSüreç kapatılır ve yeniden başlatılır (bir ihlal)
Bellek64 MBSüreç kapatılır (bir ihlal)
İşlemci10 saniyede ortalama %50Süreç kapatılır (bir ihlal)
update hatası—Bir ihlal
setup ya da yükleme hatası—Eklenti hemen durur

Üst üste üç ihlal eklentiyi durdurur; Ayarlar › Eklentiler'de nedeni görünür ve oradan yeniden açabilirsin. Başarılı her update sayacı sıfırlar. Yeniden başlatmalar arasında bekleme süresi her ihlalde iki katına çıkar.

200 ms bir turdur, update'in tamamı değil

await her seferinde turu bitirir. Ağdan veri beklemek sınırı tüketmez; büyük bir diziyi tek seferde işlemek tüketir. Ağır bir hesabı parçalara böl ve arada await new Promise((r) => setTimeout(r, 0)) ile nefes aldır.

async function sumInChunks(values: number[]) {
  let total = 0;
  for (let i = 0; i < values.length; i += 10_000) {
    for (const v of values.slice(i, i + 10_000)) total += v;
    await new Promise((resolve) => setTimeout(resolve, 0));
  }
  return total;
}

Ağ

SınırDeğer
ProtokolYalnız HTTPS, yalnız network: alan adları
Eşzamanlı istek6
Dakikada istek120
Yanıt boyutu5 MB
İstek gövdesi1 MB
Zaman aşımıVarsayılan 15 sn; timeout ile 1–60 sn

Çerez ve önbellek yoktur. Aşımlar NetworkError, TimeoutError ya da PermissionError olarak döner.

Diğer

SınırDeğer
GörünümEn fazla 2000 düğüm, 32 seviye derinlik
chartEn fazla 500 değer
DepolamaEklenti başına 512 KB (JSON)
ZamanlayıcıAynı anda 200; setInterval en sık 50 ms
console10 saniyede 200 satır, satır başına 2000 karakter
Ada etkinliği (island.show)Aynı anda 8
Panoya yazma1 MB
open(url)Yalnız https: ve mailto:, kullanıcı bir kontrolünü kullandıktan sonraki 10 sn içinde
Paket (dist/index.js)4 MB

Olmayanlar

DOM, window, document, require, process, dosya sistemi ve Node API'leri yoktur. Paketlediğin npm kütüphaneleri bunlara dayanmamalı. Hangi web API'lerinin olduğunu Web API'leri sayfasında bulabilirsin.

Bu sayfada