سلام دوستان! توی این مقاله، میخوایم یه مفهوم خیلی مهم توی دنیای کامپیوتر رو با هم یاد بگیریم: اتمی بودن. شاید اسمش یکم ترسناک باشه، ولی نگران نباشید، سعی میکنم خیلی ساده و روون توضیح بدم.
فرض کنید دارید یک فایل مهم رو توی کامپیوترتون ویرایش میکنید. این فایل ممکنه یه نامه باشه، یه عکس باشه، یا حتی یه برنامه. حالا تصور کنید که وسط ویرایش، یهو برق میره یا کامپیوترتون هنگ میکنه. چه اتفاقی میافته؟ ممکنه بخشی از تغییراتی که دادید ذخیره بشه و بخشی دیگه ذخیره نشه. این خیلی بده، چون فایلتون ناقص میشه و ممکنه دیگه درست کار نکنه.
اینجاست که مفهوم اتمی بودن به کمک ما میاد. اتمی بودن یعنی یه سری عملیات که باید با هم انجام بشن، یا همشون با موفقیت انجام میشن، یا هیچکدوم انجام نمیشن. مثل یه دکمه "Undo" که اگه بزنید، تمام تغییراتی که دادید یه جا برمیگرده.
به عبارت دیگه، اتمی بودن یه جور ضمانت میده که عملیات شما یا به طور کامل انجام میشه، یا اگه مشکلی پیش بیاد، هیچ تغییری ایجاد نمیشه و همه چیز به حالت قبل برمیگرده. این خیلی مهمه، چون از خراب شدن اطلاعات جلوگیری میکنه.
همونطور که گفتم، اتمی بودن از خراب شدن اطلاعات جلوگیری میکنه. اما کاربردهای دیگهای هم داره:
فرض کنید یه فروشگاه آنلاین دارید. وقتی یه مشتری یه محصول رو سفارش میده، باید چند تا کار انجام بشه:
اگه یکی از این کارها انجام نشه، ممکنه مشکل پیش بیاد. مثلاً اگه از موجودی انبار کم بشه ولی اطلاعات سفارش توی پایگاه داده ذخیره نشه، مشتری فکر میکنه سفارش داده ولی در واقع هیچ سفارشی ثبت نشده.
با استفاده از اتمی بودن، میتونیم مطمئن بشیم که این سه تا کار یا همشون با موفقیت انجام میشن، یا هیچکدوم انجام نمیشن.
مرحله | توضیحات | نتیجه بدون اتمی بودن | نتیجه با اتمی بودن |
---|---|---|---|
۱. کم کردن از موجودی انبار | مقدار محصول از موجودی انبار کم میشه. | موجودی انبار کم میشه، اما... | موجودی انبار کم میشه (یا نمیشه). |
۲. ثبت سفارش در پایگاه داده | اطلاعات سفارش در پایگاه داده ذخیره میشه. | شاید اطلاعات سفارش ثبت نشه. | اطلاعات سفارش ثبت میشه (یا نمیشه). |
۳. ارسال ایمیل تایید | یه ایمیل تایید به مشتری ارسال میشه. | شاید ایمیل ارسال نشه. | ایمیل ارسال میشه (یا نمیشه). |
نتیجه نهایی | وضعیت نهایی سفارش | سفارش ناقص و سردرگمی مشتری. | سفارش کامل یا بدون هیچ تغییری. |
خیلی از زبانهای برنامهنویسی و سیستمهای پایگاه داده، از اتمی بودن پشتیبانی میکنن. این یعنی شما میتونید با استفاده از ابزارهای خاص، یه سری عملیات رو به صورت اتمی انجام بدید. مثلاً توی پایگاه دادهها، از مفهومی به اسم Transaction استفاده میشه که به شما اجازه میده چند تا دستور SQL رو به صورت اتمی اجرا کنید.
یه مثال ساده از استفاده از Transaction در SQL:
START TRANSACTION; UPDATE accounts SET balance = balance - 100 WHERE account_id = 1; UPDATE accounts SET balance = balance + 100 WHERE account_id = 2; COMMIT;
توی این مثال، ما دو تا دستور UPDATE داریم که یکی از حساب شماره ۱، ۱۰۰ واحد کم میکنه و به حساب شماره ۲، ۱۰۰ واحد اضافه میکنه. با استفاده از START TRANSACTION و COMMIT، مطمئن میشیم که این دو تا دستور یا همشون با موفقیت انجام میشن، یا اگه مشکلی پیش بیاد، هیچ تغییری توی پایگاه داده ایجاد نمیشه.
اتمی بودن یه مفهوم خیلی مهم توی دنیای کامپیوتره که باعث میشه اطلاعات ما امن بمونه و سیستم ما پایدارتر باشه. با استفاده از اتمی بودن، میتونیم یه سری عملیات رو به صورت یه واحد کامل در نظر بگیریم و مطمئن بشیم که یا همشون با موفقیت انجام میشن، یا هیچکدوم انجام نمیشن. امیدوارم که این مقاله براتون مفید بوده باشه!
اگر سوالی داشتید حتما توی قسمت نظرات بپرسید. مطمين باشيد که به تمام سوالات شما جواب خواهم داد.
اتمی بودن, Transaction, پایگاه داده, SQL, امنیت اطلاعات, پایداری سیستم
امتیاز شما به این مطلب
امتیاز: 5 از 5 (مجموع 1 رای)
اولین نفری باشید که در مورد این مقاله نظر می دهید!
techfeed.ir© 2024 All rights reserved