1. ارتقاء به .NET 8 و C# 12

شناسه تیکت:#7629

✅ تغییرات اصلی:

  • مهاجرت کامل پلتفرم ERP به .NET 8 و C# 12
  • دسترسی به قابلیت‌های جدید زبان (مانند Primary Constructors، Collection Expressions و ...)
  • بهبود مدیریت حافظه و عملکرد runtime

⚠️ ملاحظات فنی:

🔧 الزامات سیستمی:

  • حداقل نسخه Docker: 27.4.1
  • بروزرسانی تمام container‌های مرتبط با برنامه

⚠️ تأثیرات احتمالی:

  • ممکن است برخی کتابخانه‌های شخصی‌سازی شده نیاز به بازنویسی یا تست مجدد داشته باشند
  • تمام عملکرد های سیستم نیاز به تست جامع دارند

2. اجرای گزارش‌های Elasticsearch 

شناسه تیکت:#7799

🚀 عملکرد جدید:

  • امکان اجرای مستقیم کوئری‌های Elasticsearch از طریق خروجی گزارش‌ها

📌 نکات فنی:

⚙️ پیکربندی لازم:

  • تنظیمات اتصال به کلاستر Elasticsearch
  • تعیین سطوح دسترسی مناسب (Security & Roles)

⚠️ هشدارها:

  • نیاز به اعمال محدودیت‌های حجم داده بازگشتی
  • تغییر در ساختار پاسخ‌ها نسبت به نسخه قبلی

3. پیاده‌سازی ارتباطات مبتنی بر RabbitMQ

شناسه تیکت:#8161

🧩 معماری جدید:

  • جایگزینی/تکمیل API‌های HTTP با صف‌های RabbitMQ

🛠️ ملاحظات اجرایی:

✅ مزایا:

  • افزایش تحمل خطا (Fault Tolerance)
  • مدیریت بهتر ترافیک سنگین
  • کاهش فشار روی API 

⚠️ نکات مهم:

  • نیاز به پیکربندی جداگانه Exchange‌ها و Queue‌ها

4. بازنویسی موتور گزارش‌گیری

شناسه تیکت:#8129

📊 بهبودهای اساسی:

  • معماری کاملاً بازنویسی شده موتور گزارش
  • بهینه‌سازی‌های عملکردی و امنیتی (جلوگیری از SQL Injection)
  • بهبود مدیریت مموری در اجرای گزارش‌های سنگین

⚠️ هشدارها:

  • نیاز به بازبینی بعضی از گزارش‌های موجود
  • تغییر در الگوی مصرف حافظه هنگام اجرای گزارش‌های سنگین

5. بهینه‌سازی Middleware‌ها و معماری پروژه

🛠️ تغییرات ساختاری:

  • حذف Middleware‌های غیرضروری
  • ساده‌سازی خط لوله (Pipeline) پردازش درخواست‌ها

💡 تأثیرات:

✅ مزایا:

  • کاهش تأخیر در پردازش درخواست‌ها
  • کاهش مصرف منابع CPU و Memory

6. پشتیبانی از سرویس های ذخیره سازی سازگار با S3

☁️ ویژگی‌های جدید:

  • امکان ذخیره‌سازی فایل‌ها در سرویس های ذخیره سازی سازگار با S3 
  • پشتیبانی از آپلود/دانلود مستقیم

⚠️ نکات فنی:

🔒 نیازمندی‌ها:

  • تنظیم credentials و bucket policies
  • پیکربندی region و endpoint مناسب

7. سیستم مانیتورینگ مبتنی بر Grafana

📈 پشته مشاهده‌پذیری:

  • یکپارچه‌سازی با OpenTelemetry
  • پشتیبانی از:
    • Loki (مدیریت لاگ‌ها)
    • Tempo (ردیابی توزیع‌شده)
    • Prometheus (جمع‌آوری متریک‌ها)

⚙️ ملاحظات پیاده‌سازی:

  • نیاز به نصب و راه اندازی سیستم مانیتورینگ 

8. احراز هویت با OTP

📱 قابلیت جدید:

  • امکان ورود با کد یکبارمصرف (OTP) ارسالی به موبایل
  • جایگزین یا مکمل روش‌های موجود احراز هویت

⚠️ نکات مهم:

  • نیاز به سرویس SMS کاوه نگار

🔄 دستورالعمل ارتقاء

🔍 پیش‌نیازها:

  • بروزرسانی Docker به حداقل نسخه 27.4.1
  • بررسی سازگاری افزونه‌ها و سرویس‌های سفارشی

🧪 تست‌های ضروری:

  • تست گزارش‌های موجود
  • تست تمام اینتگریشن‌های خارجی (S3, ELK, RabbitMQ)
  • تست تمام فرآیندهای احراز هویت

📊 مانیتورینگ پس از ارتقاء:

  • مصرف منابع سیستم (CPU, RAM, Disk I/O)
  • عملکرد گزارش‌های سنگین
  • لاگ‌ها و متریک‌ها در محیط مانیتورینگ
  • No labels