Concurrency vs Parallelism
اگر تازه با مفاهیم چندنخی (Multithreading)، همزمانی (Concurrency) و پردازش موازی (Parallelism) آشنا شدهاید، احتمالاً اولین چیزی که ذهنتان را درگیر میکند این است که “اینها دقیقاً چه فرقی دارند؟”…
ادامه خواندناگر تازه با مفاهیم چندنخی (Multithreading)، همزمانی (Concurrency) و پردازش موازی (Parallelism) آشنا شدهاید، احتمالاً اولین چیزی که ذهنتان را درگیر میکند این است که “اینها دقیقاً چه فرقی دارند؟”…
ادامه خواندندر توسعه نرم افزار، Feature Toggle مکانیزمی است که امکان روشن یا خاموش کردن یک قابلیت از راه دور را فراهم میکند، بدون نیاز به استقرار مجدد کد. feature toggling…
ادامه خواندندر دنیای پیچیده و پویای نرمافزار، بسیاری از چالشها قابل پیشبینیاند؛ برخی دیگر را نمیدانیم اما انتظارشان را داریم. ولی دستهای دیگر، بهمراتب خطرناکتر و حساسترند: چیزهایی که نمیدانیم که…
ادامه خواندنچرا باز نویسی نرم افزار همیشه بهترین راه نیست؟ در دنیای توسعه نرمافزار، وسوسه باز نویسی کامل پروژهای که بهمرور زمان پیچیده، سنگین و گاهی غیرقابل فهم شده، امری طبیعی…
ادامه خواندندر دنیای پرشتاب و رقابتی کسبوکارهای امروزی، توسعه نرمافزار دیگر تنها یک فعالیت فنی نیست؛ بلکه بخش حیاتی از استراتژی رشد و بقاء سازمانهاست. در این میان، معمار نرم افزار…
ادامه خواندندر دنیای در حال تحول توسعه نرمافزار، نقش معمار بسیار حیاتی است. معماران سیستمهایی طراحی میکنند که نهتنها نیازهای امروز را برآورده میکنند، بلکه مقیاسپذیر و قابل انطباق برای آینده…
ادامه خواندنیکی از مهمترین بهبودهایی که در بستر یک پلتفرم میکروسرویس تجربه کردهام، مهاجرت از پروتکل قدیمی HTTP/1.1 به HTTP/2 بود. این انتقال باعث افزایش چشمگیر عملکرد و کاهش زمان پاسخدهی…
ادامه خواندندر معماری نرمافزار، تصمیمگیری یکی از مهمترین و چالشبرانگیزترین مراحل طراحی سیستم است. معماران با گزینههای مختلفی مواجه هستند که هرکدام مزایا و معایب خاص خود را دارند. انتخاب بین…
ادامه خواندندر معماری های مدرن نرم افزار، سیستمها و زیرسیستمها بهندرت در خلاء عمل میکنند. اغلب با سرویسهای خارجی، سیستمهای legacy، یا زیرسیستمهای دیگر در تعاملاند. اما هر بار که یک…
ادامه خواندنرشد چشمگیر اقتصاد API (Application Programming Interface) منجر به افزایش نیاز به پلتفرمهای مدیریت API شده است. این راهکارها به ایجاد، پیادهسازی، نظارت، تحلیل، ایمنسازی و مدیریت APIها در تمام…
ادامه خواندنبیایید نگاهی به این سناریو بیندازیم. ما دو نوع درخواست داریم: قرمز و سبز. درخواستهای قرمز درخواستهای با اولویت بالا هستند که وارد یک مؤلفه خدماتی میشوند، در صف قرار…
ادامه خواندنیکی از وظایف اصلی یک معمار نرم افزار تعریف و تحلیل Component هایی است که سیستم را تشکیل میدهند. Component بلوکهای سازنده یک برنامه هستند و درک نقش، تعاملات و…
ادامه خواندن