mahdi ghanbari
mahdi ghanbari
خواندن ۱ دقیقه·۶ سال پیش

atomic transaction mongodb

داشتیم داکیومنت های mongodb رو می خوندم، رسیدم یه بخش با حال گفتم یه مطلب براش بنویسم

مبحث atomic ها تو دیتابیس ها باهم فرق دارن،اینجا داریم راجب mongodb حرف میزنیم

خب بریم سر اصل مطلب atomic به ما چی میگه، میگه برای مثال اگر کوئری(query)،یاتراکنش(transaction) داریم انجام میدیم روش ذکر کنیم که این atomic هست، وقتی که ذکر می کنیم تمام فرآیندها(process) که روی اون داکیومنت هست متوقف میشه یا اگه بعد از اون میاد ارسال نمی شه.

تاعینا کاری که شما انتظار دارید انجام بشه وقتی فرآیندش تموم که شد بعد بقیه فرآیندها داکیومنت انجام بشن

یه خورده بخوایم خودمونی atomic رو توضیح بدم اینه که: قفل میکنه روی اون داکیومنت تا اون کوئری کاملا انجام بشه بعد کوئری های دیگه اجرا بشه (همزمان اجازه نمی ده).

طبق مستندات مونگو ورژن 4 که من خوندم کل کوئری های اپدیت(Update) که میزنیم همشون atomic هستن، واسه کوئری های دیگه اگه بخوایم atomic باشن باید درواقع بگیم به اون کوئری پاس بدیم یه کانفیگی رو

اما به صورت دیفالت ما دستور find داریم،یه دستور دیگه به نام findAndModify داریم

این دستورمثل find کار میکنه با این تفاوت که کوئری find رو به atomic تبدیل می کنه.

اگه بخواید برید تو دل این دستورها لینک پایین رو یه نگاه بندازید بد نیست (:

https://docs.mongodb.com/manual/core/write-operations-atomicity/

atomictransactionmongodbبرنامه نویسی
شاید از این پست‌ها خوشتان بیاید