بانک سوالات پروژه‌ی ask-interview

همه پرسش‌ها (674) Grafana (32) Jaeger (29) LXD (32) OpenTelemetry (26) Prometheus (28) ansible (33) apache (33) bash (21) ccna (30) centos (27) ceph (28) devops (34) docker (35) freebsd (30) git (32) kubernetes (26) linux (33) lpic1 (33) lpic2 (29) nginx (20) ubuntu (52) windows-server (31)

❓ چطور می‌تونیم از Nginx برای کش کردن محتوا (Caching) استفاده کنیم؟

برای کش کردن محتوا در Nginx می‌تونیم از ماژول `proxy_cache` استفاده کنیم. اول باید یک دایرکتوری برای ذخیره کش مشخص کنیم و سپس در بلاک سرور یا location مربوطه، گزینه‌های کش مثل `proxy_cache_path` و `proxy_cache` رو اضافه کنیم. این کار به کاهش بار سرور اصلی و افزایش سرعت بارگذاری سایت کمک می‌کنه.

دسته: nginx

❓ چطور می‌تونیم با استفاده از Nginx، SSL را برای دامین‌های مختلف پیکربندی کنیم؟

برای پیکربندی SSL در Nginx برای دامین‌های مختلف، باید در فایل تنظیمات سرور، برای هر دامین یک بلاک سرور جداگانه ایجاد کرده و گواهینامه و کلید خصوصی مربوطه رو برای هر کدام مشخص کنیم. همچنین استفاده از `server_name` برای شناسایی دامین‌های مختلف ضروریه.

دسته: nginx

❓ تفاوت بین Reverse Proxy و Forward Proxy در Nginx چیه؟

Reverse Proxy به سروری اشاره داره که درخواست‌ها رو از مشتریان دریافت می‌کنه و به سرورهای داخلی منتقل می‌کنه، در حالی که Forward Proxy معمولا بین مشتری و اینترنت قرار می‌گیره و درخواست‌ها رو از سمت مشتری منتقل می‌کنه. Nginx به عنوان Reverse Proxy می‌تونه بار ترافیک رو مدیریت کنه و امنیت رو افزایش بده.

دسته: nginx

❓ تفاوت بین Infrastructure as Code و Configuration Management چیه و چه زمانی باید از هرکدوم استفاده کرد؟

Infrastructure as Code (IaC) معماری زیرساخت رو به صورت کد مدیریت می‌کنه، مثل Terraform یا CloudFormation؛ در حالی که Configuration Management ابزارهایی مثل Ansible و Puppet برای تنظیم و مدیریت پیکربندی سرورها استفاده میشه. هنگام طراحی زیرساخت جدید، IaC انتخاب مناسبیه، اما برای تغییرات مداوم پیکربندی، Configuration Management رو باید در نظر بگیرید.

دسته: devops

❓ چطور می‌توان فرآیند CI/CD را بهینه‌سازی کرد تا زمان تحویل نرم‌افزار کاهش پیدا کنه؟

برای بهینه‌سازی CI/CD می‌تونید از تکنیک‌هایی مثل پارالل کردن تست‌ها، کش کردن وابستگی‌ها و استفاده از Docker برای ایجاد محیط‌های تست سریع‌تر استفاده کنید. این کارها می‌تونن زمان ساخت و تست نرم‌افزار رو به شدت کاهش بدن و به چرخه تحویل سریع‌تر کمک کنن.

دسته: devops