关于scale Groups的概念,在看Dynamics crm online的时候,一直不理解缩放组scale group的概念,后来查到GP也在用这个概念,想想不就是动态扩展嘛,马上顿悟了,原来如些。

From : https://community.dynamics.com/gp/b/dynamicsgp/posts/scale-groups-for-the-web-client

Scale Groups are a very interesting feature for the Web Client. Though the idea for its creation came to fill in a need for our partners hosting the Web Client, it does have practical application in On Premise installations as well.

In its simplest sense, it is a mechanism to affect the routing to a specific Session Host or group of Session Hosts. It has a one to many relationship with both Session Hosts and Tenants.

When Web Client was initially released, it was not uncommon to see the following environment:

With this environment, you would set up the location of the Dynamics GP client in Tenant Services that would be deployed to each Session Host. This worked perfectly fine until you needed more than 51 Dynamics GP clients. Once more than 51 Dynamics GP clients were needed, this model no longer was viable. The environment then needed to change to this:

As you can see, a second Web Server needed to be spun up to handle the next 51 GP Clients. This creates some very challenging scenarios for the administrators when troubleshooting multiple deployment environments.

This is the design challenge that is overcome with Scale Groups for the Web Client. The multiple environment above can now be designed as:

One functional change was made to validation of the user entered on the Logon.aspx page. The Authorize() method is now called from the Web Server versus the Session Host. This will allow for the user to be routed to the correct Session Host when it comes time to create a session.

When it comes to setup for Scale Groups, this is all done through PowerShell. This includes the creation of a Scale Group, defining the relationship between a Scale Group and a Tenant, defining the relationship between a Scale Group and Session Host, and everything in between. To this end, a GP PowerShell application has been created and can be deployed from the media. It does have a requirement that PowerShell 3.0 be deployed before it can be installed.

With the GP PowerShell application, 17 cmdlets have been created to help. Here is the list of those cmdlets:

  • Scale Group PowerShell cmdlets

    • Get-GPScaleGroup
    • New-GPScaleGroup
    • Update-GPScaleGroup
    • Remove-GPScaleGroup
  • Session Host PowerShell cmdlets
    • Get-GPSessionHost
    • Update-GPSessionHost
    • Remove-GPSessionHost
  • Scale Group \ Tenant PowerShell cmdlets
    • Get-GPScaleGroupTenant
    • Add-GPScaleGroupTenant
    • Update-GPScaleGroupTenant
    • Remove-GPScaleGroupTenant
  • Session Host \ Tenant PowerShell cmdlets
    • Get-GPSessionHostTenant
    • Update-GPSessionHostTenant
  • Miscellaneous PowerShell cmdlets
  • Get-GPSessions
  • Get-GPSessionCentralAddress
  • Set-GPSessionCentralAddress
  • Get-GPWebClientVersion

Information on the intent of each cmdlet and its syntax (including the required and optional parameters) can be found by running a Get-Help.  For example, you could run Get-Help Remove-GPScaleGroup and the following result would be displayed:\

With all of this information, hosting partners will likely leverage this feature in their deployments. It allows you to create a more customized environment where the needs of a customer can be tailored to their situation. An example of this would be two tenants (Tenant A and Tenant B) are part of the same Scale Group (Scale Group 1). Tenant A is heavily using the system and because of this usage, Tenant B is seeing performance issues. You can move Tenant B to another Scale Group (which would be a different Session Host than what they were using in Scale Group 1) to help rectify the situation.

Lastly, I discussed that this can be used in an On Premise environment. I have seen customer set up a multitenant environment for a number of reasons. It could be:

  1. There are multiple reports.dic
  2. There are multiple product configurations that need to be in place within the Dynamics.set
  3. A training environment is set up so that a user can become familiar with the systems and with the data without negatively affecting that data when practicing
  4. A development\test environment has been set up

For #1 and #2, each tenant can only specify one Dynamics.set and one Dex.ini. With multiple reports.dic, each unique Dynamics.set in which the path to the reports.dic resides would need to be its own tenant.

It is with #3 and #4 where Scale Groups would have an impact. You could have your production environment on one scale group with it set of Session Hosts and your development\test\training environment on another scale group with its set of Session Hosts. Since a Session Host can only belong to one Scale Group, the actions performed on the development\test\training environment won't adversely affect the performance of production.

Though this feature may not fit every scenario where Web Client is installed, it is good to understand the flexibility that Tenant Services and Scale Groups provides so that your environment can be designed to take advantage of the features if a future need dictates its usage.

Dynmaics 365 scale group的更多相关文章

  1. 【原创】打造基于Dapper的数据访问层

    [原创]打造基于Dapper的数据访问层   前言 闲来无事,花几天功夫将之前项目里用到的一个数据访问层整理了出来.实现单个实体的增删改查,可执行存储过程,可输出返回参数,查询结果集可根据实际情况返回 ...

  2. (视频) 《快速创建网站》2.1 在Azure上创建网站及网站运行机制

    现在让我们开始一天的建站之旅. 本文是<快速创建网站>系列的第2篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http:// ...

  3. IOS第18天(9,核心动画-动画组)

    ****动画组 // 核心动画都是假象,不能改变layer的真实属性的值// 展示的位置和实际的位置不同.实际位置永远在最开始位置 #import "HMViewController.h&q ...

  4. 简单又炫酷的two.js 二维动画教程

      前  言 S     N 今天呢给大家介绍一个小js框架,Two.JS.其实在自己学习的过程中并没有找到合适的教程,所以我这种学习延迟的同学是有一定难度的,然后准备给大家整理一份,简单易懂的小教程 ...

  5. two.js之实现动画效果

    一.什么是two.js? Two.js 是面向现代 Web 浏览器的一个二维绘图 API.Two.js 可以用于多个场合:SVG,Canvas 和 WebGL,旨在使平面形状和动画的创建更方便,更简洁 ...

  6. nginx时间设置解析函数

    https://trac.nginx.org/nginx/browser/nginx/src/core/ngx_parse.c /* * Copyright (C) Igor Sysoev * Cop ...

  7. (视频)《快速创建网站》2.1 在Azure上创建网站及网站运行机制

    现在让我们开始一天的建站之旅. 本文是<快速创建网站>系列的第2篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 1. 网站管理平台WordPress和 ...

  8. WPF编程,通过Double Animation同时动态缩放和旋转控件的一种方法。

    原文:WPF编程,通过Double Animation同时动态缩放和旋转控件的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_4330793 ...

  9. 使用 HTML5, javascript, webrtc, websockets, Jetty 和 OpenCV 实现基于 Web 的人脸识别

    这是一篇国外的文章,介绍如何通过 WebRTC.OpenCV 和 WebSocket 技术实现在 Web 浏览器上的人脸识别,架构在 Jetty 之上. 实现的效果包括: 还能识别眼睛 人脸识别的核心 ...

随机推荐

  1. python 如何判断一组数据是否符合正态分布

    正态分布: 若随机变量x服从有个数学期望为μ,方差为σ2 的正态分布,记为N(μ,σ) 其中期望值决定密度函数的位置,标准差决定分布的幅度,当υ=0,σ=0 时的正态分布是标准正态分布 判断方法有画图 ...

  2. HDU 2157 How many ways?? 题解

    题目 春天到了, HDU校园里开满了花, 姹紫嫣红, 非常美丽. 葱头是个爱花的人, 看着校花校草竞相开放, 漫步校园, 心情也变得舒畅. 为了多看看这迷人的校园, 葱头决定, 每次上课都走不同的路线 ...

  3. Linux使用pyinstaller 编译py成可执行程序

    0x00 pyinstall 安装 命令行pip install pyinstaller安装 0x01 编译时使用命令pyinstaller -F -w  /root/pyfile/图片GPS位置获取 ...

  4. 脱壳实践之寻找OEP——两次内存断点法

      0x00 前言 对于加壳程序第一件事就是要找到OEP(oringinal Entry point),由于加壳的缘故,当PE文件载入OD或者其他调试软件时进入的的往往是壳程序的入口地址.所以要进行逆 ...

  5. AMAP-TECH算法大赛开赛!基于车载视频图像的动态路况分析

    阿里巴巴高德地图AMAP-TECH算法大赛于7月8日开启初赛,赛题为「基于车载视频图像的动态路况分析」,活动邀请了业界权威专家担任评委,优秀选手不仅可以瓜分丰厚的奖金,领取荣誉证书,还有机会进入高德地 ...

  6. nginx极简教程

    Nginx 极简教程 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx. examples 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快 ...

  7. Java图片验证码生成工具

    直接把以下代码拷贝使用: import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;impo ...

  8. DEX文件解析--3、dex文件字符串解析

    一.前言    前两篇文章链接:     1.DEX文件头解析     2.DEX文件校验和解析    PS:前几天检查文件夹的时候发现DEX文件解析还只写了开头,正好找点事情来做,就去接着解析DEX ...

  9. Go Pentester - TCP Scanner

    Simple Port Scanner with Golang Use Go‘s net package: net.Dial(network, address string) package main ...

  10. Linux find 查找 并删除文件 杀掉进程

    find 默认在当前 即 . 目录下查找 du 文件名 / 目录 # 查看文件占用内存大小 1. 按照文件名查找 find / -name qwe # qwe为文件名 find / -name *qw ...