زمانی که کاربر بک برنامه Pro*C یا برنامه SQL*PLUS را اجرا می کند سیستم عامل بک Client Processes یا اصطلاحا User Process برای اجرای برنامه ایجاد می کند. برنامه کلاینت از طریق Oracle Database Libraries به یک سری API مورد نیاز برای ارتباط با Database استفاده می کند.

Client and Server Processes

Client Processes تفاوت های زیادی با Oracle Processes در راه های مختلف که بصورت مسقیم به Instance ارتباط برقرار کنند.

Oracle Processes تمامی Client Processes را در حافظه SGA و خوانده و مدیریت می کند در حالیکه Client Processes نمی تواند همچین کاری بکند. و همچنین یک Client Processes می تواند بر روی HOST و با Database Host اجرا شود درحالیکه Oracle Processes نمی تواند همچین کاری کند.

clientProcesses

Connections and Sessions

یک Database Connection راه ارتباطی فیزیکی بین یک Client Processes و Database Instance می باشد.

Connection می تواند ارتباط بین client process و server process یا dispatcher باشد اما می تواند این ارتباط بین client process و Oracle Connection Manager (CMAN) باشد.

یک Database Session درواقع یک موجودیت منطقی در database instance memory که وضعیت کاربری که در حال حاضر به دیتابیس ارتباط دارد را نمایش می دهد. برای مثال زمانی که بک کاربر یا نام کاربری و کلمه عبور به دیتابیس ارتباط برقرار می کند و authenticated انجام می شود یک session به کاربر تولید و اختصاص داده می شود و این session تا زمانی که کاربر ارتباط با دیتابیس را قطع کند یا از برنامه database خارج شود وجود دارد.

یک Single Connection می تواند ۰ . ۱ یا چندین Session داشته باشد. Session ها کاملا مستقل از هم هستند و کار می کنند. در یک session تا زمانی Commit انجام نشود در Transaction های سایر session ها هیچ تاثیری ندارد.

چندین Session بصورت همزمان برای single database user می تواند وجود داشته باشد.

درارتباطات سرورهای اختصاصی Dedicated Server دیتابیس برای هر Connection یک Server Process ایجاد می کند و فقط یک Client Process می تواند از آن Connection اسنفاده کند

در ارتباطات سرورهای اشتراکی Shared Server چندین Client Process به single Shared server Process دسترسی داشته باشد.

Session1
One Session for Each Connection
Session2
Two Session in One Connection

اطلاعات بیشتر در مورد این مطلب : آشنایی با Client Processes