مایکروسافت با ارائه نسخه 2016 شیرپوینت ویژگی جدیدی به شیرپوینت به عنوان MinRole اضافه نمود. این امکان به ادمین­‌های شیرپوینت ابزاری می‌دهد تا در شروع طراحی فارم شیرپوینت یا اضافه نمودن سرور به فارم شیرپوینت نقش سرور را در فارم مشخص نمایند تا شیرپوینت به خودی خود سرویس­‌های مورد نیاز سرور مورد نظر را وابسته به نقش آن مدیریت کند. این امکان علارغم سادگی که دارد مزیت‌های بسیار زیادی به ارمغان می‌آورد موارد زیر برخی از این مزیت­‌هاست:

سادگی توسعه

دیگر نیازی به نگرانی در مورد اینکه کدام سرویس باید روی کدام سرور اجرا باشد نیست فقط کافی است به درستی MinRoleهای سرورهای فارم انتخاب شده باشد تا شیرپوینت خود این موارد را کنترل کند و شما می‌توانید روی استفاده از شیرپوینت تمرکز کنید.

ارتقاء سرعت و کارآیی فارم

مایکروسافت با آنالیز کارآیی (Performance) شیرپوینت با عوامل گوناگونی مانند CPU ، Memory ،disk I/O و موارد شبکه­‌ای در سرویس آنلاین خود (آفیس 365) تجارب بسیار زیادی بداست آورده است که با استفاده از این آنالیزها شیرپوینت­‌های 2016 و 2019 را برای کارآیی و انطباق هر چه بیشتر با MinRole ها بهبود داده است. با استفاده از توپولوژی مناسبی از MinRole ها می‌تونید مطمئن از زیرساخت شیرپوینت استفاده نمایید و نگران مشکلاتی مانند تاخیر­های در سطح شبکه، کمبود Memory وCPU و.. نباشید.

سادگی مقیاس پذیری و برنامه ریزی منابع

با استفاده از MinRoleها شما می‌توانید به سادگی با افزایش نیازهای سازمان سرورهای مختلفی با رول­‌های مختلفی به فارم شیرپوینت خود اضافه نمایید چونکه شیرپوینت اکنون سرورهای جدید را خودش در فارم مدیریت میکند و با استفاده از آنها Performance فارم را بهبود میدهد. همچنین با استفاده از MinRoleها Best Practice های بسیاری در زمینه توسعه زیرساخت شیرپوینت وجود دارد که میتوان آنها را به عنوان راهنما استفاده نمود.

MinRole اکنون به صورت اتوماتیک سرویس‌های مورد نیاز فارم شیرپوینت را هر بر روی هر سرور Start یا Stop میکند اکنون در صورت وقوع مشکلی و ریست شدن سرورها نیاز به بررسی استارت شدن سرویس­‌ها نیست در صورت وقوع مشکل بررسی کلی MinRole میتوان مشکلات را رصد نمود. همچنین در صورتی که سرویس اپلیکیشن خاصی در شیرپوینت استفاده نشده باشد سرویس آن نیز در سرورها روشن نخواهد شد تا منابع سرورها به هدر نرود. همچنین معماری این سرویس­‌ها به نحوی طراحی شده است که بهترین حالت ارتباطات بین سرویس‌ها برقرار باشد تا نیاز به کوئری خارج از سرور و ایجاد Latency برای پاسخ نباشد.

انواع MinRoleها به شرح زیر است

  • Front-end

این رول در واقع اصلی ترین رول فارم است که به میزبانی سایت‌­های شیرپوینت می­‌پردازد و وظیفه پاسخ به درخواست کاربران نهایی را دارد و تمامی ترافیک دریافتی از کاربر به سمت این سرور و ارسالی به کاربر از سمت این سرور می‌باشد. این رول برای Performance بسیار بالا بهبود داده شده است.

  • Application

سرویس‌­هایی مانند هوش تجاری و به صورت کلی سرویس­های Back-End روی این سرور میزبانی می‌شوند. در واقع سرویس‌­هایی با پردازش بیشتر روی این سرور میزبانی می‌شود تا با استفاده از Front-end بتوان درخواست کاربر را دریافت و با این رول پردازش و سپس با استفاده مجدد از Front-end به کاربر پاسخ داد. این رول برای توان عملیاتی (throughput) بسیار بالا بهبود داده شده است.

  • Distributed Cache

همانطور که از نام این رول نیز مشخص است Distributed Cache برای سرعت هر چه بیشتر دریافت اطلاعات برای وب سرور اطلاعاتی را در Memory کش میکنند تا نیاز به کوئری از دیتابیس به حداقل برسند وجود حداقل یک سرور از این رول در فارم الزامی است برای فارم­‌هایی که بزرگ­تر می‌شوند باید این تعداد متناسب با نیاز بیشتر شود.

  • Search

در صورت استفاده از سرویس سرچ شیرپوینت که سرویس بسیار پرکاربرد و پیشرفته­ای است نیاز به استفاده از یک رول Search جهت میزبانی کامپوننت‌­های سرچ و سرویس دهی به فارم می‌باشد.

شیرپوینت MinRole

MinRole های دیگری نیز وجود دارند مانند Front-end with Distributed Cache و Application with Search که از تلفیق دو رول اصلی میباشند یا Single-Server Farm که برای محیط های توسعه و تست می‌باشد و یا Custom جهت طراحی توپولوژی های کاملا خاص استفاده می‌شود.