{"id":4027,"date":"2018-07-02T13:28:38","date_gmt":"2018-07-02T04:28:38","guid":{"rendered":"http:\/\/haisins.epac.to\/wordpress\/?p=4027"},"modified":"2018-07-02T13:28:38","modified_gmt":"2018-07-02T04:28:38","slug":"oracle-dcd-dead-connection-detection-%ec%84%a4%ec%a0%95","status":"publish","type":"post","link":"http:\/\/haisins.synology.me\/wordpress\/?p=4027","title":{"rendered":"Oracle DCD (Dead Connection Detection) \uc124\uc815"},"content":{"rendered":"<p><b>DCD(Dead Connection Detection)\uc124\uc815\u00a0<\/b><\/p>\n<p>1. Client\uc758 user process\uac00 \ube44\uc815\uc0c1\uc801\uc73c\ub85c \uc885\ub8cc\ub418\uc5c8\uc744 \uacbd\uc6b0, Oracle Server Process\ub294 dead\u00a0connection\uc744 detection\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0, \uc138\uc158\uc774 \uadf8\ub300\ub85c \ub0a8\uc544\uc788\uc744 \uc218 \uc788\ub2e4.<\/p>\n<p>2. Dead Connection Detection\uc744 \uc124\uc815\ud558\uc5ec, 10\ubd84(\uad8c\uc7a5\uac12)\ub0b4\uc5d0 probe packet\uc5d0 \ub300\ud55c \uc751\ub2f5\uc744\u00a0\ubc1b\uc9c0 \uc54a\uc744 \uacbd\uc6b0, Dead Connection\uc73c\ub85c \ud310\ub2e8\ud558\uace0 pmon process\uac00 session cleanup\uc744<\/p>\n<p>\ud560\u00a0\uc218 \uc788\ub3c4\ub85d \ud55c\ub2e4.<\/p>\n<p>3.\u00a0\uc870\uce58\ubc29\ubc95<\/p>\n<p>sqlnet.ora \ud30c\uc77c\uc5d0 \uc544\ub798\ub97c \uc124\uc815 \ud55c \uc774\ud6c4\uc5d0 \ub9ac\uc2a4\ub108\ub97c \uc7ac\uae30\ub3d9 \ud55c\ub2e4.<\/p>\n<p>SQLNET.EXPIRE_TIME=10<\/p>\n<p>\ub9ac\uc2a4\ub108\ub294 \uc7ac\uae30\ub3d9\uc744 \ud558\ub354\ub77c\ub3c4 \uc811\uc18d\ub41c \uc138\uc158\uc5d0\ub294 \uc601\ud5a5\uc744 \uc8fc\uc9c0 \uc54a\ub294\ub2e4. \ub2e8, \uc7ac\uae30\ub3d9\u00a0\uc911\uc5d0 \uc0c8\ub86d\uac8c \uc811\uc18d\ud558\ub294 \uc138\uc158\uc740 \uc811\uc18d\uc774 \ubd88\uac00\ub2a5\ud558\ub2e4. \uac12\uc740 10\uc774 \uad8c\uc7a5\uac12\uc774\uba70\u00a010\ubd84 \uc744 \ub73b\ud55c\ub2e4.<\/p>\n<p><b>\ub2e8, \ud14c\uc2a4\ud2b8 \uc2dc\uc2a4\ud15c \uc801\uc6a9 \ud6c4\uc5d0 \ubaa8\ub4e0 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ubb38\uc81c\uac00 \uc5c6\ub2e4\ub77c\uace0\u00a0\ud655\uc778\ub418\uc5c8\uc744 \ub54c\uc5d0\ub9cc, \uc2e4\uc2dc\uc2a4\ud15c\uc5d0 \uc801\uc6a9\ud574\uc57c \ud55c\ub2e4.<\/b><\/p>\n<p>*. \uad00\ub828\ub178\ud2b8<\/p>\n<p>Note 1018160.6 Common Questions About Dead Connection Detection (DCD)<\/p>\n<p>Q: What is Dead Connection Detection?<\/p>\n<p>A: Dead Connection Detection (DCD) allows SQL*Net\/Net8 to identify connections<\/p>\n<p>that have been left hanging by the abnormal termination of a client. This<\/p>\n<p>feature minimizes the waste of resources by connections that are no longer<\/p>\n<p>valid. It also automatically forces a rollback of uncommitted transactions<\/p>\n<p>Q: How does Dead Connection Work?<\/p>\n<p>A: On a connection with DCD enabled, a small probe packet is sent from server<\/p>\n<p>to client at a user defined interval (usually several minutes). If the<\/p>\n<p>connection is invalid (usually due to the client process or machine being<\/p>\n<p>unreachable), the connection is closed when an error is generated by the send<\/p>\n<p>operation, and the server process terminates the connection.<\/p>\n<p>Q: How do you set the Dead Connection Detection feature?<\/p>\n<p>A: DCD is enabled on the server side of the connection by defining a parameter<\/p>\n<p>in the sqlnet.ora file in $ORACLE_HOME\/network\/admin called<\/p>\n<p>sqlnet.expire_time.\u00a0<b>This parameter determines the time period between<\/b><\/p>\n<p><b>successive probe packets across a connection between client and server.<\/b><\/p>\n<p><b>SQLNET.EXPIRE_TIME= &lt;# of minutes&gt;<\/b><\/p>\n<p>The sqlnet.expire_time parameter is defined in minutes and can have any value<\/p>\n<p>between 1 and an infinite number. If it is not defined in the sqlnet.ora<\/p>\n<p>file, DCD is not used. A time of 10 minutes is probably optimum for most<\/p>\n<p>applications.<\/p>\n<p>DCD probe packets originate on the server side, so it must be enabled on the\u00a0server side. If you define sqlnet.expire_time on the client side, it will be\u00a0ignored.<\/p>\n<p>*. SQLNET.EXPIRE_TIME \uc124\uba85<\/p>\n<p>Purpose<\/p>\n<p>Use parameter SQLNET.EXPIRE_TIME to specify a the time interval, in minutes, to send a<\/p>\n<p>probe to verify that client\/server connections are active. Setting a value greater than 0 ensures<\/p>\n<p>that connections are not left open indefinitely, due to an abnormal client termination. If the probe<\/p>\n<p>finds a terminated connection, or a connection that is no longer in use, it returns an error,<\/p>\n<p>causing the server process to exit. This parameter is primarily intended for the database server,<\/p>\n<p>which typically handles multiple connections at any one time.<\/p>\n<p>Limitations on using this terminated connection detection feature are:<\/p>\n<p>It is not allowed on bequeathed connections.<\/p>\n<p>Though very small, a probe packet generates additional traffic that may downgrade network\u00a0performance.<\/p>\n<p>Depending on which operating system is in use, the server may need to perform additional<\/p>\n<p>processing to distinguish the connection probing event from other events that occur. This can<\/p>\n<p>also result in degraded network performance.<\/p>\n<p>Default<\/p>\n<p>0<\/p>\n<p>Minimum Value<\/p>\n<p>0<\/p>\n<p>Recommended Value<\/p>\n<p>10<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>DCD(Dead Connection Detection)\uc124\uc815\u00a0 1. Client\uc758 user process\uac00 \ube44\uc815\uc0c1\uc801\uc73c\ub85c \uc885\ub8cc\ub418\uc5c8\uc744 \uacbd\uc6b0, Oracle Server Process\ub294 dead\u00a0connection\uc744 detection\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0, \uc138\uc158\uc774 \uadf8\ub300\ub85c \ub0a8\uc544\uc788\uc744 \uc218 \uc788\ub2e4. 2. Dead Connection Detection\uc744 \uc124\uc815\ud558\uc5ec, 10\ubd84(\uad8c\uc7a5\uac12)\ub0b4\uc5d0 probe packet\uc5d0 \ub300\ud55c \uc751\ub2f5\uc744\u00a0\ubc1b\uc9c0 \uc54a\uc744 \uacbd\uc6b0, Dead Connection\uc73c\ub85c \ud310\ub2e8\ud558\uace0 pmon process\uac00 session cleanup\uc744 \ud560\u00a0\uc218 \uc788\ub3c4\ub85d \ud55c\ub2e4. 3.\u00a0\uc870\uce58\ubc29\ubc95 sqlnet.ora \ud30c\uc77c\uc5d0 \uc544\ub798\ub97c \uc124\uc815 \ud55c \uc774\ud6c4\uc5d0 \ub9ac\uc2a4\ub108\ub97c \uc7ac\uae30\ub3d9 \ud55c\ub2e4. SQLNET.EXPIRE_TIME=10 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3403,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"spay_email":""},"categories":[9],"tags":[31,1110],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/haisins.synology.me\/wordpress\/wp-content\/uploads\/2018\/02\/Bild-Flyer-Know-how.jpg?fit=1000%2C563","amp_enabled":true,"_links":{"self":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4027"}],"collection":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4027"}],"version-history":[{"count":1,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4027\/revisions"}],"predecessor-version":[{"id":4028,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4027\/revisions\/4028"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/media\/3403"}],"wp:attachment":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4027"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}