تاریخ و تکامل
منشأ تایتان ها: کشف لو در پشت حمله به موجودات تایتان
Table of Contents
درک Directus
Directus یک CMS بدون منبع باز و پلت فرم داده است که در بالای هر پایگاه داده SQL قرار دارد، بلافاصله یک لایه API انعطاف پذیر و یک برنامه مدیریت شهودی را ارائه می دهد، بر خلاف CMS های سنتی که ساختار داده های شما را دیکته می کنند، Directus Introspects پایگاه داده موجود خود را و ایجاد یک رابط پویا و کاملا قابل تنظیم است.این رویکرد اجازه می دهد تا توسعه دهندگان و تیم های محتوا با داده های خود در وبلاگ های پیچیده کار کنند.
در هسته آن، Directus مفهوم "داده های ناخواسته" را در بر می گیرد، این یک طرح پیش فرض، سیستم مهاجرت یا ذخیره سازی فایل اختصاصی را اجرا نمی کند، بلکه به دولت فعلی پایگاه داده شما احترام می گذارد، چه با یک طرح خالی یا یک پایگاه داده تولید موجود شروع کنید. این فلسفه آن را یک دوست ایده آل برای پذیرش تدریجی می کند، به تیم ها اجازه می دهد تا یک سیستم های مدرن را بدون اصلاحات، ادغام کنند.
ویژگی های کلیدی که Directus Stand Out را می سازند
Directus مجموعه ای غنی از قابلیت های طراحی شده برای ساده سازی مدیریت محتوا و سرعت بخشیدن به توسعه برنامه را تنظیم می کند، مجموعه ویژگی آن به طور عمدی ماژولار است، به تیم ها آزادی می دهد تا تنها از آنچه که نیاز دارند استفاده کنند.
- رویکرد پایگاه داده اول: Directus اطلاعات شما را به خود متصل نمی کند.این به پایگاه داده موجود SQL شما (MySQL، PostgreSQL، SQLite و غیره) متصل می شود و به طور خودکار یک API و پنل مدیریت مربوطه ایجاد می کند، به این معنی که شما کنترل کامل بر داده های خود را حفظ می کنید، می توانید از ابزارهای مهاجرت خود استفاده کنید و می توانید پایگاه داده را به طور مستقیم بدون شکستن CMS جستجو کنید.
- REST و GraphQL APIs: به محض اینکه یک جدول پایگاه داده شناسایی شود، Directus فوراً هر دو REST و GraphQL را ایجاد می کند، این API ها از مجوزهای ریز دانه ای، فیلترینگ، مرتب سازی، دزدی و جمع آوری ارتباط عمیق پشتیبانی می کنند. API GraphQL به ویژه برای برنامه های frontend که نیاز به پرس و جو دقیق داده دارند، قدرتمند است.
- برنامه مدیریتی بسیار سفارشی: پانل مدیریت با Vue.js ساخته شده و کاملاً برچسب دار است.شما می توانید نام تجاری، اصلاح طرح صفحه، ایجاد دیدگاه های سفارشی و اضافه کردن صفحات کنترل دسترسی مبتنی بر نقش (RBAC) را سفارشی کنید تا شما را به تعریف آنچه که هر نقش کاربر می تواند ببیند و انجام دهد، به سطح زمینه اضافه کنید.
- اعتبار و امنیت: Directus از طیف وسیعی از ارائه دهندگان حقیقت از جمله ایمیل / رمز عبور محلی، گوگل، فیس بوک، توییتر، GitHub و SSO از طریق OpenID Connect پشتیبانی می کند، همچنین دو تاییدیه، سفید کننده IP و یک سیستم مجوز جامع را ارائه می دهد که به نقش های تعریف شده کاربر شما مرتبط است.
- مدیریت فایل و رسانه: یک مدیر دارایی دیجیتال چند منظوره به شما اجازه آپلود، محصول و سازماندهی فایل ها را می دهد، شامل تغییرات تصویر پرواز شده و می تواند دارایی ها را در دیسک محلی، S3 یا دیگر آداپتورهای ذخیره سازی ابری ذخیره کند.این برای سیستم عامل های ناوگان حیاتی است که در آن شما ممکن است هزاران عکس یا اسناد بازرسی خودرو را مدیریت کنید.
- قابلیت استفاده از افزونه ها: این پلت فرم از رابط های سفارشی، نمایش، چیدمان، پانل ها، قلاب ها و نقاط انتهایی پشتیبانی می کند. توسعه دهندگان می توانند افزونه های خود را به عنوان بسته های npm منتشر کنند یا آنها را به طور خاص پروژه نگه دارند.این اکوسیستم به شما اجازه می دهد تا تجربه Directus را دقیقا به دامنه خود، چه تدارکات، مراقبت های بهداشتی و یا تجارت الکترونیک.
معماری عمیق Dive: چگونه Directus کار می کند
در زیر کاپوت، Directus از یک سرور API (core) و یک برنامه مدیریت مشتری جدا شده تشکیل شده است، هر دو منبع باز تحت مجوز BSL و GPL هستند، با یک نسخه پشتیبانی تجاری در دسترس است، هنگامی که شما Directus را در یک پایگاه داده قرار می دهید، جداول و ستون ها را تجزیه و تحلیل می کند، تشخیص انواع داده ها، روابط و محدودیت ها، سپس یک لایه متاداده شده است که هر مجموعه ذخیره سازی اختصاصی را در یک مجموعه داده های ذخیره می کند.
لایه Abstraction Layer
هنگامی که پایگاه داده در هم تنیده شده است، Directus یک نمایندگی مجازی از داده های شما ایجاد می کند.شما می توانید جداول را به "سرنوشت ها" تغییر دهید، ستون های حساس را پنهان کنید و برچسب ها و توصیف های زمینه را تنظیم کنید - همه بدون تغییر طرح SQL اساسی SQL، این انتزاع صرفاً آرایشی و عملکردی در CMS است؛ پایگاه داده ها هنوز دست نخورده و به طور کامل از هر مشتری یا ابزار کاربردی استفاده می کنند، به این معنی است که تمام فایل های مستقیم می تواند به کار خود ادامه دهد و هماهنگی داده ها را در حالی که به کار می دهد.
نسل API و Caching
Directus به طور خودکار OpenAPI و GraphQL را از متادیتا ایجاد می کند.هر مجموعه نقاط انتهایی خود را (GET، POST، PATCH، DELETE) با پارامترهای جستجو که به عملیات SQL اساسی، از جمله توابع تجمع، پیوست های رابطه ای و زمینه های محاسبه شده، شامل لایه های کاتتر سازی داخلی و پشتیبانی از Red API برای حفظ پاسخ سریع حتی ویژگی های بار سنگین برای ردیابی هزاران رکورد ضروری است.
به روز رسانی زمان واقعی از طریق WebSockets
برای برنامه هایی که نیاز به به به روز رسانی داده های زنده دارند، Directus یک رابط WebSocket را ارائه می دهد. اشتراک می تواند به صورت جمع آوری تنظیم شود، به مشتریان جلویی اجازه می دهد تا اطلاعیه های فوری را در هنگام تغییرات داده دریافت کنند.این برای سیستم های ردیابی ناوگان که در آن محل یا وضعیت وسیله نقلیه باید به داشبورد در زمان واقعی منتقل شود، ارزشمند است.
Directus در مقایسه با دیگر پلتفرم های CMS
برای قدردانی از جایگاه Directus در اکوسیستم، به کنتراست آن با گزینه های مشترک کمک می کند.
مستقیم در مقابل.
هر دو CMS های بی سر بر روی Node.js ساخته شده اند، اما تفاوت اساسی در فلسفه پایگاه داده است.ق.تی دارای ساختار پایگاه داده، اداره مهاجرت و تعاریف طرح است. Directus، از سوی دیگر، پایگاه داده موجود شما را منعکس می کند، اگر شما قبلا یک پایگاه داده مدیریت ناوگان پیچیده با صدها جدول دارید و می خواهید یک لایه CMS را بدون تغییر دادن که طرح مستقیم، تعریف می کند، گزینه های خوشحال است که شما را از طریق داده های پاک کنید.
مستقیم در مقابل هاهاورا
Hasura یک موتور گرافQL است که همچنین یک پایگاه داده را درون خود قرار می دهد و یک API GraphQL را افشا می کند، با این حال، Hasura یک CMS نیست؛ زیرا برنامه هایی که نیاز به یک پنل اختصاصی برای ویرایشگر محتوا دارند، Directus هر دو API و یک رابط کامل را فراهم می کند، تکمیل شده با RBAC، مدیریت رسانه ها و یک تجربه کاربر انعطاف پذیر است که نیاز به یک مدیر عامل غیر مستقیم دارد - به روز رسانی بیشتر - به روز رسانی عملیات کاربر دارد.
Directus vs. WordPress (به عنوان CMS بدون سر)
وردپرس را می توان به طور کامل از طریق REST API استفاده کرد، اما همچنان به طرح داده خود و مفهوم "post" خود متصل است. Directus بدون هیچ گونه مفاهیمی، آن را به مراتب سازگار تر با سایت های غیر محتوایی است.اگر پروژه شما نیاز به مدیریت موجودی، داده های سنسور، یا هر نهاد سفارشی، Directus یک تناسب طبیعی تر بدون سربار از نظر وردپرس فراهم می کند.
مدیریت ناوگان جهانی واقعی از موارد استفاده می کند
"مقاله مستقیم" اغلب در تقاطع مدیریت محتوا و داده های عملیاتی قرار دارد. ناوگان ها مقدار زیادی از اطلاعات را تولید می کنند - تله بیضه، اسناد تعمیر و نگهداری، اسناد راننده، اسناد بیمه، تکالیف مسیر و گزارش های انطباق. Directus می تواند به عنوان پلت فرم داده یکپارچه برای مدیریت همه این کار خدمت کند.
- راننده و مشخصات خودرو: از Directus برای مدل سازی جزئیات خودرو، گواهینامه راننده، مجوز های انقضای و واحدهای اختصاص داده شده استفاده کنید. پنل admin به ارسال کنندگان اجازه می دهد تا وضعیت ها را به روز کنند، عکس های بازرسی آپلود کنند و هشدارهای را از طریق قلاب ها ایجاد کنند.
- گزارش حوادث: یک مجموعه سفارشی برای حوادث می تواند زمان بندی، مختصات GPS، توصیف آسیب و پشتیبانی از تصاویر را با API، یک برنامه تلفن همراه می تواند گزارش ها را به طور مستقیم ارسال کند و برنامه مدیریت می تواند به عنوان یک رابط بررسی برای افسران انطباق خدمت کند.
- تعمیر و نگهداری Scheduling : یک مجموعه تعمیر و نگهداری مرتبط با وسایل نقلیه ایجاد کنید. مشاغل cron یا محرک های خارجی را تنظیم کنید که Directus API را برای شناسایی وسایل نقلیه به دلیل خدمات و یادآوری ایمیل به طور خودکار به تیم مسئول جستجو می کنند.
- مستند دیجیتال Repository: مدیر رسانه ها قراردادها، سیاست های بیمه و فرم های انطباق را سازماندهی می کند. مجوزهای Directus اطمینان حاصل می کند که رانندگان فقط می توانند به اسناد خود دسترسی داشته باشند، در حالی که حسابرسان دسترسی گسترده تری دارند.
- ادغام داشبورد زمان واقعی: با ترکیب API GraphQL با یک کتابخانه جلویی مانند Nuxt.js یا Next.js، می توانید یک داشبورد ناوگان در زمان واقعی ایجاد کنید که مکان های خودرو را در یک نقشه، هشدار های اخیر و معیارهای عملکرد کلیدی نشان می دهد. Directus از داده های تازه بدون بارگذاری صفحه پشتیبانی می کند.
از آنجا که Directus مستقیماً در پایگاه داده عملیاتی شما قرار دارد، این موارد نیاز به تکثیر یا همگام سازی داده ها به یک فروشگاه CMS جداگانه ندارند که پیچیدگی و تاخیر را کاهش می دهد، مزیت بزرگی برای عملیات ناوگان حساس به زمان است.
شروع کار: راه اندازی یک پروژه Directus
نصب Directus می تواند در عرض چند دقیقه انجام شود.این روش توصیه شده برای استفاده از تصویر رسمی CLI یا Docker است.برای یک شرکت ناوگان که به دنبال نمونه اولیه است، یک راه اندازی Docker Compose با Directus و یک ظرف PostgreSQL سریعترین مسیر است.
- تصویر Docker را بکشید: در ادامه بخوانید: دانلود بازی اندروید با نام The Last نسخه
- ایجاد یک فایل Compose خدمات را برای Directus و پورتفولک های ترجیحی پایگاه داده خود تعریف کنید.برنامه های محیط مانند ADMIN EMAIL، ADMIN PASS Word، SECRET و اعتبار پایگاه داده.
- راه اندازی Stack: هر دو کانتینر را شروع می کند. Directus به طور خودکار در اولین اجرا، ایجاد جداول سیستم لازم در پایگاه داده خود را.
- دسترسی به برنامه Admin: به سمت چپ بروید و با استفاده از آن به صورت مستقیم به آن ها مراجعه کنید.
- یک پایگاه داده موجود را به هم متصل کنید: اگر شما در حال حاضر یک پایگاه داده ناوگان دارید، Directus را با به روز رسانی متغیرهای محیط زیست DB * به آن اشاره کنید، پس از شروع مجدد، پنل admin تمام جداول خود را به عنوان مجموعه نمایش می دهد.شما سپس می توانید برچسب های فیلد، روابط و مجوزها را پیکربندی کنید.
گسترش Directus به Fit Yourعملیات
قدرت واقعی Directus قابلیت آن است. افزونه های سفارشی اجازه می دهد تا پلت فرم را به منطق کسب و کار خاص خود بدون استفاده از هسته قالب بندی کنید.این در مدیریت ناوگان بسیار مهم است، جایی که گردش کار اغلب شامل خدمات خارجی مانند API های آب و هوا، بازآفرینی خودرو دولتی یا VINrs است.
ساخت رابط های سفارشی و نمایش ها
رابط ها تعریف می کنند که چگونه یک زمینه ویرایش شده است (به عنوان مثال، یک انتخاب کننده تاریخ، یک نقشه انتخاب کننده برای مختصات GPS) نشان می دهد که چگونه یک زمینه در دیدگاه های خواندنی تنها ارائه شده است، شما می توانید یک رابط سفارشی "Vehicle Status" ایجاد کنید که نشان می دهد یک نشان رنگی کد شده است، یا یک صفحه نمایش "Route Optimizer" که یک API خارجی را به تصویر کردن این افزونه های Vjs و فایل های ثبت شده دعوت می کند.
ایجاد وب سایت های قلاب و Event Hooks
Directus یک سیستم قلابی را فراهم می کند که منطق را در مورد رویدادهایی مانند ایجاد آیتم، به روز رسانی یا حذف ایجاد می کند، به عنوان مثال، هنگامی که یک رکورد تعمیر و نگهداری جدید ایجاد می شود، یک قلاب می تواند به طور خودکار یک اطلاع رسانی به مکانیک اختصاص داده شده به آن وسیله نقلیه ارسال کند. Webhooks می تواند در سطح جهانی پیکربندی شده یا به هر مجموعه ای از پنل admin، امکان ادغام با Zapier، Slack، Slack، Slack، Slack، Slack، Slack، Slack یا یک سرویس سفارشی بدون نوشتن کد وسط سرور.
ویژگی های Custom API Endpoint
اگر REST یا API های GraphQL نیاز خاصی را پوشش نمی دهند، می توانید نقاط انتهایی سفارشی را به سرور Directus اضافه کنید، این نقاط انتهایی دسترسی کامل به پایگاه داده، زمینه تأیید اعتبار و خدمات اصلی دارند.یک برنامه ناوگان ممکن است نقطه پایانی را که کل مصرف سوخت را در یک محدوده تاریخ جمع می کند، نشان دهد، انجام SQL های پیچیده که به راحتی در جستجوی عمومی API بیان نمی شوند.
مدل امنیتی Directus برای داده های ناوگان حساس
مدیریت ناوگان شامل اطلاعات شخصی حساس ( مجوزهای محرک، شماره تلفن، مکان) و اطلاعات محرمانه کسب و کار (قراردادها، مسیرها) سیستم اجازه دانه های مستقیم ما تضمین می کند که تنها کاربران مجاز به دسترسی به داده های مناسب هستند - شما نقش های مشخص مانند "Driver"، "Dispatcher"، "مدیر"، و "Auditor" را تعریف می کنند و سپس اجازه می دهند تا هر مجموعه ای از قوانین امنیتی شخصی استفاده کنند.
بهینه سازی عملکرد برای داده های با حجم بالا
اگر پایگاه داده ناوگان شما دارای میلیون ها رکورد تله متری باشد، عملکرد به طور عمده ای می شود. Directus به شما اجازه می دهد تا شاخص های پایگاه داده را به طور مستقیم اضافه کنید (از آنجا که این پایگاه داده ها را ندارد)، و API از آن شاخص ها برای سرعت بالا بردن پرس و جوها استفاده می کند، بدون اینکه اطلاعات مستقیم را بخواند، و فقط به صورت افقی از سرور Node.js استفاده کند.
جامعه مستقیم و اکوسیستم
Directus از یک جامعه منبع باز فعال که به افزونه ها، تم ها و طرح ها کمک می کند، بهره می برد. بحث های GitHub هیئت مدیره و Directus Discord server مکان های عالی برای کمک یا به اشتراک گذاشتن داستان های اجرای ناوگان خود هستند.تیم اصلی دارای کامل کامل است. مستند مستند مستند مستند این شامل هر جنبه ای از پلت فرم، از نصب تا توسعه سفارشی گسترش. Cloud یک گزینه میزبانی مدیریت شده را ارائه می دهد که مقیاس پذیری، پشتیبان گیری و به روز رسانی را کنترل می کند، تیم خود را از نگرانی های زیربنایی آزاد می کند.
آینده-تأخر کردن اطلاعات ناوگان شما
انتخاب Directus به این معنی است که شما عملیات ناوگان بحرانی خود را به یک اکوسیستم اختصاصی قفل نمی کنید، زیرا داده های شما در یک پایگاه داده استاندارد SQL قرار دارد، شما قدرت کامل SQL را برای گزارش، فرآیندهای ETL و ادغام با ابزارهای BI مانند Metabase یا Power BI حفظ می کنید، اگر شما تصمیم به مهاجرت از Directus، مدل داده ها و تمام یکپارچگی آن باقی مانده است، با قفل کردن ماشین آلات و سیستم عامل های مستقیم، به جای اینکه شما در آن، به عنوان یک سیستم پردازش اطلاعات دقیق پردازش داده های پردازش داده های پردازش داده های پردازش های پردازش های پردازش داده های اتوماسیون و پردازش می شود، تنظیم شده با استفاده کنید، به جای آن، تنظیم کننده و پردازش داده های نرم افزار پردازش داده های اتوماسیون، به جای آن، به جای آن، با استفاده از طریق پردازش های نرم افزار پردازش اطلاعات دقیق و پردازش های نرم افزار پردازش های نرم افزار پردازش های اتوماسیون، تنظیم کننده و پردازش های اتوماسیون، تنظیم کننده و پردازش داده های قدرتمند، تنظیم کننده و پردازش های پردازش های اتوماسیون، تنظیم کننده و پردازش های پردازش های اتوماسیون، تنظیم کننده، به جای اینکه شما را با استفاده از طریق پردازش های اتوماسیون، تنظیم کننده و پردازش های اتوماسیون، تنظیم کننده و پردازش های اتوماسیون، تنظیم کننده و پردازش های پردازش های قدرتمند، تنظیم