PostgreSQL یکی از محبوبترین دیتابیسهای relational برای SaaS، API و اپهای production است. در Weblines Cloud (ابر وبلاینز) نیازی به نصب package، tune کردن postgresql.conf روی VPS، یا backup script دستی برای شروع ندارید — از پنل یک instance میسازید و connection string را به اپ میدهید.
چرا PostgreSQL روی Weblines Cloud؟#
- راهاندازی سریع — چند دقیقه تا status Running
- ایزولاسیون tenant — هر سازمان منابع خود را دارد
- محدودیت منابع enforceشده — CPU/RAM طبق pack انتخابی
- صورتحساب PAYG — مثل اپ، ساعتی از کیف پول کسر میشود
- سازگاری با ORM — Prisma، Drizzle، SQLAlchemy و غیره
توجه: بکاپِ خودکارِ روزانه و بازیابی از پنل فعال است. برای production جدی، یک نسخهی دوم هم بیرون از پلتفرم نگه دارید (مثلاً با
pg_dumpدورهای).
گام ۱ — ساخت دیتابیس#
- وارد پنل شوید → Databases → Create
- نوع PostgreSQL را انتخاب کنید
- pack پیشنهادی برای شروع: DB Small (۱ vCPU، ۲ GB RAM، ۲۰ GB disk)
- نام instance را وارد کنید (مثلاً
main-db)
Create را بزنید. provisioning معمولاً یک تا سه دقیقه طول میکشد.
گام ۲ — دریافت اطلاعات اتصال#
پس از Running شدن، در صفحهٔ detail دیتابیس این موارد را میبینید:
- Host
- Port
- Database name
- Username
- Password (روی کارت با SHOW نمایش داده میشود)
Connection URL معمولاً به شکل زیر است:
postgresql://USER:PASSWORD@HOST:PORT/DATABASE
بهجای کپیِ دستی، دیتابیس را به اپ لینک کنید تا همین مقدار بهصورتِ DATABASE_URL تزریق شود — اتصالِ اپ به دیتابیس. هرگز آن را در ریپو commit نکنید.
گام ۳ — اتصال از اپ#
Node.js (Prisma)#
DATABASE_URL=postgresql://...
npx prisma migrate deploy
Python (SQLAlchemy)#
engine = create_engine(os.environ["DATABASE_URL"])
اپ و دیتابیس باید در همان سازمان باشند تا networking داخلی سادهتر باشد.
pack و هزینه#
دیتابیسها pack جداگانه (DB Micro, DB Small, …) دارند با minimum disk بیشتر از اپ. هزینه ساعتی از کیف پول PAYG کسر میشود. با Stop کردن دیتابیس (در صورت پشتیبانی در پنل)، CPU/RAM متوقف میشود؛ disk تا زمان purge هزینه دارد.
اعتبار ۵۰۰٬۰۰۰ ریال ثبتنام برای تست DB Small چند روزه کافی است. جزئیات نرخ در قیمتگذاری.
امنیت#
- password قوی و unique برای هر environment
- دسترسی public به port دیتابیس را بدون نیاز باز نکنید
- migration را از CI یا اپ انجام دهید، نه دستی روی production بدون backup
مقیاسدهی#
وقتی load زیاد شد:
- pack را به DB Medium ارتقا دهید (نیاز به restart کوتاه ممکن است)
- query و index را profile کنید — فقط scale hardware کافی نیست
- connection pool (PgBouncer یا pool داخل ORM) استفاده کنید
گام بعدی#
PostgreSQL روی Weblines Cloud برای «سریع شروع کن و بعد optimize کن» ساخته شده — نه جایگزین DBA تماموقت، اما جایگزین مناسبی برای نصب دستی روی VPS است.
