Author |
Message
|
fagundes |
Posted: Thu Mar 04, 2004 10:29 am Post subject: MQSeries Workflow Performance Analysis and Tunning |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
Hi, I`m testing the perofrmance of MQSeries Workflow.
Built one vanilla process with some patterns: loops, splits, decisions,concurrence,...
I'' ve one domestic machine(server): amd atlhon 1700 xp, (RAM)512 MBytes, ethernet 10/100 Mbps.
Now I am triggering some requests for creation/Initiation of the process instances (from a programm).
The activities are automatics (using API).
I set the arrive interval for 25 seconds and the Server can't reponse, it runs about 40 minutes and stop, it doesn't response... But my program continues sending requests...
Is it normal ? Is there any tunning for increase the performance?
There is two "fmcmain.exe" running. Does The Server run with only one?
Can I congiure the quantity of the fmcmain.exe instances ??
Thanks guys....
Fagundes _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
vennela |
Posted: Thu Mar 04, 2004 10:35 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Quote: |
I set the arrive interval for 25 seconds and the Server can't reponse, it runs about 40 minutes and stop, it doesn't response... But my program continues sending requests...
|
I couldn't understand this. Can you explain a bit more on what these time settings mean to you.
Also is it fmcemain? I am pretty sure they are exec servers that you are talking about. Usually by default two fmcemain processes will be started. The idea is 2 fmcemains for one processer. You can increase their number |
|
Back to top |
|
 |
fagundes |
Posted: Fri Mar 05, 2004 10:20 am Post subject: Explaning the question |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
Thanks Vennela...
I did a program that starts one process instance for each 25 seconds.
I am trying to test the response capacity of the Server, measuring the rate:(finished process instances)/second.
So I set the interval time for each process instance creation, and my program runs in infinite loop. After one time period, I retrieve the data from AUDIT TRAIL and count the quantity of events (21025) that show the finished(success) )proces instance.
Fagundes... _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
mzg |
Posted: Mon Mar 08, 2004 7:07 am Post subject: |
|
|
 Newbie
Joined: 01 Oct 2003 Posts: 8
|
Hi Fagundes,
do I understand you right? Your program runs in an infinite loop (calling CreateStartProcessinstance() ) for 25 seconds and then those processes run for 40 minutes?
Sorry, but I don't understand your scenario fully, but maybe you could describe it in some more details?
How does your process look like (a process with 10 activities is quite different from one with 100 activities).? Depending on this you'll get a quite different result for your rate (finished PIs)/second. _________________ Cheers,
Richard.
-----------------------
IBM Websphere MQ Workflow & Process Choreographer Performance Focal Point |
|
Back to top |
|
 |
fagundes |
Posted: Mon Mar 08, 2004 11:16 am Post subject: explaning the trouble |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
Explaning...
The program tat triggers the process for each 25 seconds runs normally.
The trouble is the Server, after 40 minutes (so so), the server doesn´t response. All tries for beginning(CreateandStartInstance()) one process receive one RC(14) that indicates TIMEOUT.
My vanilla ice is composed by 10 activitties that run one program (using the API), sleep for a moment (between 4 and 10 seconds) and return one number for flow control.
Thanks...
The FDL process is ...
*
*
* FDL definitions generated by MQSeries Workflow at 2004-03-08, 16:00:04.
*
*/
CODEPAGE 1252
FM_RELEASE V3R3 0
/*
* LEVELs
*/
UPDATE LEVEL 0
END 0
UPDATE LEVEL 1
END 1
UPDATE LEVEL 2
END 2
UPDATE LEVEL 3
END 3
UPDATE LEVEL 4
END 4
UPDATE LEVEL 5
END 5
UPDATE LEVEL 6
END 6
UPDATE LEVEL 7
END 7
UPDATE LEVEL 8
END 8
UPDATE LEVEL 9
END 9
/*
* STRUCTUREs
*/
UPDATE STRUCTURE 'Default Data Structure'
END 'Default Data Structure'
/*
* TOOL_SETs
*/
UPDATE TOOL_SET 'STANDARD'
DEFAULT_PROCESS_ACTIVITY_ICON "fmcbprca"
DEFAULT_BLOCK_ACTIVITY_ICON "fmcbblka"
DEFAULT_BUNDLE_ACTIVITY_ICON "fmcbbnda"
DEFAULT_INFORMATION_ACTIVITY_ICON "fmcbinfa"
DEFAULT_PROGRAM_ACTIVITY_ICON "fmcbprga"
END 'STANDARD'
/*
* PROCESS_CATEGORYs
*/
PROCESS_CATEGORY 'BenchMarkTest'
DESCRIPTION "Categoria com Processo do Benchmark"
END 'BenchMarkTest'
/*
* DOMAINs
*/
UPDATE DOMAIN 'DOMAIN'
DESCRIPTION "Default domain"
DOCUMENTATION "Default domain (documentation field)"
MAXIMUM_MESSAGE_SIZE 1000000 B
SERVER TYPE EXECUTION_SERVER
CHECK_INTERVAL 300 SECONDS
NUMBER_OF_INSTANCES 2
EXTERNAL_CONTROL NO
NO IMMEDIATE_CLEANUP
NAVIGATION_TRANSACTION_THRESHOLD 1999999999
SERVER TYPE SCHEDULING_SERVER
START_MODE DEFERRED
CHECK_INTERVAL 300 SECONDS
CREATE_NOTIFICATION_ITEMS_THRESHOLD 10
DELETE_NOTIFICATION_ITEMS_THRESHOLD 100
NOTIFICATION_CHECK_INTERVAL 3600 SECONDS
SERVER TYPE CLEANUP_SERVER
START_MODE DEFERRED
START_TIME EVERY DAY AT 0:00
STOP_TIME EVERY DAY AT 6:00
CHECK_INTERVAL 300 SECONDS
CLEANUP_TIME 604800 SECONDS
CLEANUP_DELAY_TIME 3600 SECONDS
SERVER TYPE PROGRAM_EXECUTION_SERVER
NUMBER_OF_INSTANCES 5
EXTERNAL_CONTROL NO
SUPPORT_MODE SAFE
PLATFORM OS390
IMPLEMENTATION_SUPPORT EXTERNAL
USER_SUPPORT AGENT
PROGRAM_EXECUTION_AGENT
DLL_LOAD_MODE UNLIMITED
PROCESS
NO AUDIT_TO_DB
NO AUDIT_TO_MQ
NOTIFICATION_MODE RUN
REFRESH_POLICY PULL
KEEP_PROCESSES NEVER
KEEP_WORKITEMS NEVER
NO AUTONOMY
ACTIVITY
CHECKOUT_POSSIBLE
INCLUDE_PROCESS_ASSIGNMENT
PREFER_LOCAL_USERS
PREFER_NON_ABSENT_USERS
NO SUBSTITUTION
NOTIFICATION_SUBSTITUTION
NO DUPLICATE_NOTIFICATION
PROGRAM
FENCED_MODE
KEEP_LOADED
EXECUTION_MODE NORMAL
EXECUTION_USER AGENT
INPUT_CONTAINER_ACCESS
OUTPUT_CONTAINER_ACCESS
NO DLL_V2_COMPATIBILITY
NOT TRUSTED
IMPORT
DO NOT OVERWRITE
OPERATION
SYSTEM_QUALIFIER "FMC"
OPERATION_MODE ROBUST
EXTERNAL_RESTART NO
MAXIMUM_QUERY_MESSAGE_SIZE 1000000 B
CLIENT_MESSAGE_EXPIRATION_TIME 900 SECONDS
CHECK_INTERVAL_OTHER_SYSTEMS 360 SECONDS
MESSAGE_LAYER_REFRESH_INTERVAL 3600 SECONDS
MESSAGE_RETAIN_PERIOD 604800 SECONDS
ERROR_RETAIN_PERIOD 604800 SECONDS
RESPONSE_WAIT_TIME 120 SECONDS
MESSAGE_RETRY_LIMIT 5
SESSION
SESSION_EXPIRATION_TIME 72000 SECONDS
SESSION_EXPIRATION_CHECK_INTERVAL 3600 SECONDS
NO UNIFIED_LOGON
MAXIMUM_INVALID_LOGONS 3
END 'DOMAIN'
/*
* PROGRAMs
*/
PROGRAM 'AtividadeBenchmark' ( 'Default Data Structure', 'Default Data Structure'
)
DESCRIPTION "Programa comum a todas as atividades"
NO STRUCTURES_FROM_ACTIVITY
NOT UNATTENDED
WINNT EXE PATH_AND_FILENAME
"U:\TESE_Fase2\Programas\MyProjects\AtividadeBenchmark\Debug\AtividadeBenchmark.ex
e"
INHERIT ENVIRONMENT
STYLE INVISIBLE
START FOREGROUND
END 'AtividadeBenchmark'
/*
* GROUPs
*/
UPDATE GROUP 'FMCGRP'
DESCRIPTION "Default system group"
RELATED_DOMAIN 'DOMAIN'
OPERATION
SYSTEM_QUALIFIER "FMC"
END 'FMCGRP'
/*
* SYSTEMs
*/
UPDATE SYSTEM 'FMCSYS'
DESCRIPTION "Default system"
RELATED_GROUP 'FMCGRP'
SYSTEM_IDENTIFIER 1
PRIMARY_SYSTEM
VERSION 3
RELEASE 3
LEVEL 0
END 'FMCSYS'
PERSON 'FAGUNDES'
PERSON_ID "fagundes"
FIRST_NAME "fagundes"
MIDDLE_NAME "pereira"
AUTHORIZED_FOR STAFF
AUTHORIZED_FOR AUTHORIZATION
AUTHORIZED_FOR OPERATION
AUTHORIZED_FOR TOPOLOGY
AUTHORIZED_FOR PROCESS_MODELING
AUTHORIZED_FOR PROCESS_CATEGORY ALL AS_ADMINISTRATOR
AUTHORIZED_FOR WORKITEMS_OF ALL
PASSWORD %%EFEDEB0907E503E1
IS_NOT_ABSENT
DO NOT RESET_ABSENT
GROUP 'FMCGRP'
SYSTEM 'FMCSYS'
END 'FAGUNDES'
/*
* ROLEs
*/
UPDATE ROLE 'System administrator'
RELATED_PERSON 'ADMIN'
END 'System administrator'
ROLE 'Role Teste'
DESCRIPTION "Role de Teste"
COORDINATOR 'RAPHAEL'
RELATED_PERSON 'CLIENTE' 'PERSON3'
END 'Role Teste'
ROLE 'Estudantes'
COORDINATOR 'MAURO'
RELATED_PERSON 'MAURO'
END 'Estudantes'
ROLE 'ParticipantesEscrita'
COORDINATOR 'PARTICIPANTE1'
RELATED_PERSON 'PARTICIPANTE2' 'PARTICIPANTE1' 'PARTICIPANTE3'
'PARTICIPANTE4'
END 'ParticipantesEscrita'
ROLE 'ProjectStaff'
COORDINATOR 'USER4'
RELATED_PERSON 'USER1' 'USER2' 'USER3' 'USER4'
END 'ProjectStaff'
ROLE 'Responsável pelo Lab de TLD'
COORDINATOR 'HADDRIKE'
RELATED_PERSON 'USER4' 'HADDRIKE'
END 'Responsável pelo Lab de TLD'
ROLE 'Técnico do Lab de TLD'
RELATED_PERSON 'USER4' 'HADDRIKE'
END 'Técnico do Lab de TLD'
ROLE 'Chefe do DIMEX'
COORDINATOR 'HADDRIKE'
RELATED_PERSON 'USER4' 'HADDRIKE'
END 'Chefe do DIMEX'
ROLE 'Analista de Sistemas'
RELATED_PERSON 'MARCUS' 'NILTON'
END 'Analista de Sistemas'
ROLE 'Gerente de Informatica'
RELATED_PERSON 'PAULO'
END 'Gerente de Informatica'
ROLE 'Analista de Suporte'
RELATED_PERSON 'JOSE'
END 'Analista de Suporte'
ROLE 'SupervisorFagundes'
COORDINATOR 'FAGUNDES'
RELATED_PERSON 'FAGUNDES'
END 'SupervisorFagundes'
ROLE 'VendedorFagundes'
COORDINATOR 'FAGUNDES'
RELATED_PERSON 'FAGUNDES'
END 'VendedorFagundes'
ROLE 'AnalistaTestandoI'
RELATED_PERSON 'FAGUNDES'
END 'AnalistaTestandoI'
ROLE 'SupervisorFagundes2'
COORDINATOR 'FAGUNDES2'
RELATED_PERSON 'FAGUNDES2'
END 'SupervisorFagundes2'
ROLE 'VendedorFagundes2'
COORDINATOR 'FAGUNDES2'
RELATED_PERSON 'FAGUNDES2'
END 'VendedorFagundes2'
ROLE 'SupervisorFagundes3'
COORDINATOR 'FAGUNDES3'
RELATED_PERSON 'FAGUNDES3'
END 'SupervisorFagundes3'
ROLE 'VendedorFagundes3'
COORDINATOR 'FAGUNDES3'
RELATED_PERSON 'FAGUNDES3'
END 'VendedorFagundes3'
ROLE 'Papel1'
END 'Papel1'
ROLE 'Papel2'
END 'Papel2'
/*
* ORGANIZATIONs
*/
ORGANIZATION 'Cliente'
MANAGER 'CLIENTE'
RELATED_PERSON 'CLIENTE' 'CONTABILIDADE' 'FINANCEIRO'
END 'Cliente'
ORGANIZATION 'Organizacao de Teste'
DESCRIPTION "Organizacao de Teste"
MANAGER 'RAPHAEL'
RELATED_PERSON 'PERSON1' 'PERSON2'
END 'Organizacao de Teste'
ORGANIZATION 'Prestadora de Serviço'
MANAGER 'PAULO'
RELATED_PERSON 'MARCUS' 'NILTON' 'PAULO' 'JOSE'
END 'Prestadora de Serviço'
ORGANIZATION 'DIMEX'
DESCRIPTION "A Divisão de Monitoração Externa (DIMEX) tem a função de monitorar
indivÃduos ocupacionalmente expostos quando a fonte se localiza
externamente ao indivÃduo e a dose recebida é função do tempo de
exposição à fonte."
MANAGER 'HADDRIKE'
RELATED_PERSON 'HADDRIKE'
END 'DIMEX'
ORGANIZATION 'Lab Dosimetria Termoluminescente'
DESCRIPTION "O laboratório de Dosimetria Termoluminescente utiliza a técnica de
cristais (TLD) para as medições."
MANAGER 'HADDRIKE'
PARENT_ORGANIZATION 'DIMEX'
END 'Lab Dosimetria Termoluminescente'
/*
* SERVERs
*/
UPDATE SERVER 'CLEANSVR'
DESCRIPTION "Default cleanup server"
RELATED_GROUP 'FMCGRP'
RELATED_SYSTEM 'FMCSYS'
TYPE CLEANUP_SERVER
END 'CLEANSVR'
UPDATE SERVER 'EXECSVR'
DESCRIPTION "Default execution server"
RELATED_GROUP 'FMCGRP'
RELATED_SYSTEM 'FMCSYS'
TYPE EXECUTION_SERVER
END 'EXECSVR'
UPDATE SERVER 'SCHEDSVR'
DESCRIPTION "Default scheduling server"
RELATED_GROUP 'FMCGRP'
RELATED_SYSTEM 'FMCSYS'
TYPE SCHEDULING_SERVER
END 'SCHEDSVR'
UPDATE SERVER 'PESERVER'
DESCRIPTION "Default program execution server"
RELATED_GROUP 'FMCGRP'
RELATED_SYSTEM 'FMCSYS'
TYPE PROGRAM_EXECUTION_SERVER
END 'PESERVER'
/*
* QUEUE_MANAGERs
*/
UPDATE QUEUE_MANAGER 'FMCQM'
DESCRIPTION "Default queue manager"
QUEUE_MANAGER_NAME "FMCQM"
RELATED_SYSTEM 'FMCSYS'
SYSTEM MQSERIES
END 'FMCQM'
/*
* NODEs
*/
UPDATE NODE 'Default Node'
RELATED_SYSTEM 'FMCSYS'
OPERATING_SYSTEM WINNT
END 'Default Node'
/*
* PROCESSes
*/
/*
* PROCESS Processo de Teste Benchmark
*/
PROCESS 'Processo de Teste Benchmark' ( 'Default Data Structure', 'Default Data
Structure' )
CATEGORY 'Benchmark1'
DO NOT PROMPT_AT_PROCESS_START
FULL AUDIT_TO_DB
NOTIFICATION_MODE RUN
REFRESH_POLICY PUSH
KEEP_PROCESSES NEVER
KEEP_WORKITEMS NEVER
NO AUTONOMY
WINDOW ZOOM_FACTOR 90
WINDOW VIEW_REFERENCE_POINT XPOS 0 YPOS 296
WINDOW SHOW ALL CONNECTORS
WINDOW SHOW TRANSITION_CONDITIONS
PROGRAM_ACTIVITY 'A11' ( 'Default Data Structure', 'Default Data Structure' )
DESCRIPTION "_RC=0 OR _RC=1"
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -300 YPOS -650
LAYOUT XPOS -300 YPOS -500
NAME_POSITION XPOS -300 YPOS -575
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A11'
PROGRAM_ACTIVITY 'A6' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC
LAYOUT XPOS -900 YPOS -300
NAME_POSITION XPOS -900 YPOS -375
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A6'
PROGRAM_ACTIVITY 'A0' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -300 YPOS 950
LAYOUT XPOS -300 YPOS 1100
NAME_POSITION XPOS -300 YPOS 1025
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A0'
PROGRAM_ACTIVITY 'A1' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC =1" XPOS -300 YPOS 650
LAYOUT XPOS -300 YPOS 800
NAME_POSITION XPOS -300 YPOS 725
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'VendedorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A1'
PROGRAM_ACTIVITY 'A2' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -600 YPOS 450
LAYOUT XPOS -600 YPOS 600
NAME_POSITION XPOS -600 YPOS 525
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'VendedorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A2'
PROGRAM_ACTIVITY 'A8' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS 0 YPOS 150
LAYOUT XPOS 0 YPOS 300
NAME_POSITION XPOS 0 YPOS 225
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A8'
PROGRAM_ACTIVITY 'A3' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -600 YPOS 150
LAYOUT XPOS -600 YPOS 300
NAME_POSITION XPOS -600 YPOS 225
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'VendedorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A3'
BLOCK 'A7' ( 'Default Data Structure', 'Default Data Structure' )
START WHEN AT_LEAST_ONE CONNECTOR TRUE
LAYOUT XPOS 0 YPOS 600
NAME_POSITION XPOS 0 YPOS 525
WINDOW VIEW_REFERENCE_POINT XPOS 0 YPOS 216
WINDOW SHOW ALL CONNECTORS
WINDOW SHOW NO CONDITIONS
SOURCE 1 XPOS -900 YPOS 800
SINK 1 XPOS -900 YPOS 400
PROGRAM_ACTIVITY 'A 7_0' ( 'Default Data Structure', 'Default Data Structure'
)
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -600 YPOS 450
LAYOUT XPOS -600 YPOS 600
NAME_POSITION XPOS -600 YPOS 525
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A 7_0'
DATA
LOOP 'A 7_0'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -600 YPOS 800
XPOS -400 YPOS 800
DATA
FROM SOURCE 1 TO 'A 7_0'
MAP '_STRUCT' TO '_STRUCT'
DATA
FROM 'A 7_0' TO SINK 1
MAP '_STRUCT' TO '_STRUCT'
END 'A7'
PROGRAM_ACTIVITY 'A5' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0" XPOS -900 YPOS -150
LAYOUT XPOS -900 YPOS 0
NAME_POSITION XPOS -900 YPOS -75
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'VendedorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A5'
PROGRAM_ACTIVITY 'A4' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -600 YPOS -150
LAYOUT XPOS -600 YPOS 0
NAME_POSITION XPOS -600 YPOS -75
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'VendedorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A4'
PROGRAM_ACTIVITY 'A9' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS 0 YPOS -150
LAYOUT XPOS 0 YPOS 0
NAME_POSITION XPOS 0 YPOS -75
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A9'
PROGRAM_ACTIVITY 'A10' ( 'Default Data Structure', 'Default Data Structure' )
START AUTOMATIC WHEN ALL CONNECTORS TRUE
EXIT AUTOMATIC WHEN "_RC=0 OR _RC=1" XPOS -300 YPOS -350
LAYOUT XPOS -300 YPOS -200
NAME_POSITION XPOS -300 YPOS -275
PRIORITY DEFINED_IN INPUT_CONTAINER
DONE_BY MEMBER OF ROLE 'SupervisorFagundes'
PROGRAM 'AtividadeBenchmark'
SYNCHRONIZATION NESTED
END 'A10'
CONTROL
FROM 'A4' TO 'A10'
CONTROL
FROM 'A10' TO 'A11'
CONTROL
FROM 'A5' TO 'A6'
CONTROL
FROM 'A0' TO 'A1'
LAYOUT
XPOS -300 YPOS 900
CONTROL
FROM 'A1' TO 'A2'
CONTROL
FROM 'A2' TO 'A3'
CONTROL
FROM 'A1' TO 'A7'
CONTROL
FROM 'A7' TO 'A8'
CONTROL NAME "Sim"
FROM 'A3' TO 'A5'
WHEN "_RC=0"
XPOS -750 YPOS 125
CONTROL NAME "Nao"
FROM 'A3' TO 'A4'
WHEN "_RC=1"
XPOS -597 YPOS 125
CONTROL
FROM 'A8' TO 'A9'
CONTROL
FROM 'A9' TO 'A10'
DATA
LOOP 'A1'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -300 YPOS 600
XPOS -200 YPOS 600
DATA
LOOP 'A2'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -800 YPOS 700
XPOS -800 YPOS 600
DATA
LOOP 'A9'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS 200 YPOS 100
XPOS 200 YPOS 0
DATA
LOOP 'A10'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -200 YPOS 0
XPOS -300 YPOS 0
DATA
LOOP 'A4'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -700 YPOS 0
XPOS -700 YPOS -100
DATA
LOOP 'A5'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -1000 YPOS 100
XPOS -1000 YPOS 0
DATA
LOOP 'A6'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -1000 YPOS -200
XPOS -1000 YPOS -300
DATA
FROM 'A1' TO 'A2'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -600 YPOS 800
DATA
LOOP 'A11'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -100 YPOS -400
XPOS -100 YPOS -500
DATA
LOOP 'A0'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -400 YPOS 1300
XPOS -300 YPOS 1300
DATA
FROM 'A0' TO 'A1'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -500 YPOS 900
DATA
FROM 'A1' TO 'A7'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -100 YPOS 800
XPOS 0 YPOS 800
DATA
LOOP 'A3'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -800 YPOS 400
XPOS -800 YPOS 300
DATA
LOOP 'A8'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS 200 YPOS 400
XPOS 200 YPOS 300
DATA
FROM 'A2' TO 'A3'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -400 YPOS 500
DATA
FROM 'A3' TO 'A4'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -400 YPOS 200
DATA
FROM 'A9' TO 'A10'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS 0 YPOS -200
DATA
FROM 'A5' TO 'A6'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -800 YPOS -200
DATA
FROM 'A4' TO 'A10'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -600 YPOS -200
DATA
FROM 'A3' TO 'A5'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -900 YPOS 200
DATA
FROM 'A8' TO 'A9'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -200 YPOS 200
DATA
FROM 'A7' TO 'A8'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -200 YPOS 500
DATA
FROM 'A10' TO 'A11'
MAP '_STRUCT' TO '_STRUCT'
LAYOUT
XPOS -500 YPOS -400
END 'Processo de Teste Benchmark' _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
Ratan |
Posted: Mon Mar 08, 2004 12:40 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Are there any entries in fmcsys and fmcerr logs? _________________ -Ratan |
|
Back to top |
|
 |
fagundes |
Posted: Mon Mar 08, 2004 1:11 pm Post subject: data from fmcys.log |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
I read the system log (fmcsys.log) and saw the messages follow:
-7/3/2004 19:54:21 FMCSYS: FMC3110W The ProgramFinished message can´t be processed because database deadlock or timeout _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
mzg |
Posted: Tue Mar 09, 2004 4:02 am Post subject: |
|
|
 Newbie
Joined: 01 Oct 2003 Posts: 8
|
Did you ever do runstats/rebind on the database? This usually helps in getting timeout / deadlock relief.
I did a small capacity consideration for your process (12 activities, 1 block) . It requires (at 144 invocations per hour (one every 25 seconds)) a very low processing capacity of about 0.7 BWU/sec. And your AMD 1.7GHz machine should be able to deliver much more than that.
That also means, that (assuming the program AtividateBenchmark does nothing really time-consuming) one process instnace should be finished in less than 25 seconds. I.e. before your "starter program" start the next PI.
Given such a low load, the only immediate explanation I can find would be that the access to the database needs to be optimized. Hence the initial question: did you do a runstats/rebind already? _________________ Cheers,
Richard.
-----------------------
IBM Websphere MQ Workflow & Process Choreographer Performance Focal Point |
|
Back to top |
|
 |
fagundes |
Posted: Thu Mar 11, 2004 8:09 am Post subject: Describing the process |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
The program that runs the activity consumes about 10 seconds (with variance of 16 seconds).
With one optimist perspective, the complete process consumes 120 seconds, but there is the communication overhead.
I tested the elapsed time and found about 3 minutes.
When I increases the requests rate, this time reaches about 10 minutes.
When the next process begins, the former still didn't finish.
I'm sorry, but how can I do runstats/rebind on the database ?
Thanks.
Fagundes _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
jmac |
Posted: Thu Mar 11, 2004 9:39 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
See this manual for good information
You should be able to find it by doing a search on the ibm site... if you can't send me a note and I will send you the PDF.
MQSeries Workflow - Considerations for production roll out
Version 1.1
db2 connect to FMCDB
db2 reorgchk update statistics on table all
db2 connect reset
fmczrdb –o b –y _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
rambo |
Posted: Fri Mar 12, 2004 11:27 pm Post subject: |
|
|
Novice
Joined: 25 Aug 2003 Posts: 20
|
What database are you running on? By default, DB2 database configurations is way too low for MQWF. Setting your heap size bigger will help. Also, if you are not familiar with DB2, you can use the wizard to tune your db. Good luck. _________________ Regards
Tim |
|
Back to top |
|
 |
fagundes |
Posted: Sat Mar 13, 2004 5:12 am Post subject: error message and tunnig db2 and channel off?? |
|
|
 Apprentice
Joined: 15 Aug 2003 Posts: 45
|
Hi guys.
If i'm usuing the PEA there is one limit for operating (execution program rate, MAX quantity of activities per scond...)?
How can I set the size of channel?
-------------------------------------------------------------------------------
13/03/2004 00:15:44
AMQ9558: Remote channel is not available.
EXPLICAÇÃO:
The channel program was finished because the 'FMCQM.CL.TCP' isn't
available on remote system. Maybe your channel is off or the remote system haven't got resources enough for running more channels.
Action:
Verify the remote system for certificating the channel is available for running and repeat the operation
------------------------------------------------------------------------------- _________________ Fagundes Pereira da Silva
M.Sc. Candidate / UFRJ Brazil
Interest Area: WfMS Performance Analysis |
|
Back to top |
|
 |
|