استخدام محاكي التخزين الخاص بـ Azure للتطوير والاختبار (مهمل)

محاكي تخزين Microsoft Azure هو أداة تحاكي خدمات Azure كائن ثنائي كبير الحجم وقائمة الانتظار والجدول لأغراض التطوير المحلي. يمكنك اختبار التطبيق الخاص بك مقابل خدمات التخزين محليا دون إنشاء اشتراك Azure أو تكبد أي تكاليف. عندما تقتنع بكيفية عمل تطبيق خاص بك في المحاكي، بدل إلى استخدام حساب تخزين Azure في السحابة.

هام

تم الآن إهمال محاكي التخزين الخاص بـ Azure. توصي Microsoft باستخدام محاكي Azurite للتطوير المحلي مع تخزين Azure. محاكي Azurite يحل محل تخزين Azure. سوف يستمر تحديث Azurite لدعم أحدث إصدارات واجهات برمجة تطبيقات تخزين Azure. لمزيد من المعلومات، راجع استخدام محاكي Azurite لتطوير تخزين Azure المحلي.

احصل على المحاكي الخاص بالتخزين

يتوفر المحاكي الخاص بالتخزين كجزء من Microsoft Azure SDK. يمكنك أيضا تثبيت محاكي التخزين باستخداممثبت مستقل (التنزيل المباشر). لتثبيت محاكي التخزين، يجب أن يكون لديك امتيازات إدارية على الكمبيوتر الخاص بك.

يعمل المحاكي الخاص بالتخزين حاليا فقط على Windows. للمحاكاة على Linux، استخدم محاكي خاص بـ Azurite.

إشعار

لا يمكن الوصول إلى البيانات التي تم إنشاؤها في أحد إصدارات محاكي التخزين عند استخدام إصدار مختلف. في حالة كنت بحاجة إلى استمرار البيانات الخاصة بك على المدى الطويل، نوصي بتخزين تلك البيانات في حساب تخزين Azure، بدلا من محاكي التخزين.

يعتمد محاكي التخزين على إصدارات معينة من مكتبات OData. استبدال ملفات DLL OData المستخدمة من بواسطة "محاكي التخزين" بإصدارات أخرى غير معتمد، وقد يتسبب في حدوث سلوك غير متوقع. ومع ذلك، تستطيع استخدام أي إصدار من OData مدعوم من خدمة التخزين لإرسال الطلبات إلى المحاكي.

طريقة عمل محاكي التخزين

يستخدم المحاكي التخزين مثيل محلي Microsoft SQL Server 2012 Express LocalDB لمحاكاة الخدمات الخاصة بتخزين Azure. يمكنك اختيار تكوين محاكي التخزين للوصول إلى مثيل محلي Microsoft SQL Server بدلا من مثيل LocalDB. راجع القسم البدء والتهيئة لمحاكي التخزين لاحقا في هذه المقالة لمعرفة المزيد.

يتصل محاكي التخزين SQL Server أو LocalDB المصادقة المتكاملة في Windows.

هناك بعض الاختلافات في الوظائف بين محاكي التخزين وخدمات تخزين Azure. لمزيد من التفاصيل حول هذه الاختلافات، راجع قسم الاختلافات بين محاكي التخزين وتخزين Azure لاحقا في هذه المقالة.

بدء تشغيل محاكي التخزين والتهيئه

لبدء عملية تشغيل محاكي تخزين Azure:

  1. حدد الزر ابدأ أو اضغط على مفتاح Windows .
  2. ابدأ بكتابة Azure Storage Emulator.
  3. قم بتحديد المحاكي من قائمة التطبيقات المعروضة.

عند بدء عملية تشغيل محاكي التخزين، ستظهر نافذة موجه الأوامر. تستطيع استخدام نافذة وحدة التحكم هذه لبدء تشغيل محاكي التخزين وإيقافه. يمكنك أيضا إلغاء تحديد البيانات والحصول على الحالة وتهيئة المحاكي من موجه الأوامر. لمزيد من التفاصيل، راجع قسم مرجع أداة سطر الأوامر محاكي التخزين لاحقا في هذه المقالة.

إشعار

قد لا يبدأ تشغيل محاكي تخزين Azure بشكل سليم في حالة تشغيل محاكي تخزين آخر، مثل Azurite، على النظام.

عند تشغيل المحاكي، سترى أيقونة في نوافذ الإعلامات في شريط المهام.

عند إغلاق نافذة موجه الأوامر محاكي التخزين، سيستمر تشغيل محاكي التخزين. لإظهار النافذة الخاصة بوحدة تحكم محاكي التخزين مرة أخرى، اتبع الخطوات السابقة كما لو كنت تبدأ تشغيل محاكي التخزين.

في المرة الأولى التي تقوم فيها بتشغيل المحاكي الخاص بالتخزين، تتم تهيئة بيئة التخزين المحلية نيابة عنك. تعمل عملية التهيئة بإنشاء قاعدة بيانات في LocalDB وتحتفظ بمنافذ HTTP لكل خدمة تخزين محلية.

يتم تثبيت المحاكي الخاص بالتخزين افتراضيا إلى C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator.

تلميح

يمكنك استخداممستكشف تخزين Microsoft Azure للعمل مع الموارد الخاصة بمحاكي التخزين المحلية. ابحث عن "(المحاكي - المنافذ الافتراضية) (مفتاح)" ضمن "محلي ومرفق" في شجرة موارد مستكشف التخزين بعد تثبيت محاكي التخزين وبدء تشغيله.

عملية تهيئة محاكي التخزين لاستخدام قاعدة بيانات SQL مختلفة

تستطيع استخدام أداة سطر الأوامر لمحاكي التخزين لتهيئة محاكي التخزين للإشارة إلى مثيل قاعدة بيانات SQL بخلاف مثيل LocalDB الافتراضي:

  1. افتح نافذة وحدة تحكم محاكي التخزين كما هو موضح في قسمالبدء وقم بتهيئة القسم الخاص بمحاكي التخزين.

  2. في النافذة الخاصة بوحدة التحكم، اكتب الأمر التالي، حيث<SQLServerInstance> يوجد اسم مثيل SQL Server. لاستخدام LocalDB، قم بتحديد(localdb)\MSSQLLocalDb المثيل SQL Server.

    AzureStorageEmulator.exe init /server <SQLServerInstance>

    تستطيع أيضا استخدام الأمر التالي، الذي يوجه المحاكي لاستخدام مثيل SQL Server الافتراضي:

    AzureStorageEmulator.exe init /server .

    أو، تستطيع استخدام الأمر التالي، الذي يقوم بتهيئة قاعدة البيانات إلى مثيل LocalDB الافتراضي:

    AzureStorageEmulator.exe init /forceCreate

لمزيد من التفاصيل حول هذه الأوامر، راجعمرجع أداة سطر الأوامر لمحاكي التخزين.

تلميح

تستطيع استخدامMicrosoft SQL Server Management Studio (SSMS) لإدارة مثيلات SQL Server، بما في ذلك تثبيت LocalDB. في مربع حوار SMSS الاتصال بالخادم ، حدد (localdb)\MSSQLLocalDb في الحقل اسم الخادم: للاتصال بمثيل LocalDB.

مصادقة الطلبات مقابل المحاكي الخاص بالتخزين

في الوقت الذي يتم فيه تثبيت محاكي التخزين وبدء تشغيله، يمكنك اختبار التعليمات البرمجية الخاصة بك ضده. يجب مصادقة كل طلب تقدمه ضد محاكي التخزين، في حالة لم يكن طلبا مجهول الهوية. يمكنك تخويل الطلبات مقابل محاكي التخزين باستخدام مصادقة المفتاح المشترك أو باستخدام التوقيع الخاص بالوصول مشترك (SAS).

المصادقة باستخدام بيانات اعتماد المفتاح المشترك

يدعم المحاكي حسابًا ثابتًا واحدًا ومفتاح مصادقة معروفًا لمصادقة المفتاح المشترك. يشير هذا الحساب والمفتاح إلى بيانات الاعتماد الخاصة بالمفتاح المشترك الوحيدة المسموح باستخدامها مع المحاكي. وهي:

Account name: devstoreaccount1
Account key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==

إشعار

مفتاح المصادقة الذي يدعمه المحاكي مخصص فقط لاختبار الوظائف الخاصة برمز مصادقة العميل. وهو لا يخدم أي غرض أمني. لا تستطيع استخدام حساب تخزين الإنتاج والمفتاح مع المحاكي. ينبغي عدم استخدام حساب التطوير مع بيانات الإنتاج.

يدعم المحاكي الاتصال خلال HTTP فقط. ومع ذلك، يعد HTTPS البروتوكول الموصى به للوصول إلى الموارد في الحساب الخاص بتخزين Azure للإنتاج.

الاتصال بحساب المحاكي بواسطة الاختصار

تتمثل أسهل طريقة للاتصال بالمحاكي من تطبيقك في تكوين سلسلة اتصال في ملف تكوين التطبيق الذي يشير إلى الاختصار UseDevelopmentStorage=true. يعبر الاختصار عن مكافئ لسلسلة الاتصال الكاملة للمحاكي الذي يحدد اسم الحساب ومفتاح الحساب ونقاط النهاية للمحاكي لكل من خدمات Azure Storage:

DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;
AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;
BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;
QueueEndpoint=http://127.0.0.1:10001/devstoreaccount1;
TableEndpoint=http://127.0.0.1:10002/devstoreaccount1;

توضح القصاصة البرمجية ‎.NET التالية كيفية استخدام الاختصار من طريقة تأخذ سلسلة اتصال. على سبيل المثال، تأخذ الدالة الإنشائية BlobContainerClient(String, String) سلسلة اتصال.

BlobContainerClient blobContainerClient = new BlobContainerClient("UseDevelopmentStorage=true", "sample-container");
blobContainerClient.CreateIfNotExists();

تأكد من تشغيل المحاكي قبل استدعاء التعليمة البرمجية في القصاصة البرمجية.

لمزيد من التفاصيل حول سلاسل الاتصال، راجع تكوين سلاسل اتصال تخزين Azure.

مصادقة بتوقيع وصول مشترك

إشعار

نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.

تدعم بعض مكتبات العميل الخاص بتخزين Azure، مثل مكتبة Xamarin، المصادقة فقط باستخدام رمز مميز لتوقيع الوصول المشترك (SAS). تستطيع إنشاء الرمز المميز SAS باستخدام مستكشف التخزين أو تطبيق آخر يدعم مصادقة المفتاح المشترك.

يمكنك أيضا إنشاء رمز SAS المميز باستخدام Azure PowerShell. يقوم المثال التالي بإنشاء رمز SAS مميز مع أذونات كاملة لحاوية كائن ثنائي كبير الحجم:

  1. قم بتثبيت Azure PowerShell في حالة لم تكن قد قمت بذلك بالفعل (يوصى باستخدام أحدث إصدار من cmdlets Azure PowerShell). اتبع إرشادات التثبيت، راجع كيفية التثبيت والتكوين Azure PowerShell.
  2. افتح Azure PowerShell وافتح الأوامر التالية، واستبدلها CONTAINER_NAME باسم من اختيارك:
$context = New-AzStorageContext -Local

New-AzStorageContainer CONTAINER_NAME -Permission Off -Context $context

$now = Get-Date

New-AzStorageContainerSASToken -Name CONTAINER_NAME -Permission rwdl -ExpiryTime $now.AddDays(1.0) -Context $context -FullUri

ينبغي أن يكون عنوان URI الناتج عن توقيع الوصول المشترك للحاوية الجديدة مشابها لما يلي:

http://127.0.0.1:10000/devstoreaccount1/sascontainer?sv=2012-02-12&se=2015-07-08T00%3A12%3A08Z&sr=c&sp=wl&sig=t%2BbzU9%2B7ry4okULN9S0wst/8MCUhTjrHyV9rDNLSe8g%3Dsss

التوقيع الخاص بالوصول المشترك الذي تم إنشاؤه باستخدام هذا المثال صالح ليوم واحد. يمنح التوقيع حق الوصول الكامل (القراءة والكتابة والحذف والقائمة) إلى الكائنات الثنائية كبيرة الحجم داخل الحاوية.

للحصول على مزيد من المعلومات عن توقيعات الوصول المشارك، راجع منح الوصول المحدود إلى موارد تخزين Azure باستخدام توقيعات الوصول المشترك (SAS).

معالجة الموارد في المحاكي الخاص بالتخزين

تختلف نقاط نهاية الخدمة الخاصة بمحاكي التخزين عن نقاط النهاية الخاصة بحساب تخزين Azure. لا يقوم الكمبيوتر المحلي بحل اسم المجال، مما يتطلب أن تكون نقاط نهاية محاكي التخزين عناوين محلية.

عند معالجة مورد في حساب التخزين الخاص بـ Azure، يمكنك استخدام النظام التالي. الاسم الخاص بالحساب هو جزء من اسم مضيف URI، والمورد الذي تتم معالجته هو جزء من مسار URI:

<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>

على سبيل المثال، عنوان URI التالي هو عنوان صالح لكائن ثنائي كبير الحجم في حساب تخزين Azure:

https://myaccount.blob.core.windows.net/mycontainer/myblob.txt

لأن الكمبيوتر المحلي لا يقوم تحليل اسم المجال اسم الحساب جزء من مسار URI بدلا من اسم المضيف. استخدم تنسيق URI التالي لمورد في المحاكي الخاص بالتخزين:

http://<local-machine-address>:<port>/<account-name>/<resource-path>

على سبيل المثال، قد يتم استخدام العنوان التالي للوصول إلى كائن ثنائي كبير الحجم في محاكي التخزين:

http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt

نقاط نهاية الخدمة الخاصة بمحاكي التخزين هي:

  • خدمة الكائن الثنائي كبير الحجمhttp://127.0.0.1:10000/<account-name>/<resource-path>:
  • خدمة قائمة الانتظار: http://127.0.0.1:10001/<account-name>/<resource-path>
  • خدمة الجدول: http://127.0.0.1:10002/<account-name>/<resource-path>

عملية معالجة الحساب الثانوي باستخدام RA-GRS

بدءا من الإصدار 3.1، يدعم المحاكي الخاص بالتخزين النسخ المتماثل الجغرافي المتكرر للوصول إلى القراءة (RA-GRS). تستطيع الوصول إلى الموقع الثانوي عن طريق إلحاق -secondary باسم الحساب. على سبيل المثال، يمكن استخدام العنوان التالي للوصول إلى كائن ثنائي كبير الحجم باستخدام الثانوية للقراءة فقط في محاكي التخزين:

http://127.0.0.1:10000/myaccount-secondary/mycontainer/myblob.txt

إشعار

للوصول البرمجي إلى الثانوي بواسطة محاكي التخزين، استخدم مكتبة عميل التخزين لـ .NET الإصدار 3.2 أو إصدار أحدث. راجع المكتبة الخاصة بعميل التخزين Microsoft Azure ل .NET للحصول على التفاصيل.

مرجع أداة سطر الأوامر لمحاكي التخزين

بدءا من الإصدار 3.0، يتم عرض نافذة وحدة التحكم عند بدء تشغيل محاكي التخزين. استخدم سطر الأوامر في نافذة وحدة التحكم لبدء عملية تشغيل المحاكي وإيقافه. تستطيع أيضا الاستعلام عن الحالة والقيام بعمليات أخرى من سطر الأوامر.

إشعار

إذا كان لديك محاكي الحساب في Azure Microsoft مثبتا، فسيظهر رمز علبة النظام عند تشغيل "محاكي التخزين". اضغط بزر الماوس الأيمن فوق الرمز للكشف عن قائمة توفر طريقة رسومية لبدء وإيقاف محاكي التخزين.

صيغة سطر الأوامر

AzureStorageEmulator.exe [start] [stop] [status] [clear] [init] [help]

الخيارات

لعرض قائمة الخيارات، اكتب /help في موجه الأوامر.

خيار الوصف الأمر الوسيطات
البدء بدء عملية تشغيل محاكي التخزين. AzureStorageEmulator.exe start [-inprocess] -إعادة المعالجة: بدء تشغيل المحاكي في العملية الحالية بدلا من إنشاء عملية جديدة.
إيقاف إيقاف المحاكي الخاص بالتخزين. AzureStorageEmulator.exe stop
الحالة طباعة حالة محاكي التخزين. AzureStorageEmulator.exe status
واضحه مسح البيانات في جميع الخدمات المحددة في سطر الأوامر. AzureStorageEmulator.exe clear [blob] [table] [queue] [all] كائن ثنائي كبير الحجم: يمسح بيانات كائن ثنائي كبير الحجم.
قائمة الانتظار: لمسح بيانات قائمة الانتظار.
الجدول: لمسح البيانات الخاصة بالجدول.
الكل: مسح كافة البيانات في جميع الخدمات.
Init هل تهيئة لمرة واحدة لإعداد المحاكي. AzureStorageEmulator.exe init [-server serverName] [-sqlinstance instanceName] [-forcecreate|-skipcreate] [-reserveports|-unreserveports] [-inprocess] -serverName\instanceName:تحديد الخادم الذي يستضيف مثيل SQL.
-sqlinstance instanceName: يحدد اسم مثيل SQL لاستخدامه في المثيل الخاص بالخادم الافتراضي.
-forcecreate: فرض إنشاء قاعدة البيانات SQL، حتى لو كانت موجودة بالفعل.
-skipcreate: يتخطى إنشاء قاعدة البيانات الخاصة بـ SQL. هذا يملك الأسبقية على -forcecreate.
-reserveports: محاولات لحجز المنافذ HTTP المرتبطة بالخدمات.
-unreserveports: المحاولات لإزالة الحجوزات لمنافذ HTTP المرتبطة بالخدمات. هذا لدية الأسبقية على -reserveports.
-inprocess: تنفيذ التهيئة في العملية الحالية بدلا من إنتاج عملية جديدة. ينبغي بدء العملية الحالية بأذونات مرتفعة في حالة تغيير حجوزات المنفذ.

الاختلافات بين المحاكي الخاص بالتخزين وتخزين Azure

نظرا لأن محاكي التخزين عبارة عن بيئة محاكاة محلية، توجد اختلافات بين استخدام المحاكي وحساب تخزين Azure في السحابة:

  • يدعم محاكي التخزين حساب واحد ثابت ومفتاح مصادقة معروفا فقط.
  • محاكي التخزين ليس خدمة التخزين القابلة للتطوير ولا يدعم عددا كبيرا من العملاء المتزامنين.
  • كما هو موضح في معالجة الموارد في محاكي التخزين، تتم عملية معالجة الموارد بشكل مختلف في محاكي التخزين مقابل حساب تخزين Azure. الفرق هو أن دقة اسم المجال متاحة في السحابة ولكن ليس على الكمبيوتر المحلي.
  • بدءا من الإصدار 3.1، يدعم حساب المحاكي الخاص بالتخزين النسخ المتماثل الجغرافي المتكرر للوصول إلى القراءة (RA-GRS). في المحاكي، تم تمكين RA-GRS لكافة الحسابات ولا يوجد أي تأخير بين النسخ المتماثلة الأساسية والثانوية. يتم دعم عمليات الحصول على إحصائيات خدمة كائن ثنائي كبير الحجم والحصول على إحصائيات خدمة قائمة الانتظار والحصول على إحصائيات خدمة الجدول على الحساب الثانوي وستعرض دائما قيمة LastSyncTime عنصر الاستجابة كوقت حالي وفقا لقاعدة بيانات SQL الأساسية.
  • خدمة الملفات ونقاط نهاية خدمة بروتوكول SMB غير معتمدة حاليا في محاكي التخزين.
  • في حالة كنت تستخدم إصدارا من خدمات التخزين غير المعتمدة من قبل المحاكي، يقوم المحاكي بإرجاع خطأ VersionNotSupportedByEmulator (رمز حالة HTTP 400 - طلب غير صالح).

الاختلافات في تخزين كائن ثنائي كبير الحجم

تنطبق الاختلافات التالية على تخزين كائن ثنائي كبير الحجم في المحاكي:

  • يدعم محاكي التخزين فقط أحجام كائن ثنائي كبير الحجم التي تصل إلى 2 GB.
  • الحد الأقصى لطول اسم كائن ثنائي كبير الحجم في محاكي التخزين هو 256 حرفا، في حين أن الحد الأقصى لطول اسم كائن ثنائي كبير الحجم في تخزين Azure هو 1024 حرفا.
  • تسمح النسخة التزايدية بنسخ لقطات من الكائنات الثنائية كبيرة الحجم التي تم استبدالها، مما يؤدي إلى إرجاع فشل في الخدمة.
  • الحصول على نطاقات الصفحات لا يعمل فرق بين اللقطات المنسوخة باستخدام كائن ثنائي كبير الحجم النسخ التدريجية.
  • قد تنجح عملية Put Blob ضد كائن ثنائي كبير الحجم موجودة في محاكي التخزين مع عقد إيجار نشط حتى إذا لم يتم تحديد معرف الإيجار في الطلب.
  • عمليات إلحاق كائن ثنائي كبير الحجم غير مدعوم من قبل المحاكي. تؤدي محاولة إجراء عملية على كائن ثنائي كبير الحجم ملحقة إلى إرجاع خطأ FeatureNotSupportedByEmulator (رمز حالة HTTP 400 - طلب غير صحيح).

الاختلافات لتخزين الجدول

تنطبق الاختلافات التالية على تخزين الجدول في محاكي:

  • خصائص التاريخ في خدمة الجدول في دعم المحاكي التخزين فقط النطاق المعتمد من قبل SQL Server 2005 (مطلوب أن تكون لاحقا من 1 يناير 1753). يتم تغيير جميع التواريخ قبل 1 يناير 1753 إلى هذه القيمة. تقتصر الدقة الخاصة بالتواريخ على دقة SQL Server 2005، مما يعني أن التواريخ دقيقة إلى 1/300 من الثانية.
  • يدعم محاكي التخزين قيم الخصائص الخاصة بمفتاح القسم ومفتاح الصف التي تقل عن 512 بايت لكل منهما. من غير الممكن أن يتجاوز الحجم الإجمالي لاسم الحساب واسم الجدول وأسماء الخصائص الرئيسية معا 900 بايت.
  • يقتصر الحجم الإجمالي لصف في جدول في المحاكي الخاص بالتخزين على أقل من 1 ميغابايت.
  • في محاكي التخزين ، تدعم خصائص نوع البيانات Edm.Guid أو Edm.Binary عوامل المقارنة Equal (eq)وNotEqual (ne) فقط في سلاسل تصفية الاستعلام.

الاختلافات لتخزين قائمة الانتظار

ليست هناك اختلافات خاصة بتخزين قائمة الانتظار في المحاكي.

ملاحظات الإصدار الخاص بمحاكي التخزين

إصدار 5.10

  • لن يرفض محاكي التخزين الإصدار 2019-07-07 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول.

إصدار 5.9

  • لن يرفض محاكي التخزين الإصدار 2019-02-02 من خدمات التخزين على نقاط نهاية خدمة قائمة الانتظار و قائمة الانتظار و الجدول.

إصدار 5.8

  • لن يرفض محاكي التخزين الإصدار 2018-11-09 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم و قائمة الانتظار والجدول.

إصدار 5.7

  • تم إصلاح خطأ من شأنه أن يتسبب في حدوث عطل في حالة تم تمكين التسجيل.

إصدار 5.6

  • يدعم محاكي التخزين الآن الإصدار 2018-03-28 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول.

إصدار 5.5

  • يدعم محاكي التخزين الآن الإصدار 2017-11-09 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول.
  • تمت إضافة دعم الخاصية إنشاء كائن ثنائي كبير الحجم الذي يرجع وقت إنشاء كائن ثنائي كبير الحجم.

إصدار 5.4

  • لتحسين استقرار التثبيت، لم يعد يحاول المحاكي حجز المنافذ في وقت التثبيت. في حالة كنت تريد حجوزات المنافذ، فاستخدم الخيار-reserveports للأمر init لتحديدها.

إصدار 5.3

  • يدعم محاكي التخزين الآن الإصدار 2017-07-29 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم و قائمة الانتظار والجدول.

إصدار 5.2

  • يدعم محاكي التخزين الآن الإصدار 2017-04-17 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول.
  • تم إصلاح خطأ حيث لم يتم ترميز قيم الخصائص الخاصة بالجدول بشكل صحيح.

إصدار 5.1

  • تم إصلاح خطأ حيث كان محاكي التخزين يعيد العنوان في بعض الاستجاباتDataServiceVersion حيث لم تكن الخدمة كذلك.

إصدار 5.0

  • لم يعد مثبت محاكي التخزين يتحقق من العمليات الخاصة بالتثبيت MSSQL و .NET Framework الموجودة.
  • لم يعد مثبت محاكي التخزين ينشئ قاعدة البيانات كجزء من عملية التثبيت. سيتم إنشاء قاعدة البيانات إذا لزم الأمر كجزء من بدء التشغيل.
  • إنشاء قاعدة بيانات لم يعد يتطلب الارتفاع.
  • لم تعد هناك حاجة إلى حجوزات المنافذ لبدء عملية التشغيل.
  • إضافة الخيارات التالية إلىinit: -reserveports(يتطلب الارتفاع)،-unreserveports (يتطلب الارتفاع)،-skipcreate.
  • خيار واجهة المستخدم المحاكي التخزين على رمز علبة النظام الآن بتشغيل واجهة سطر الأوامر. واجهة المستخدم الرسومية القديمة لم تعد متاحة.
  • إزالة بعض DLLs أو إعادة تسميتها.

إصدار 4.6

  • يدعم محاكي التخزين الآن الإصدار 2016-05-31 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم و قائمة الانتظار والجدول.

إصدار 4.5

  • إصلاح خطأ تسبب في فشل التثبيت والتهيئة عند إعادة تسمية قاعدة بيانات النسخ الاحتياطي.

إصدار 4.4

  • يدعم محاكي التخزين الآن الإصدار 2015-12-11 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم و قائمة الانتظار وجدول.
  • أصبح جمع البيانات المهملة لمحاكي التخزين من بيانات كائن ثنائي كبير الحجم الآن أكثر فعالية عند التعامل مع أعداد كبيرة من الكائنات الثنائية كبيرة الحجم.
  • إصلاح خطأ تسبب في حاوية ACL XML التحقق من صحة بشكل مختلف قليلا عن كيفية خدمة التخزين القيام بذلك.
  • تم إصلاح خطأ تسبب أحيانا في الإبلاغ عن قيم تاريخ الوقت القصوى والدقيقة في المنطقة الزمنية غير الصحيحة.

إصدار 4.3

  • يدعم محاكي التخزين الآن الإصدار 2015-07-08 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار وجدول .

Version 4.2

  • يدعم محاكي التخزين" الآن الإصدار 2015-04-05 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول.

إصدار 4.1

  • يدعم محاكي التخزين الآن الإصدار 2015-02-21 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول. لا يدعم ميزات كائن ثنائي كبير الحجم الملحقة الجديدة.
  • يقوم المحاكي الآن بإرجاع رسالة خطأ ذات معنى للإصدارات غير المعتمدة من خدمات التخزين. ننصح باستخدام أحدث إصدار من المحاكي. إذا كنت تحصل على خطأ VersionNotSupportedByEmulator (رمز حالة HTTP 400 - طلب غير صالح)، قم بتنزيل أحدث إصدار من المحاكي.
  • تم إصلاح خطأ حيث تسببت حالة تعارض في أن تكون بيانات عناصر الجدول غير صحيحة أثناء عمليات الدمج المتزامنة.

الإصدار 4.0

  • تمت إعادة تسمية الملف التنفيذي محاكي التخزين إلى AzureStorageEmulator.exe.

الإصدار 3.2

  • يدعم محاكي التخزين الآن الإصدار 2014-02-14 من خدمات التخزين على نقاط نهاية خدمة كائن ثنائي كبير الحجم وقائمة الانتظار والجدول. نقاط نهاية خدمة الملفات غير معتمدة حاليا في محاكي التخزين. راجع تعيين الإصدار لخدمات تخزين Azure للحصول على التفاصيل حول الإصدار 2014-02-14.

إصدار 3.1

  • يتم الآن اعتماد التخزين الجغرافي المكرر (RA-GRS) في محاكي التخزين للوصول للقراءة. يتم دعمGet Blob Service Stats،Get Queue Service StatsوGet Table Service Stats واجهات برمجة التطبيقات للحساب الثانوي و سيعود دوما قيمة عنصر استجابة LastSyncTime كالوقت الحالي وفقا لقاعدة بيانات SQL الأساسية. للوصول البرمجي إلى الثانوي بواسطة محاكي التخزين، استخدم مكتبة عميل التخزين لـ .NET الإصدار 3.2 أو إصدار أحدث. راجع مكتبة عميل التخزين Microsoft Azure للحصول على مرجع .NET للحصول على التفاصيل.

الإصدار 3.0

  • لم يعد يتم شحن المحاكي الخاص بتخزين Azure في نفس الحزمة مثل محاكي الحوسبة.
  • تم إهمال واجهة المستخدم الرسومية لمحاكي التخزين. وقد تم استبداله بواجهة سطر أوامر قابلة للبرمجة النصية. للحصول على معلومات حول واجهة سطر الأوامر، راجع محاكي التخزين مرجع أداة واجهة سطر الأوامر. ستستمر الواجهة الرسومية في أن تكون موجودة في الإصدار 3.0، ولكن لا يمكن الوصول إليها إلا عند تثبيت محاكي الحوسبة بالنقر بزر الماوس الأيمن على رمز علبة النظام وتحديد إظهار واجهة مستخدم المحاكي التخزين.
  • الإصدار 2013-08-15 من خدمات التخزين Azure الآن معتمد بالكامل. (سابقا هذا الإصدار كان معتمدا فقط من قبل محاكي التخزين الإصدار 2.2.1 معاينة)

الخطوات التالية

  • قم بتقييم محاكي التخزين مفتوح المصدر خلال الأنظمة الأساسية الذي يحافظ عليه المجتمع Azurite.
  • تحتوي عينات تخزين Azure التي تستخدم .NET على ارتباطات إلى العديد من عينات التعليمات البرمجية التي يمكنك استخدامها عند تطوير التطبيق.
  • يمكنكاستخدام مستكشف التخزين Microsoft Azure للعمل مع الموارد الموجودة في حساب التخزين السحابي الخاص بك، وفي المحاكي الخاص بالتخزين.

راجع أيضًا: