Results 1 to 14 of 14
  1. #1
    Join Date
    Dec 2003
    Posts
    1,074

    Unanswered: shared vs dedicated server

    Any reason to select one over the other?

    The reason I'm asking is because two texts that I have which were not written by Oracle suggest using dedicated server processes, while all of the Oracle-written texts suggest shared (although I did finally find a note which mentions "NOTE:...if your machine has plenty of memory to support dedicated servers, you should use that approach. In this situation, performance is likely to be better.")

    -cf

  2. #2
    Join Date
    Oct 2003
    Location
    Slovakia
    Posts
    482

    Re: shared vs dedicated server

    Originally posted by chuck_forbes
    Any reason to select one over the other?

    The reason I'm asking is because two texts that I have which were not written by Oracle suggest using dedicated server processes, while all of the Oracle-written texts suggest shared (although I did finally find a note which mentions "NOTE:...if your machine has plenty of memory to support dedicated servers, you should use that approach. In this situation, performance is likely to be better.")

    -cf
    The choice depends on number of concurent sessions.

    If you have less than 1000 concurent sessions to database then stay on dedicated server but if you have more than 1000 concurent sessions choose shared server.
    There are many features in shared server such as connection pooling.
    Check documentation about features and advantages of shared server architecture.

  3. #3
    Join Date
    Jul 2003
    Posts
    2,296
    most app servers can do their own connection pooling while
    oracle is in dedicated mode.

    when dealing with firewalls (ie: your db server is outside the firewall) in
    many cases you will need to be in MTS mode
    - The_Duck
    you can lead someone to something but they will never learn anything ...

  4. #4
    Join Date
    Dec 2003
    Posts
    1,074
    The_duck,

    Could you explain your comment a bit more? Unfortunatly, I need some more clarification to understand your post.

    Thanks,
    Chuck

  5. #5
    Join Date
    Oct 2003
    Location
    Slovakia
    Posts
    482
    Originally posted by The_Duck
    most app servers can do their own connection pooling while
    oracle is in dedicated mode.

    when dealing with firewalls (ie: your db server is outside the firewall) in
    many cases you will need to be in MTS mode
    Yes, but for example our site is in PHP which doesn't know connection pooling.
    Connection pooling is just one of many features which shared server is providing.

    <snip>
    when dealing with firewalls (ie: your db server is outside the firewall) in
    many cases you will need to be in MTS mode
    </snip>

    I don't think so. Our databases is outside firewall and there is not shared server (MTS) needed. It is the same but if you are using the shared server then you need to setup range of ports (on firewall) which depends on numer of dispatchers. You are right there are SOME cases when you need to use shared server but not in this (outside fw) case.
    Last edited by ika; 03-12-04 at 14:38.

  6. #6
    Join Date
    Jan 2004
    Location
    India
    Posts
    113
    In a Dedicated server configuration
    there will be a server process for each user process ie 100 user pocess would be served by 100 server process.

    In a MTS or shared server config
    there are some server processes specified those will be shared among the user processes.

    Thus RESOURCE becomes a keyfactor while choosing between the two.

    Kaushik

  7. #7
    Join Date
    Oct 2009
    Posts
    3
    Hello Friends,
    How to find out the oracle database is using only shared servers.
    I want to completly disable the dedicated servers.
    I increased the SHared_servers=400
    but do not know if the connections are using shared servers.

    Thank you

  8. #8
    Join Date
    Dec 2003
    Posts
    1,074
    Code:
    select username, server from v$session;
    If you see the name DEDICATED in the server column, then that session is using a DEDICATED connection.

    Note that some of your connections will remain dedicated, at least I'm pretty sure they do. Such as your connections from OEM. There are also situations where you want to connect DEDICATED, but it's been awhile for me, so maybe someone else can remember ... maybe ... the account which runs RMAN, and when you restart your database ...
    --=cf

  9. #9
    Join Date
    Oct 2009
    Posts
    3
    Thank you Chuck for the query.
    if the shared_servers =0, the query returned 32 rows with DEDICATED in the server column.

    After changing shared servers to 200 , server column still showing DEDICATED but it returned only 20 rows this time.

    How to make sure we are using only SHARED servers?
    can we disable the DEDICATED servers completely?

  10. #10
    Join Date
    Dec 2003
    Posts
    1,074
    I've got 1 solution, so keep your ears open for others, but if your TNSNAMES.ora (located on the client machines) files list DEDICATED in them specifically, it'll override your SHARED SERVER settings.

    Is that true in your case?

    BTW ... 30 users? Why SHARED SERVERS?

  11. #11
    Join Date
    Oct 2009
    Posts
    3
    I am using JBOss oracle-xa-ds.xml to provide the connection string.

    <connection-url>jdbcracle:thin:@(description=(address=(protocol=tcp)(h ost=simha-crm)(port=1521))(connect_data=(SID=MYCRM)))</connection-url>
    ================================================
    SQL> select username, server from v$session;

    USERNAME SERVER
    ------------------------------ ---------
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    CRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    MYCRM_JDBC DEDICATED
    DEDICATED
    JBOSSUSER DEDICATED

    USERNAME SERVER
    ------------------------------ ---------
    DEDICATED
    TESTCRM_JDBC DEDICATED
    DEDICATED
    SYS DEDICATED
    TESTCRM_JDBC DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED

    USERNAME SERVER
    ------------------------------ ---------
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED
    DEDICATED

    USERNAME SERVER
    ------------------------------ ---------
    DEDICATED

    34 rows selected.

  12. #12
    Join Date
    Dec 2003
    Posts
    1,074
    It's been awhile since we did this (and we've since gone back to DEDICATED), but if memory serves, you're also going to have to set an init_ora value for DISPATCHERS.

    Ours was set to

    Code:
    (protocol=tcp)(dispatchers=30)
    --=cf

  13. #13
    Join Date
    Jul 2012
    Posts
    1

    To find dedicated or shared server

    We can easily find whether your database is running in dedicated or shared server by the following command:

    ps -ef|grep $ORACLE_SID|grep d000

    If the above command shows any output then the database is running in shared server mode. Otherwise its running in dedicated mode.
    Note:
    *Replace $ORACLE_SID with your instance name
    *d000 is the dispatcher process

  14. #14
    Join Date
    Dec 2003
    Posts
    1,074
    This is going to sounds picky, but there is no "shared server mode" ... in reality, it's more of an enabling of shared servers. If DEDICATED is unspecified in your TNSNAMES.ora file, connections will begin using shared servers once you've changed your init parms.

    But in practice, once you've enabled MTS, you'll still have a mix of DEDICATED and SHARED connections.

    --=Chuck

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •