مایکروسافت با ارائه نسخه 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 برای پاسخ نباشد.
این رول در واقع اصلی ترین رول فارم است که به میزبانی سایتهای شیرپوینت میپردازد و وظیفه پاسخ به درخواست کاربران نهایی را دارد و تمامی ترافیک دریافتی از کاربر به سمت این سرور و ارسالی به کاربر از سمت این سرور میباشد. این رول برای Performance بسیار بالا بهبود داده شده است.
سرویسهایی مانند هوش تجاری و به صورت کلی سرویسهای Back-End روی این سرور میزبانی میشوند. در واقع سرویسهایی با پردازش بیشتر روی این سرور میزبانی میشود تا با استفاده از Front-end بتوان درخواست کاربر را دریافت و با این رول پردازش و سپس با استفاده مجدد از Front-end به کاربر پاسخ داد. این رول برای توان عملیاتی (throughput) بسیار بالا بهبود داده شده است.
همانطور که از نام این رول نیز مشخص است Distributed Cache برای سرعت هر چه بیشتر دریافت اطلاعات برای وب سرور اطلاعاتی را در Memory کش میکنند تا نیاز به کوئری از دیتابیس به حداقل برسند وجود حداقل یک سرور از این رول در فارم الزامی است برای فارمهایی که بزرگتر میشوند باید این تعداد متناسب با نیاز بیشتر شود.
در صورت استفاده از سرویس سرچ شیرپوینت که سرویس بسیار پرکاربرد و پیشرفتهای است نیاز به استفاده از یک رول Search جهت میزبانی کامپوننتهای سرچ و سرویس دهی به فارم میباشد.
MinRole های دیگری نیز وجود دارند مانند Front-end with Distributed Cache و Application with Search که از تلفیق دو رول اصلی میباشند یا Single-Server Farm که برای محیط های توسعه و تست میباشد و یا Custom جهت طراحی توپولوژی های کاملا خاص استفاده میشود.