Use Arr Management Pilot Scheme (involving A/B Testing )
Overview
This topic guides you throughArrTo initiate and manage pilot programs orBetaSolution.ArrIt can be set to route different users to different pilot sites, or route some requests to the pilot sites based on traffic. This demonstration will focus on routing some requests to the pilot site based on the characteristics of the user environment.
Target
ConfigurationArrTo manage and avoid risks arising from the pilot program.
Prerequisites
This demo requires the following prerequisites:
LInstalledIis7OfWin2008Or later
LMicrosoft arrAnd related modules
LAt least4Workstations and ApplicationsProgramContent Server. Two servers will be used for SimulationProductionSite, the other two will be used to simulate the pilot site
LBesidesMicrosoft IEIn addition, another browser is required, suchFirefoxAnd has. Net3.5(This configuration is only used for testing purposes)
Procedure1-URL rewrite based on user-side configurationRule Modification
In this step,URL rewriteThe rule is changed as follows:. Net3.5AndIE, These requests will be routed to the pilot site, the pilot site will beHostInPilotserversOn the farm. All other requests are routedProductionSite,ProductionThe site will beHostInProductionsiteserversOn the farm.
Graphical changeURL rewriteRules:
1.OpenIIS
2.Select farmPilotsiteservers
3.Shown as follows:
A)
4.Double-clickRouting rules
5.Currently, this scenario involves multiple server farms and additionalHTTPTo filter request headers, defineURL rewriteModule advanced options, clickAdvanced RoutingUnderURL rewrite
A)
6.Note that it already exists2Rules, and then you need to change these rules
A)
7.In this demonstration, the order of rules is very important. IfArr_productionsiteservers_loadbalanceInArr_pilotservers_loadbalanceAbove, you need to useMove upOrMove downTo change their order
8.SelectArr_pilotsite_servers_loadbalanceThenActionsClickEdit...
A)
9.YesIEAnd has. Net3.5User requests must be forwardedPilotsiteserversFarm. You need to add conditions for this. ClickAdd conditions,Then clickAdd...
A)
10.InCondition InputInput{Http_user_agent};PatternInput* MSIE *; This condition will check whether the client is usingIE
A)
11.ClickAdd...To add another condition to check. NetVersion, similar to the previous step, enter the following:{Http_user_agent}And*. Net CLR 3.5 *
A)
12.Finally, set the check box"Stop processing of subsequent rules(Stop processing subsequent rules)"Set to unselected, and then clickApplySave changes
A)
13.As mentioned above, the order of rules is very important. This is because when"Stop processing of subsequent rules"When not selected,URL rewriteThe processor processes these rules in sequence. So in this example, the first ruleArr_pilotsiteservers_loadbalanceWill be considered first. This rule will try to match whether the client is usedIEAnd whether the client is installed. Net3.5. In this case, the request is forwardedPilotsiteserversFarm. BecauseStop processing of subsequent rulesIf the check box is not selected, it will continue to process the second rule,Arr_productionsiteservers_loadbalance, This rule will forward all the remaining requestsProductionsiteserversFarm.
Command Line Method changeURL rewriteRules:
1.ToAdministratorIdentity to open the command line
2.Navigate to folder% Windir % \ system32 \ inetsrv
3.To changeArr_pilotsiteservers_loadbalanceRules to checkIEAnd. Net3.5, Enter:
A)Appcmd.exe set config-Section: system. webserver/Rewrite/globalrules/+ "[name = 'Arr _ pilotsiteservers_loadbalance ']. conditions. [input = '{http_user_agent}', pattern = '* MSIE *'] "/commit: apphost
B)Appcmd.exe set config-Section: system. webserver/Rewrite/globalrules/+ "[name = 'Arr _ pilotsiteservers_loadbalance ']. conditions. [input = '{http_user_agent}', pattern = '*. net CLR 3.5 * '] "/commit: apphost
4.To set rulesArr_pilotsiteservers_loadbalanceOptionsStop processing of subsequent rulesIs not selected, enter:
) appcmd.exe set config-Section: system. webserver/Rewrite/globalrules/[name = 'Arr _ pilotsiteservers_loadbalance ']. stopprocessing: "false"/commit: apphost