چالش یک میلیاردی بهزی: ۱ میلیون تومان پاداش بگیر

بهزی

جزئیات مهاجرت کلودفلر از وردپرس به EmDash

زمان مطالعه 1 دقیقه

جزئیات مهاجرت کلودفلر از وردپرس به EmDash
آرشیو محرمانه بهزی (گلچینی از متفاوت‌ترین مقالات وب)
آرشیو محرمانه بهزی (گلچینی از متفاوت‌ترین مقالات وب)

مقالات بهزی

محتوای آموزشی

مشاهده کسب و کار

کلودفلر به‌تازگی فرآیند انتقال وبلاگ اصلی خود از وردپرس به EmDash (سیستم مدیریت محتوای متن‌بازی که به‌صورت داخلی توسعه یافته است) را مستند کرده است. این پلتفرم جدید با هدف بهبود عملکرد و کشینگ طراحی شده و آزمایش‌های انجام‌شده نشان می‌دهد که قادر به مدیریت ترافیکی تا ۷۰۰۰ درخواست در ثانیه است.

همان‌طور که پیش‌تر در InfoQ گزارش شد، کلودفلر در آوریل گذشته نسخه پیش‌نمایش توسعه‌دهنده (v0.1.0) از EmDash را معرفی کرد؛ یک CMS جدید که با زبان TypeScript نوشته شده و به‌عنوان جانشینی برای وردپرس طراحی شده است.

پیکربندی عملیاتی کلودفلر، EmDash را بر روی یک Worker با لایه‌های کشینگ متعدد اجرا می‌کند که شامل Workers Cache و یک کش آبجکت اختصاصی EmDash است که بر پایه Workers KV ساخته شده است. علاوه بر این، کلودفلر از Cloudflare Hyperdrive برای برقراری اتصال میان EmDash و دیتابیس PlanetScale استفاده می‌کند.

مهاجرت کلودفلر از وردپرس

شرکت، خود را «مشتری شماره صفر» (Customer Zero) برای این سیستم مدیریت محتوای جدید می‌داند؛ چرا که پس از شناسایی محدودیت‌های پلتفرم قبلی، وبلاگ خود را به EmDash منتقل کرده است. تیم فنی می‌گوید که این وبلاگ به‌طور معمول حدود ۷۵ درخواست در ثانیه را مدیریت می‌کند، اما در زمان‌های اوج ترافیک، این عدد به بیش از ۵۰۰۰ درخواست در ثانیه می‌رسد؛ به همین دلیل، عملکرد بارگذاری صفحات اهمیت بسیار بالایی دارد.

به گفته «کودی جکسون» (Kody Jackson)، مدیر ارشد مهندسی محتوا، «دیوگو کارنیرو» (Diogo Carneiro)، مهندس سیستم‌ها، و «ایمی داتون» (Amy Dutton)، مهندس ارشد طراحی در کلودفلر، این مهاجرت منجر به ایجاد سایتی سریع‌تر و قابل‌اطمینان‌تر شده است.

مهاجرت کلودفلر از وردپرس

مقایسه شاخص تأخیر پاسخ p95 میان معماری قدیمی (خط سبز) و ساختار جدید EmDash (خط زرد)، تفاوت فاحشی را نشان داد. در حالی که پلتفرم قبلی تحت بار کاری، دچار جهش‌های دوره‌ای در تأخیر می‌شد، سیستم جدید پروفایل پاسخ‌دهی به‌مراتب مسطح‌تر و پایدارتری را حفظ می‌کند. با اجرای EmDash بر روی Cloudflare Workers، در کنار لایه‌های کشینگ (حافظه پنهان) جدیدمان، موفق شده‌ایم تجربه‌ٔ مطالعه‌ای به‌مراتب سریع‌تر و با کارایی بالاتر در تمامی بخش‌ها ارائه دهیم.

کلودفلر از یک «پراکسی ورکر» (Proxy Worker) برای هدایت تدریجی ترافیک از وردپرس به EmDash استفاده کرد که در صورت بروز خطا، به‌طور خودکار به سایت قدیمی بازمی‌گشت. فرآیند استقرار با ۱ درصد از ترافیک آغاز شد و همزمان با اعتبارسنجی پلتفرم جدید توسط تیم، به‌تدریج افزایش یافت و تنها در طول یک روز به ۱۰۰ درصد رسید. جکسون، کارنیرو و داتون می‌افزایند:
ما یک «پراکسی ورکر» (Proxy Worker) مستقر کردیم تا ترافیک را به‌طور هوشمندانه میان وبلاگ قدیمی و سایت جدیدِ مبتنی‌بر EmDash هدایت کنیم. این ورکر روی درخواست‌ها یک «کوکی نسخه» (version cookie) تنظیم می‌کرد که به ما اجازه می‌داد ترافیک ورودی را به‌تناسب، به سمت تجربه جدید یا قدیمی هدایت کنیم. به‌علاوه، این استراتژی به ما این امکان را می‌داد که در صورت بروز هرگونه خطای ۵۰۰ (500 errors) در سایت جدید، به‌صورت خودکار به وبلاگ قدیمی بازگردیم (Fall back).

تمرکز بحث‌ها در ردیت بر روی استراتژی مهاجرت است؛ جایی که یکی از کاربران به «پراکسی ورکر»، «مسیریابی مبتنی بر کوکی» و «مکانیزم بازگشت» اشاره کرده است:

بخش «پراکسی ورکر» با قابلیت «بدون وقفه» (zero-downtime) به همراه «مسیریابی مبتنی بر کوکی»، همان چیزی است که اکثر تیم‌ها اهمیت آن را دست‌کم می‌گیرند. یک برنامه استقرار (rollout) خوب معمولاً نیازمند یک «کلید قطع اضطراری» (kill switch)، مکانیزم «بازگشت به حالت قبل» (fallback) برای هر درخواست، و معیارهایی است که بر اساس گروه‌های کاربری (cohort) تفکیک شده باشند؛ تا بتوانید پیش از آنکه ۱ درصد ترافیک به ۱۰۰ درصد برسد، مشکلات احتمالی در کشینگ (cache regressions) را شناسایی کنید.

این مهاجرت همچنین دسترسی را برای عامل‌های هوش مصنوعی (AI agents) بهبود بخشیده است؛ به این صورت که یک سرور جدید MCP برای «وبلاگ کلودفلر» و یکی دیگر برای EmDash ایجاد شده که به نویسندگان اجازه می‌دهد محتوا را جستجو، ایجاد، ویرایش، منتشر و زمان‌بندی کنند.

در ردیت، کاربری به نام u/themistermeister، پلتفرم EmDash را با Ghost مقایسه کرده و چنین می‌نویسد: هزینهٔ استفاده از EmDash بسیار کمتر است و تعامل‌پذیری آن با هوش مصنوعی به‌مراتب بیشتر. همچنین، این پلتفرم قابلیت توسعه‌پذیری تقریباً نامحدودی دارد و نقشهٔ راه آن بسیار امیدوارکننده است.

طبق این مقاله، ویراستاران با برخی مشکلات اولیه در پذیرش (adoption) سیستم مواجه شدند که عمدتاً مربوط به تجربه ویرایش و پست‌های زمان‌بندی‌شده بود. این موارد به تیم EmDash گزارش شد و کلودفلر می‌گوید که این تیم در حال تلاش برای عرضه نسخه ۱ (v1) است؛ هرچند هنوز تاریخ رسمی برای آن اعلام نشده است.

کارشناس پشتیبانی محتوا - داخلی 225

کارشناس پشتیبانی محتوا - داخلی 225

نویسنده پست

من اپراتور ارشد و نویسنده محتوای تخصصی در بهزی هستم. تمرکز اصلی من تولید مقالات کاربردی و هدفمند در حوزه طراحی سایت، سئو، بهینه‌سازی حضور آنلاین کسب‌وکارها و ثبت مشاغل در گوگل است. برای ارتباط با من می‌توانید با شماره 01391001011 داخلی ۲۲۵ تماس بگیرید.

نظرات و تجربیات شما

دیدگاه شما چیست؟

با ثبت امتیاز خود، به ما در تولید محتوای بهتر کمک کنید.

جزئیات مهاجرت کلودفلر از وردپرس به EmDash | بهزی