cancel
Showing results for 
Search instead for 
Did you mean: 

[BEGINNER] how Application Server know which is his MS

Former Member
0 Kudos

Hello,

I'm very beginner in SAP.

I try to understand how ABAP application server knows which is his Message server when he starts.( I assume he needs this information to attach to his message server).

For one application server ABAP, I check his two profiles ( start_profile and profile), but nothing seems link this AS to his Message server.

Any idea ?

In other words, when an application server ( ABAP for example) starts, how he know which is his message server to attach to him ?

Many thanks in advance.

Accepted Solutions (1)

Accepted Solutions (1)

former_member188883
Active Contributor
0 Kudos

Hi Majda,

Application reads the start profile and instance profile to look up for hostnames for DB and Message server.

Hope this helps.

Regards,

Deepak Kori

Former Member
0 Kudos

Yes, this is what I expected, but as I said I read start profile and profile for one AS, and nothing links it to the message server.

So, my question still the same ....

Here is the start_profile :

SAPSYSTEMNAME = HP6

SAPSYSTEM = 36

INSTANCE_NAME = D36

DIR_CT_RUN = $(DIR_EXE_ROOT)/run

DIR_EXECUTABLE = $(DIR_INSTANCE)/exe

DIR_PROFILE = $(DIR_INSTALL)/profile

_PF = $(DIR_PROFILE)/HP6_D36_noeyy205

SETENV_00 = DIR_LIBRARY=$(DIR_LIBRARY)

SETENV_01 = LD_LIBRARY_PATH=$(DIR_LIBRARY):%(LD_LIBRARY_PATH)

SETENV_02 = SHLIB_PATH=$(DIR_LIBRARY):%(SHLIB_PATH)

SETENV_03 = LIBPATH=$(DIR_LIBRARY):%(LIBPATH)

SETENV_04 = PATH=$(DIR_EXECUTABLE):%(PATH)

EZCONNECT = //infra-oclcpshp601-prod-scan:1531/AS_C3

SETENV_05 = dbs_ora_tnsname=$(EZCONNECT)

Execute_00 = immediate $(DIR_CT_RUN)/sapcpe$(FT_EXE) pf=$(_PF)

Execute_01 = local $(DIR_EXECUTABLE)/sapmscsa pf=$(_PF) -n

_DW = dw.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_02 = local rm -f $(_DW)

Execute_03 = local ln -s -f $(DIR_EXECUTABLE)/disp+work$(FT_EXE) $(_DW)

Start_Program_00 = local $(_DW) pf=$(_PF)

_SE = se.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_04 = local rm -f $(_SE)

Execute_05 = local ln -s -f $(DIR_EXECUTABLE)/rslgsend $(_SE)

Start_Program_01 = local $(_SE) pf=$(_PF) -F

_IG = ig.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_06 = local rm -f $(_IG)

Execute_07 = local ln -s -f $(DIR_EXECUTABLE)/igswd_mt $(_IG)

Start_Program_02 = local $(_IG) -mode=profile pf=$(_PF)

Here is the profile :

abap/heap_area_dia = 100000000

abap/heap_area_nondia = 2000000000

abap/heap_area_total = 2000683008

abap/heaplimit = 40894464

em/blocksize_KB = 4096

em/initial_size_MB = 150000

es/implementation = std

ES/TABLE = UNIX_STD

rdisp/PG_MAXFS = 162768

rdisp/PG_SHM = 162768

rdisp/ROLL_MAXFS = 160000

rdisp/ROLL_SHM = 98304

ztta/roll_area = 6500000

ztta/roll_extension = 2000000000

ztta/roll_extension_dia = 600000000

ztta/roll_first = 1

enque/deque_wait_answer = TRUE

rdisp/elem_per_queue = 15000

rfc/use_wp_instead_of_pid = 3600

dbs/ora/tnsname = //infra-oclcpshp601-prod-scan:1531/AS_C3

INSTANCE_NAME = D36

rdisp/frfc_fallback = on

rdisp/max_wprun_time = 3600

rdisp/vb_dispatching = 0

rdisp/vbname = noeyy205_HP6_36

sapgui/theme = ENJOY

SAPSYSTEM = 36

SAPSYSTEMNAME = HP6

DIR_CT_RUN = $(DIR_EXE_ROOT)/run

DIR_DATA = /usr/sap/HP6/D36/data

DIR_EXECUTABLE = $(DIR_INSTANCE)/exe

DIR_PROFILE = $(DIR_INSTALL)/profile

DIR_PAGING = /usr/sap/HP6/D36/data

DIR_REORG = /usr/sap/HP6/D36/data

DIR_ROLL = /usr/sap/HP6/D36/data

DIR_SORTTMP = /usr/sap/HP6/D36/data

exe/saposcol = $(DIR_CT_RUN)/saposcol

exe/icmbnd = $(DIR_CT_RUN)/icmbnd

rdisp/wp_no_btc = 26

rdisp/wp_no_dia = 160

rdisp/wp_no_spo = 3

rdisp/wp_no_vb = 15

rdisp/wp_no_vb2 = 10

icm/keep_alive_timeout = 90

icm/max_threads = 300

icm/min_threads = 200

icm/req_queue_len = 1000

icm/server_port_0 = PROT=HTTP,PORT=80$$,TIMEOUT=0,PROCTIMEOUT=600

icm/server_port_1 = PROT=HTTPS, PORT=53601, SSLCONFIG=ssl_config_1, PROCTIMEOUT=600

icm/ssl_config_1 = VCLIENT=0, CRED=/usr/sap/HP6/D36/sec/SAPSSLS_SWD.pse

icm/HTTPS/verify_client = 0

icm/plugin_2 = PROT=HTTPS,PLG=/usr/sap/HP6/SYS/exe/run/libsapcrypto.so

sec/libsapsecu = $(DIR_EXECUTABLE)/libsapcrypto.so

ssf/name = SAPSECULIB

ssf/ssfapi_lib = $(DIR_EXECUTABLE)/libsapcrypto.so

ssl/ssl_lib = $(DIR_EXECUTABLE)/libsapcrypto.so

ipc/shm_psize_10 = 918000000

ipc/shm_psize_30 = -10

ipc/shm_psize_40 = 170000000

ipc/shm_psize_62 = -10

icm/host_name_full = noeyy205.noe.edf.fr

SAPLOCALHOSTFULL = noeyy205.noe.edf.fr

eg2/max_extend_size_MB = 4

rdisp/max_jvm = WEB=DEFAULT, REM=60

vmcj/enable = on

vmcj/inline_lock_loops = 600

vmcj/max_inline_sleeps = NORMAL=1200,ROLL_OUT=10

vmcj/memory_isolation = 0

vmcj/option/extMTX = share

vmcj/option/gc/sharedGCPrecision = 1000n

vmcj/option/internLock = 1

vmcj/option/internTable = 1

vmcj/option/jit/sharedCodeCacheSize = 64M

vmcj/option/maxJavaHeap = 350M

vmcj/option/ps = 2500M

vmcj/option/scnLock = 3

vmcj/option/tmpHashtable = 1

vmcj/sgc_options = TEMPLATE_CLEANUP

vmcj/waitForVmTime = 60

Thanks in advance.

former_member188883
Active Contributor
0 Kudos

Hi Majda,

Do you have your SAP system on high availability ?

If yes , then you need to look for ASCS start and instance profile to check for message server host.

Hope this helps.

Regards,

Deepak Kori

Reagan
Advisor
Advisor
0 Kudos

Did you check the DEFAULT.PFL profile for the parameter rdisp/mshost ?

Regards

RB

Former Member
0 Kudos

Yes, of course, I found Message server on ASCS profile.

But, my question is : how Application server know which is his message server ?

As, you see in his profile, nothing relates it to any message server ....

And, our applications servers are all in remote host, so I'm wordering how they know their message server ...

Thank for your replies. 🙂

Former Member
0 Kudos

thank you veru much !!

DEFAULT.PFL contains the necessary information to identify its message server:

               rdisp/mshost = ********

               rdisp/msserv = *********

Thank you again for you help and the time spending to assist me.

Very kind. 🙂 🙂

Former Member
0 Kudos

Just a last question :  ( I spend friday and this mornig to found a manner to obtain a list af java server, without sucess).

How can we list all java application server managed by a message server ?

It's easy for ABAP application server, all these unix commands return all APAB AS :

          # msclients name=HP6 -l

          # msprot name=HP6 -l

          # msmon  name=HP6

But, for JAVA AS, none of them works !

Our Java AS are managed separatly by a standalone message server, and here the profiles of the Java message server :

START_SCS27_cpsnjxba-vip0

START_SCS27_cpsnjxba-vip0 | grep -v "^#" | grep -v "^$"

SAPSYSTEMNAME = HP7

SAPSYSTEM = 27

INSTANCE_NAME = SCS27

DIR_CT_RUN =  $(DIR_EXE_ROOT)/$(OS_UNICODE)/rs6000_64

DIR_EXECUTABLE = $(DIR_INSTANCE)/exe

DIR_PROFILE = $(DIR_INSTALL)/profile

SAPLOCALHOST = cpsnjxba-vip0

_PF=/usr/sap/HP7/SYS/profile/HP7_SCS27_cpsnjxba-vip0

Execute_00=immediate $(DIR_CT_RUN)/sapcpe$(FT_EXE) pf=$(_PF) list:$(DIR_CT_RUN)/scs.lst

_MS=ms.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_01=local rm -f $(_MS)

Execute_02=local ln -s -f $(DIR_EXECUTABLE)/msg_server$(FT_EXE) $(_MS)

Start_Program_00=local $(_MS) pf=$(_PF)

_EN=en.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_03=local rm -f $(_EN)

Execute_04=local ln -s -f $(DIR_EXECUTABLE)/enserver $(_EN)

Start_Program_01=local $(_EN) pf=$(_PF)

_GW=gw.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)

Execute_05=local rm -f $(_GW)

Execute_06=local ln -s -f $(DIR_EXECUTABLE)/gwrd$(FT_EXE) $(_GW)

Start_Program_02=local $(_GW) pf=$(_PF) -no_abap

DIR_LIBRARY=$(DIR_INSTANCE)/exe

rdisp/msserv = 0

rdisp/msserv_internal = 3927

cat HP7_SCS27_cpsnjxba-vip0

SAPSYSTEMNAME = HP7

SAPSYSTEM = 27

INSTANCE_NAME = SCS27

DIR_CT_RUN =  $(DIR_EXE_ROOT)/run

DIR_EXECUTABLE = $(DIR_INSTANCE)/exe

DIR_PROFILE = $(DIR_INSTALL)/profile

SAPLOCALHOST = cpsnjxba-vip0

OS_UNICODE = uc

rdisp/mshost = cpsnjxba-vip0

enque/serverhost = cpsnjxba-vip0

rdisp/msserv = 0

rdisp/msserv_internal = 3927

ms/standalone = 1

ms/server_port_0 = PROT=HTTP,PORT=81$$

enque/server/max_requests = 3700

enque/server/max_query_requests = 3000

enque/server/max_clients = 2000

enque/serverinst = 27

enque/snapshot_pck_ids  = 100

enque/table_size = 38000

rdisp/queue_lock_level = 2

rdisp/enqname = $(rdisp/myname)

enque/deque_wait_answer = true

enque/process_location = LOCAL

enque/server/internal_replication = true

enque/server/replication = true

enque/enrep/keepalive_count = 0

enque/server/threadcount = 1

ipc/shm_psize_34 = 0

sec/libsapsecu  = $(DIR_EXECUTABLE)$(DIR_SEP)$(FT_DLL_PREFIX)sapsecu$(FT_DLL)

ssf/ssfapi_lib = $(sec/libsapsecu)

Sorry if my question is simple, but I spend a lot of time and try many things without sucess....

Thank you in advance.

Reagan
Advisor
Advisor
0 Kudos

How can we list all java application server managed by a message server ?

Every instance will have its instance profile in the profile directory /sapmnt/SID/profile. So you can check the profiles present there. Also you should be able to see the J2EE AS's from the nwa link.

Regards

RB

Former Member
0 Kudos

Thank you very much.

Answers (0)