هدف کلی
پیادهسازی یک **میکروسرویس مدیریت مقالات** با استفاده از زبان **Go (Golang)** و پایگاه داده **MySQL**، شامل:
- پنل مدیریت (Admin Panel) برای ورود و مدیریت مقالات
- ذخیرهسازی دادههای مقاله، دستهبندی، نویسنده و تگها
- ارائه API برای نمایش دادهها به فرانتاند (Frontend)
معماری سیستم (System Architecture)
| لایه | فناوری |
|------|--------|
| زبان برنامهنویسی | Go (Golang) |
| پایگاه داده | MySQL 8.0+ |
| معماری | میکروسرویس (Microservices) |
| ارتباط با فرانتاند | REST API (JSON) |
| مدیریت فایلها | آپلود تصویر (فایلها در سیستم فایل یا S3) |
| احراز هویت | (اختیاری: در آینده، اما در این مرحله فقط مدیریت مقالات بدون احراز هویت) |
نکته: این میکروسرویس مستقل است و میتواند در یک سرویس جداگانه (مثلاً `article-service`) اجرا شود.
---
ساختار دادهها (Database Schema - MySQL)
(دستهبندیها)
| شناسه منحصر به فرد |
نام دسته (مثلاً "فناوری") |
| slug | دسته (مثلاً `technology`) |
| توضیحات کوتاه دسته |
| مسیر تصویر دسته (مثلاً `/uploads/categories/123.jpg`) |
| زمان ایجاد |
| زمان آخرین ویرایش |
--
(نویسندگان)
| شناسه منحصر به فرد |
| نام نویسنده |
| شهروندی |
بیوگرافی (محتوای متنی) |
| تصویر نویسنده |
| لینک تلگرام |
| لینک واتساپ |
email