Dynmaics 365 scale group
关于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:
- There are multiple reports.dic
- There are multiple product configurations that need to be in place within the Dynamics.set
- 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
- 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的更多相关文章
- 【原创】打造基于Dapper的数据访问层
[原创]打造基于Dapper的数据访问层 前言 闲来无事,花几天功夫将之前项目里用到的一个数据访问层整理了出来.实现单个实体的增删改查,可执行存储过程,可输出返回参数,查询结果集可根据实际情况返回 ...
- (视频) 《快速创建网站》2.1 在Azure上创建网站及网站运行机制
现在让我们开始一天的建站之旅. 本文是<快速创建网站>系列的第2篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http:// ...
- IOS第18天(9,核心动画-动画组)
****动画组 // 核心动画都是假象,不能改变layer的真实属性的值// 展示的位置和实际的位置不同.实际位置永远在最开始位置 #import "HMViewController.h&q ...
- 简单又炫酷的two.js 二维动画教程
前 言 S N 今天呢给大家介绍一个小js框架,Two.JS.其实在自己学习的过程中并没有找到合适的教程,所以我这种学习延迟的同学是有一定难度的,然后准备给大家整理一份,简单易懂的小教程 ...
- two.js之实现动画效果
一.什么是two.js? Two.js 是面向现代 Web 浏览器的一个二维绘图 API.Two.js 可以用于多个场合:SVG,Canvas 和 WebGL,旨在使平面形状和动画的创建更方便,更简洁 ...
- nginx时间设置解析函数
https://trac.nginx.org/nginx/browser/nginx/src/core/ngx_parse.c /* * Copyright (C) Igor Sysoev * Cop ...
- (视频)《快速创建网站》2.1 在Azure上创建网站及网站运行机制
现在让我们开始一天的建站之旅. 本文是<快速创建网站>系列的第2篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 1. 网站管理平台WordPress和 ...
- WPF编程,通过Double Animation同时动态缩放和旋转控件的一种方法。
原文:WPF编程,通过Double Animation同时动态缩放和旋转控件的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_4330793 ...
- 使用 HTML5, javascript, webrtc, websockets, Jetty 和 OpenCV 实现基于 Web 的人脸识别
这是一篇国外的文章,介绍如何通过 WebRTC.OpenCV 和 WebSocket 技术实现在 Web 浏览器上的人脸识别,架构在 Jetty 之上. 实现的效果包括: 还能识别眼睛 人脸识别的核心 ...
随机推荐
- 不懂SpringApplication生命周期事件?那就等于不会Spring Boot嘛
学习方法之少废话:吹牛.装逼.叫大哥. 作者:A哥(YourBatman) 公众号:BAT的乌托邦(ID:BAT-utopia) 文末是否有彩蛋:有 目录 前言 正文 生命周期事件流程图 版本说明: ...
- python入门007
一.深浅copy 浅拷贝:是把原列表第一层的内存地址完全拷贝一份给新列表.即只能保证对原列表中第一层地址(不可变类型)的改操作不受影响,涉及到原列表中第二层地址(可变类型)的改操作时,原列表变,新列表 ...
- Maven 专题(七):常用命令
mvn archetype:generate : 反向生成项目的骨架 mvn clean: 清除各个模块target目录及里面的内容 mvn compile: 静态编译,根据xx.java生成xx.c ...
- pytest框架的安装与使用
pytest框架的安装与使用 一,pytest了解 pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高. ...
- git只操作某个文件夹
在我们的工作中,可能会有这样的情况发生:我只想提交某一个文件夹,而另外的文件夹我并不想提交. 遇到上述情况,我们再git中这样解决: 1.查看某个文件夹的状态(这里我用log文件夹做实验). 我们可以 ...
- web自动化测试实战之批量执行测试用例
01实战之分离测试固件 在UI 自动化测试中,不管编写哪个模块的测试用例,都需要首先在测试类中编写测试固件初始化WebDriver类及打开浏览器,执行登录,才能进行下一步业务逻辑的操作,测试用例执行完 ...
- ArcGIS api for javascript querytask 返回结果上限1000的问题
我用的是ArcServer 10.2,打开ArcCatalog找到自己发布的服务,右键Service Properties,左侧点击Parameters,右侧有一个Maximum number of ...
- Ethical Hacking - NETWORK PENETRATION TESTING(8)
WEP Cracking Basic case Run airdump-ng to log all traffic from the target network. airodump-ng --cha ...
- 直接在x86硬件上显示图片(无os)
1 任务 为了学习计算机底层和os,我给自己布置了一个任务:在x86硬件上,使用c和nasm来显示一张bmp图片.完成这个任务,前后估计花了2个月的业余时间. 这个任务涉及了很多知识点,包括:启动区. ...
- Java对象创建模式
创建Java对象时,对于可为空的属性,创建对象的时候有3种模式:重叠构造器模式.JavaBeans模式.Builder模式(推荐).Stream模式(推荐). ...