Cloudflare استفاده از SQLite را به عنوان تنها بکند ذخیرهسازی Durable Objects اعلام کرد
شرکت Cloudflare به تازگی اعلام کرده است که دیگر امکان ایجاد Durable Objects جدید با استفاده از بکند ذخیرهسازی key-value برای حسابهای کاربری جدید وجود ندارد و تمامی Durable Objects جدید باید از بکند SQLite استفاده کنند. این تغییر که از سال 2024 به صورت عمومی در دسترس قرار گرفته، بخشی از استراتژی این شرکت برای یکپارچهسازی و بهبود عملکرد سیستم Durable Objects است.
Durable Objects یکی از فناوریهای مهم در پلتفرم Cloudflare Workers است که امکان ذخیرهسازی و مدیریت دادهها به صورت پایدار و توزیعشده را فراهم میکند. پیش از این، کاربران میتوانستند Durable Objects را با استفاده از دو نوع بکند ذخیرهسازی key-value و SQLite ایجاد کنند، اما اکنون Cloudflare تصمیم گرفته است تا SQLite را به عنوان بکند اصلی و استاندارد برای Durable Objects معرفی کند.
این تغییر به این معناست که حسابهایی که تاکنون Durable Objects خود را با بکند key-value ایجاد نکردهاند، دیگر قادر به ساخت Durable Objects جدید با این نوع بکند نخواهند بود و باید از بکند SQLite استفاده کنند. در مقابل، حسابهایی که حداقل یک Durable Object با بکند key-value دارند، فعلاً میتوانند همچنان Durable Objects جدید با این بکند بسازند، اما این امکان در آینده محدود خواهد شد.
یکی از مزایای استفاده از SQLite به عنوان بکند ذخیرهسازی Durable Objects، پشتیبانی از قابلیتهای پیشرفتهتر مانند اجرای کوئریهای رابطهای SQL و بازیابی نقطهای دادهها در بازه زمانی 30 روز گذشته است. این ویژگیها به توسعهدهندگان امکان میدهد تا مدیریت دادههای خود را با دقت و انعطاف بیشتری انجام دهند و در صورت بروز خطا یا نیاز به بازگردانی دادهها، از امکانات بازیابی بهرهمند شوند.
برای استفاده از بکند SQLite در Durable Objects، توسعهدهندگان باید کلاسهای جدید خود را با استفاده از مهاجرت “new_sqlite_classes” تعریف کنند. این فرآیند در فایلهای پیکربندی مانند wrangler.jsonc و wrangler.toml قابل تنظیم است و نمونهای از آن به صورت زیر ارائه شده است:
{
“migrations”: [
{
“tag”: “v1”,
“new_sqlite_classes”: [“MyDurableObject”]
}
]
}
در صورتی که توسعهدهندگان تلاش کنند Durable Objects جدیدی با بکند key-value ایجاد کنند، خطایی دریافت خواهند کرد که بیان میکند ایجاد Durable Objects با این بکند دیگر پشتیبانی نمیشود و باید از مهاجرت new_sqlite_classes استفاده شود.
این تغییر همچنین با هدف همگامسازی و سادهسازی زیرساختهای ذخیرهسازی Durable Objects انجام شده است تا در آینده، انتقال تمامی Durable Objects موجود به بکند SQLite به صورت یکپارچه و بدون اختلال انجام شود. همچنین برنامه Workers Free از ابتدا تنها از Durable Objects با بکند SQLite پشتیبانی کرده است.
Cloudflare با این اقدام، گام مهمی در جهت بهبود عملکرد، امنیت و قابلیت اطمینان Durable Objects برداشته است و توسعهدهندگان را تشویق میکند تا هر چه سریعتر به استفاده از بکند SQLite مهاجرت کنند تا از امکانات جدید و بهبودهای ارائه شده بهرهمند شوند.
در نهایت، این تغییر نشاندهنده روند رو به رشد استفاده از پایگاه دادههای رابطهای سبک و قدرتمند مانند SQLite در سیستمهای توزیعشده و ابری است که میتواند به بهبود مدیریت دادهها و افزایش قابلیتهای برنامههای کاربردی کمک کند.