Beruflich Dokumente
Kultur Dokumente
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
ManagingPeopleSoftMasterSchedulerServers
ThischapterprovidesanoverviewofPeopleSoftMasterSchedulerfunctionsanddiscusses:
CircumstancesinwhichaMasterSchedulerisrequired.
HowtousemultipleMasterSchedulers.
MasterSchedulerrequestprioritization.
Howtomanageworkloadacrossservers.
UnderstandingPeopleSoftMasterSchedulerFunctions
AMasterSchedulerenablesloadbalancingofworkloadbyautomaticallyroutingrequeststoavailableProcess
Schedulerservers,whichensuresthatyoumaintainoptimalprocessingatalltimes.Thisfeaturealsooffersfault
toleranceinyourbatchenvironment.Intheeventofaserverfailure,aMasterSchedulercanredistributequeued
requestsamongtheremainingactiveProcessSchedulerservers.Inaddition,anactiveMasterSchedulermanages
andcontrolsallProcessSchedulerserverdomainsthatareonthesamePeopleSoftdatabase.Itenforcesallofthe
rulesthatarespecifiedineithertheprocessorjobdefinitions,andmonitorstherunningofallprocesses.Itbecomes
thecentralizedcontrolasitcheckstheProcessRequesttablelookingforanyqueuedrequeststorun,andthen
dispatchesthemtoanappropriateavailableProcessSchedulerserver.
AMasterSchedulercanbeactivatedinanyoftheProcessSchedulerserversinMicrosoftWindowsandUNIX.This
optionisenabledbydefaultwhenyouareconfiguringanewProcessSchedulerserverinWindowsandUNIX.
However,thisoptionisnotavailableintheIBMUNIXSystemServices(USS).ForDB2/OS390customerswho
intendtostartaProcessSchedulerinUSSandwanttotakeadvantageofthisfeature,aProcessSchedulerserver
domainmustbesetupineitheraMicrosoftWindowsorsupportedUNIXoperatingsystemotherthanUSS.
DisadvantagesofUsingMultipleProcessSchedulerswithNoMasterScheduler
WhenaMasterSchedulerisnotused,eachProcessSchedulerserverthatisbroughtupisresponsibleformanaging
itsownworkloadbyqueryingtheProcessRequesttable.ThiscanbeproblematicwhenmultipleProcessScheduler
serversarebootedforthesamedatabase.Eachserverattemptstoschedulerequeststhatarespecifiedtoruneither
onthisspecificserveroranyserver.Ifanyrequestissettorunonanyserver,morethanoneservermayattemptto
schedulethesamerequest.Toresolvethis,specifyaspecificserverthroughtheProcessRequestpage.However,
thisbecomesdisadvantageousifthespecifiedservergoesdownbecausetherequestremainsqueueduntilthe
ProcessSchedulerserverisbroughtupagain.
OneotherdisadvantageofbringingupmultipleProcessSchedulerserverswithoutusingaMasterScheduleristhe
unevenbalanceofworkloadacrossallservers.PeopleSoftProcessSchedulerisconstrainedtohavenewrequests
scheduledwithnoservernametobepickeduponlybyserversthatarerunningintheoperatingsystemthatis
specifiedasthePrimaryOperatingSystemontheSystemSettingspage.Thisdiagramillustratesthisoption:
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
1/6
10/04/2015
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
ExampleofMasterSchedulersetupusingthePrimaryOperatingSystemoption
Inthisspecificsetup,multipleserversarebroughtupinMicrosoftWindows(PSNT1andPSNT2),UNIX(PSUNX),
andOS390(PSOS390),whereWindowsisthedesignatedprimaryoperatingsystem.Assumingthatallnew
requestswerescheduledwithablankservername,thenonlyPSNT1andPSNT2arequalifiedtopickupthese
requests.ThePSUNXorPSOS390willbeusedonlywhenrequestsarescheduledwiththenameoftheintended
ProcessSchedulerserver.Also,youcanseeascenarioinwhichPSNT1willpickupmostoftherequests,leaving
PSNT2underutilized.
TheMasterSchedulerresolvesthisproblembybecomingthecentralpointforqueryingtheProcessRequesttable.
WhenaMasterSchedulerisavailable,allactivePeopleSoftProcessSchedulerServersswitchintoaremoteserver
mode.MasterSchedulerregistersandmonitorsanyactiveremoteservers.AftertheactiveMasterScheduler
prioritizesallnewqueuedrequests,itchecksallavailableserverstodecidewhichremoteserveristhemost
appropriateforrunningaparticularrequestatruntime.Itattemptstoevenlyloadbalanceworkloadacrossall
availableservers,enablingthemosteffectiveuseofoverallcomputingresources.
CircumstancesinWhichaMasterSchedulerIsRequired
TheMasterSchedulerisanoptionalserverthatenablesyoutodistributeworkloadacrossmultipleProcess
Schedulers.However,thistableshowsspecificcircumstancesthatmandatehavinganactiveMasterScheduler
available:
Condition
Reason
SchedulePSJobscontainingprocessesthatneedtorunindifferent
operatingsystems.
Thisinstanceisparticulartodatabaseplatformsthatallowhaving
ProcessSchedulerserversbootedinmultipleoperatingsystems.
WhenthePrimaryOperatingSystemissettoUNIXorOS390,
ProcessSchedulerwillattempttoassignallprocesseswithina
PSJobtoProcessSchedulerswiththisoperatingsystem.However,
certainprocessescanrunexclusivelyfromWindowsforexample,
anyCrystalorPS/nVisionprocesses.MasterSchedulerisrequired
toredirectthePSJobitemtoPeopleSoftProcessScheduleron
Windows.
ActiveScheduleJobSetsaredefined.
OnlyaMasterSchedulercanscheduleanyactiveSchedule
JobSets.TheMasterSchedulerisalsoresponsibleforscheduling
anyrecurringScheduleJobSets.
Imposesystemconstraints,asdefinedinprocessorjobdefinitions.
AprocessorjobcannowbedefinedwitheitherMutuallyExclusive
ProcessesorMaxConcurrentvalues.Thesesystemconstraintswill
beimposedonlyifaMasterSchedulerisactive.
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
2/6
10/04/2015
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
TheSystemLoadBalancingOptionissettoAssignToServerIn
AnyO/S.
Whenamachinegoesdown,MasterSchedulercantransfer
queuedrequeststhatareassignedtothePeopleSoftProcess
SchedulerServeronanonfunctioningmachinetoaPeopleSoft
ProcessSchedulerServerthatisstartedonanothermachine.
Purgeprocessrequestsandreports.
AMasterSchedulermustberunningforthepurgeprocesstorun.
SeeAlso
CreatingScheduledJobSetDefinitions
DefiningJobs
SettingProcessDefinitionOptions
HowtoUseMultipleMasterSchedulers
EachProcessSchedulerdomainonWindowsorUNIX(exceptforUSS)canbesetuptohaveaMasterScheduler
started.However,onlyoneMasterSchedulerisactivetocontroltheworkloadatanytime.TheotherMaster
Schedulersremaininastateofidle.IftheactiveMasterSchedulergoesdown,thenoneoftheidleMaster
Schedulerserverstakecontrol.IfaMasterSchedulerisnotavailable,thenthePSPRCSRVservers,currentlyin
removeservermode,switchbacktostandalonemodeandquerytheProcessRequesttabletofindwork.
TheProcessMonitorcomponentidentifiestheProcessSchedulerserverwheretheMasterSchedulerisactive.
FromtheServerListtab,wherethelistofactiveProcessSchedulerserversaredisplayed,theMastercolumn
indicateswhetheraMasterSchedulerisactiveinanyoftheservers.
SeeAlso
ViewingtheServerList
MasterSchedulerRequestPrioritization
WhenMasterSchedulertalliesallnewqueuedrequests,itattemptstoprioritizeallincomingrequestsbefore
checkingallregisteredactiveserverstofindtheappropriateserver.Asetofruleswereimplementedtohelpthe
MasterSchedulerprioritizetheaccumulatedqueuedrequeststhatarefoundintheProcessRequesttable.All
requestsaresortedbasedontheseconditions:
1. Restartableorrecoveryprocess.
Anyprocessthatissetintheprocessdefinitionasrestartablewithanonzeroretrycountthatfailedin
previousattemptsandcurrentlyhasarunstatusofRestartisgivenahigherpriorityandwillbeontopofthe
prioritylist.Similarly,aprocessthatisautomaticallyscheduledbyPeopleSoftProcessSchedulerasa
recoveryprocessforafailedrequestisalsoplacedontopoftheprioritylist.
2. ProcessescontainedinactivePSJobs.
TheMasterSchedulermonitorsallactivePSJobsthathaveprocessesthatarecurrentlyinitiatedinoneor
moreProcessScheduler(remote)servers.WhentheMasterSchedulerdetectsthatavailableslotsare
availabletoassignrequeststoaremoteserverandpreparestoevaluateallqueuedrequests,itinitiates
processeswithintheseactivePSJobspriortoqueryingtheProcessRequesttablefornewqueuedrequests.
3. Accumulatedpriorityvalue.
Eachrequestisgivenanoverallpriorityvaluebasedonthedifferentpriorityoptionsthatareavailableinthe
system.MasterSchedulercalculatestheoverallprioritybasedontheorderofimportanceofthispriority,and
rankstherequestaccordingly.However,eachserverdefinitionmaybeconfiguredwithdifferentpriority
options,andthereforemayresultinthesamerequestrankinghighinoneserverwhileitispositionedatthe
bottomofthelistinanother.
Forexample,anSQRreporthasaprocesscategoryofFinancials.ThiscategoryhasapriorityofHighinthe
PSNTserverdefinition,whilethesamecategoryhasapriorityofLowinthePSNT2serverdefinition.Inthis
situation,theSQRreportwilllikelybeassignedtothePSNTserver.
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
3/6
10/04/2015
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
Theoverallprioritywillbecalculatedbasedonthisorderofimportanceofallthesepriorityoptionsthatcanbe
assignedtoarequest:
a. ProcessCategoryPriority:Thesystemwillassignthepriorityvalueoftheprocesscategorythatis
specifiedintheserverdefinitiontotherequest.IfaprocessbelongsinaPSJob,thenallprocessesin
thisPSJobwillbeassignedtheprocesscategoryofthePSJob.InthecaseofacomplexPSJobin
whichaPSJobisembeddedwithinanotherPSJob,thenalltheprocesseswillbeassignedthe
processcategoryofthemainPSJob.
b. Process/JobPriority:Thisisthepriorityasdefinedineithertheprocessorjobdefinition.Similartothe
processcategory,allprocesseswithinaPSJobwillhavethepriorityofthemainPSJob.
c. ProcessTypePriority:Thisistheprioritythatisspecifiedintheserverdefinitionforeachprocesstype
itcanprocess.InthecaseofPSJob,theprocesswithinaPSJobwillhavetheprioritybasedonits
ownprocesstype.
4. Rundateandtime.
Intheeventoftwoormorerequestshavingthesamecalculatedprioritybasedonallthecriterianotedabove,
therequestwithanearlierrundateandtimewillbescheduledfirstbytheMasterScheduler.
HowtoManageWorkloadAcrossAvailableServers
Thissectionliststheparametersthatareusedtocontrolhowworkloadismanagedacrossavailableservers:
Parameter
Modified In
Options
PrimaryOperatingSystem
SystemSettings
Windows(default).
UNIX.
OS390.
LoadBalancingOption
SystemSettings
AssigntoPrimaryO/SOnly(default).
AssigntoServerinAnyO/S.
ServerLoadBalancingOption
ServerDefinition
UseforLoadBalancing(default).
DoNotUseforLoadBalancing.
RedistributeOption
ServerDefinition
RedistributetoanyO/S(default).
RedistributewithsameO/S.
DoNotRedistribute.
MaxAPIAware
ServerDefinition
Numericvalue(default=5).
ProcessCategoryMaxConcurrent
ServerDefinition
NumericvaluenotexceedingtheMaxAPI
Aware.
ProcessTypeMaxConcurrent
ServerDefinition
NumericvaluenotexceedingtheMaxAPI
Aware.
ServerStatus
NA
NA
PrimaryOperatingSystemOption
TheoperatingsystemthatisspecifiedinthePrimaryOperatingSystemfieldintheSystemSettingscomponentis
thedefaultoperatingsystemthatisassignedtoallnewqueuedrequestswithablankservernamespecified.Ifthe
systemdetectsthattheprocessintherequestcannotberuninthedefaultoperatingsystembasedontheprocess
typedefinition,thenthesystemassignstherequestwiththeoperatingsystemthatisfoundintheprocesstype
definition.
LoadBalancingOptions
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
4/6
10/04/2015
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
TheLoadBalancingOptionaffectshowMasterSchedulerperformstheroundrobinassignmentforallavailable
remoteserversinattemptingtoloadbalancetheworkload.WhentheoptionAssigntoPrimaryO/SOnlyisselected,
MasterSchedulerperformsaroundrobinonlytoallremoteserversthatarebootedintheprimaryO/S.
ThepatternforhowMasterSchedulerassignsrequeststoavailableserverswiththisoptionisillustratedinthis
diagram.
ExampleofMasterSchedulersetupusingtheLoadBalancingAssigntoPrimaryO/SOnlyoption
Inthiscase,thePrimaryOperatingSystemisMicrosoftWindows.Thisistheoperatingsysteminwhichboth
PSNT1andPSNT2areinitiated.WhenMasterSchedulerfindsnewqueuedrequestswithblankservernames,the
workloadisevenlydistributedbetweenthetwoWindowsProcessSchedulerserversonly.AlthoughPSUNIX1and
PSOS390areavailable,norequestsareassignedtotheseservers.TheremoteserversPSUNIX1andPSOS390
areassignedonlywithnewrequeststhatarescheduledwiththisspecificservername.
IftheoptionissettoAssignToServerInAnyO/S,MasterSchedulerattemptstoloadbalanceworkloadtoallactive
servers.Atfirst,ittriestodistributeworktoserversresidingintheprimaryoperatingsystems.Whenithasreached
theserverdefinitionlimitations,itattemptstorouteworktotheremainingactiveservers.Forexample,Master
SchedulerwillroundrobintheprioritizedliststobothPSNT1andPSNT2,astheseserversarebootedintheprimary
operatingsystem.AssumingtheMaxAPIAwareforbothPSNT1andPSNT2isthree,thenthefirstsixprocess
requestswillbedistributedbetweenPSNT1andPSNT2,andthereamingrequestswillbedistributedtoPSUNIX1
andPSOS390.
ThepatternforhowMasterSchedulerassignsrequeststoavailableserverswiththisoptionisillustratedinthis
diagram:
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
5/6
10/04/2015
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcessScheduler
ExampleofMasterSchedulersetupusingtheLoadBalancingAssignToServerInAnyO/Soption
ServerLoadBalancingOptions
TheServerLoadBalancingOptionsfieldoftheserverdefinitionindicateswhethertheservercanbeusedforrouting
newrequestswithblankservernames.SelecttheUseForLoadBalancingoptionifthisservercanbeassigned
requestswithnospecificservernamespecified.Ifthisserverisintendedtobeusedonlyifnewprocessrequests
arescheduledwiththisserversname,setthisserverwiththeDoNotUseForLoadBalancingoption.
RedistributeOption
TheRedistributeOptionfieldoftheserverdefinitiondirectstheMasterSchedulertoacourseofactionintheevent
thataserverisshutdownorencountersasoftwareorhardwarefailure.IfMasterSchedulerfindsnewqueued
processrequestswiththeserversnameidentifieranddetectsthattheserveriscurrentlyunabletoprocessany
requests,oneofthefollowingthreeoptionscanbeselected:
RedistributetoanyO/S:MasterSchedulerattemptstoredistributerequestswiththeserversnameintoany
availableactiveProcessSchedulerserver.
RedistributewithsameO/S:MasterSchedulerattemptstorerouterequestsonlytoanotherProcess
Schedulerthatisbootedinthesameoperatingsystemasthisserver.
DoNotRedistribute:Masterschedulerdoesnotattempttorerouteanyrequestswiththeserversname
identifier.Inthiscase,requestsremainqueueduntiltheserverisbootedup.
MaxAPIAwareandMaxConcurrentOptions
MasterSchedulerperiodicallymonitorsthecurrentworkloadofallactiveProcessSchedulerservers.Itensuresthat
whenyouareperformingaroundrobinassignment,itdoesnotexceedanyofthefollowinglimitationsthatare
specifiedintheserverdefinition:
MaxAPIAware:IndicatesthetotalnumberoftasksthataProcessSchedulercaninitiateconcurrently.
ProcessCategoryMaxConcurrent:Indicatestheupperlimitationofhowmanyprocesseswiththesame
processcategorycanbeinitiatedconcurrently.
Note.ThenumberthatisassignedtothisfieldcannotexceedthevaluethatisspecifiedintheMaxAPI
Awarefield.
ProcessTypeMaxConcurrent:SimilartotheProcessCategoryMaxConcurrentfield,thisvalueindicates
thelimitbasedontheprocesstypeoftherequest.
ServerStatus
MasterSchedulerroutesworkonlytoProcessSchedulerserverswithaserverstatusofRunning.Ifaserverhasa
statusofSuspended,Overload,orDown,MasterSchedulerdefersroutingworktotheserveruntilthestatusis
changedbacktoRunning.MasterSchedulerevaluatestheappropriateactionforprocessrequeststhatareassigned
totheserverbasedontheRedistributeOptionsetting.
SeeAlso
DefiningSystemSettings
SettingServerDefinitions
EnterprisePeopleTools8.50PeopleBook:PeopleSoftProcess
Scheduler
http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tprs/htm/tprs12.htm
Copyright1988,2010,Oracleand/oritsaffiliates.Allrights
reserved.
6/6