PostgreSQL: | |||
---|---|---|---|
Prev | UP | Chương 47. Tổng quan về PostgreSQL Internals | Tiếp theo |
PostgreSQLđược triển khai bằng soi kèo bóng đá truoctran sử dụng đơn giản"Quá trình mỗi người dùng"Mô hình máy khách/máy chủ. Trong mô hình này có mộtQuy trình khách hàngđược soi kèo bóng đá truoctran với chính xác mộtQuy trình máy chủ. Vì chúng ta không biết trước có bao nhiêu soi kèo bóng đá truoctran, chúng ta phải sử dụngQuy trình chínhsinh ra quy trình máy chủ mới mỗi khi yêu cầu soi kèo bóng đá truoctran. Quy trình chính này được gọi làPostgresvà lắng nghe tại một cổng TCP/IP được chỉ định cho các kết nối đến. Bất cứ khi nào yêu cầu soi kèo bóng đá truoctran phát hiệnPostgresQuy trình sinh ra một quy trình máy chủ mới. Các tác vụ máy chủ liên lạc với nhau bằng soi kèo bóng đá truoctran sử dụngSemaphoresvàBộ nhớ chia sẻĐể đảm bảo tính toàn vẹn dữ liệu trong suốt truy cập dữ liệu đồng thời.
Quy trình khách hàng có thể là bất kỳ chương trình nào hiểuPostgreSQLGiao thức được mô tả trongChương 4912126_12179libpq, nhưng một số triển khai độc soi kèo bóng đá truoctran của giao thức tồn tại, chẳng hạn như JavaJDBCtrình điều khiển.
Sau khi soi kèo bóng đá truoctran lập, quy trình máy khách có thể gửi truy vấn đếnphụ trợ(máy chủ). Truy vấn được truyền bằng văn bản thuần túy, tức là không có phân tích cú pháp trongFrontend(máy khách). Máy chủ phân tích truy vấn, tạo mộtKế hoạch thực thi, thực hiện kế hoạch và trả về các hàng được truy xuất cho máy khách bằng cách truyền chúng qua soi kèo bóng đá truoctran đã thiết lập.