Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

Thông soi kèo bóng đá truoctran

Thông soi kèo bóng đá truoctran - Tạo thông soi kèo bóng đá truoctran

Synopsis

Thông soi kèo bóng đá truoctrankênh[,tải trọng]

Mô tả

TheThông soi kèo bóng đá truoctranLệnh gửi một sự kiện thông soi kèo bóng đá truoctran cùng với tùy chọnTải trọngxôngChuỗi cho mỗi ứng dụng khách đã được thực hiện trước đónghekênhĐối với tên kênh được chỉ định trong cơ sở dữ liệu hiện tại. Thông soi kèo bóng đá truoctran có thể hiển thị cho tất cả người dùng.

Thông soi kèo bóng đá truoctranCung cấp một cơ chế giao tiếp chuyên khoa đơn giản cho một tập hợp các quy trình truy cập cùngPostgreSQLCơ sở dữ liệu. Một chuỗi tải trọng có thể được gửi cùng với thông soi kèo bóng đá truoctran và các cơ chế cấp cao hơn để truyền dữ liệu có cấu trúc có thể được xây dựng bằng cách sử dụng các bảng trong cơ sở dữ liệu để truyền dữ liệu bổ sung từ trình thông soi kèo bóng đá truoctran cho người nghe.

Thông tin được chuyển cho máy khách cho sự kiện thông soi kèo bóng đá truoctran bao gồm tên kênh thông soi kèo bóng đá truoctran, quy trình máy chủ của phiên thông soi kèo bóng đá truoctranPIDvà Chuỗi tải trọng, là một chuỗi trống nếu nó chưa được chỉ định.

Tùy thuộc vào nhà thiết kế cơ sở dữ liệu để xác định các tên kênh sẽ được sử dụng trong một cơ sở dữ liệu nhất định và mỗi cái có nghĩa là gì. Thông thường, tên kênh giống như tên của một số bảng trong cơ sở dữ liệu và sự kiện thông soi kèo bóng đá truoctran về cơ bản có nghĩa là,Tôi đã thay đổi bảng này, hãy xem nó để xem có gì mới. Nhưng không có hiệp hội nào được thi hành bởiThông soi kèo bóng đá truoctrannghelệnh. Ví dụ, một nhà thiết kế cơ sở dữ liệu có thể sử dụng một số tên kênh khác nhau để soi kèo bóng đá truoctran hiệu các loại thay đổi khác nhau cho một bảng.

KhiThông soi kèo bóng đá truoctranđược sử dụng để soi kèo bóng đá truoctran hiệu sự xuất hiện của các thay đổi đối với một bảng cụ thể, một kỹ thuật lập trình hữu ích là đặtThông soi kèo bóng đá truoctranTrong một trình kích hoạt câu lệnh được kích hoạt bởi các bản cập nhật bảng. Theo cách này, thông soi kèo bóng đá truoctran xảy ra tự động khi bảng được thay đổi và lập trình viên ứng dụng không thể vô tình quên làm điều đó.

Thông soi kèo bóng đá truoctrantương tác với các giao dịch SQL theo một số cách quan trọng. Đầu tiên, nếu mộtThông soi kèo bóng đá truoctranđược thực hiện bên trong một giao dịch, các sự kiện thông soi kèo bóng đá truoctran không được gửi cho đến khi và trừ khi giao dịch được thực hiện. Điều này là phù hợp, vì nếu giao dịch bị hủy bỏ, tất cả các lệnh trong đó không có hiệu lực, bao gồmThông soi kèo bóng đá truoctran. Nhưng nó có thể gây khó chịu nếu người ta mong đợi các sự kiện thông soi kèo bóng đá truoctran sẽ được gửi ngay lập tức.Lấy lạiMột thông soi kèo bóng đá truoctran một khi nó đã gửi nó cho máy khách. Vì vậy, các sự kiện thông soi kèo bóng đá truoctran chỉ được cung cấp giữa các giao dịch.Thông soi kèo bóng đá truoctranĐể tín hiệu thời gian thực nên cố gắng giữ ngắn gọn các giao dịch của họ.

Nếu cùng một tên kênh được soi kèo bóng đá truoctran hiệu nhiều lần từ cùng một giao dịch với chuỗi tải trọng giống hệt nhau, máy chủ cơ sở dữ liệu chỉ có thể quyết định chỉ cung cấp một thông soi kèo bóng đá truoctran duy nhất. Mặt khác, các thông soi kèo bóng đá truoctran với chuỗi tải trọng riêng biệt sẽ luôn được gửi dưới dạng thông soi kèo bóng đá truoctran khác biệt.Thông soi kèo bóng đá truoctranĐảm bảo rằng các thông soi kèo bóng đá truoctran từ cùng một giao dịch được thực hiện theo thứ tự chúng được gửi. Nó cũng được đảm bảo rằng các tin nhắn từ các giao dịch khác nhau được gửi theo thứ tự các giao dịch đã thực hiện.

Nó là phổ biến cho một máy khách thực thiThông soi kèo bóng đá truoctranĐể nghe trên cùng một kênh thông soi kèo bóng đá truoctran. Trong trường hợp đó, nó sẽ lấy lại một sự kiện thông soi kèo bóng đá truoctran, giống như tất cả các phiên nghe khác.PID(được cung cấp trong thông soi kèo bóng đá truoctran sự kiện thông soi kèo bóng đá truoctran) giống như phiên của chính mìnhPID(Có sẵn từlibpq). Khi chúng giống nhau, sự kiện thông soi kèo bóng đá truoctran là công việc của riêng mình nảy trở lại và có thể bị bỏ qua.

tham số

kênh

Tên của kênh thông soi kèo bóng đá truoctran được soi kèo bóng đá truoctran hiệu (bất kỳ định danh nào).

tải trọng

Thetải trọngHồiChuỗi được giao tiếp cùng với thông soi kèo bóng đá truoctran. Điều này phải được chỉ định là một chuỗi đơn giản.

Ghi chú

Có một hàng đợi giữ các thông soi kèo bóng đá truoctran đã được gửi nhưng chưa được xử lý bởi tất cả các phiên nghe. Nếu hàng đợi này trở nên đầy đủ, các giao dịch gọiThông soi kèo bóng đá truoctranSẽ thất bại khi cam kết. Hàng đợi khá lớn (8GB trong một cài đặt tiêu chuẩn) và phải đủ kích thước cho hầu hết mọi trường hợp sử dụng.nghevà sau đó nhập một giao dịch trong một thời gian rất dài. Khi hàng đợi đầy đủ một nửa, bạn sẽ thấy các cảnh soi kèo bóng đá truoctran trong tệp nhật ký sẽ chỉ cho bạn vào phiên ngăn chặn việc dọn dẹp.

hàmpg_notification_queue_usageTrả về tỷ lệ hàng đợi hiện đang bị chiếm bởi các thông soi kèo bóng đá truoctran đang chờ xử lý. Nhìn thấyPhần 9.25Để biết thêm thông tin.

Một giao dịch đã thực hiệnThông soi kèo bóng đá truoctranKhông thể chuẩn bị cho cam kết hai pha.

pg_notify

Để gửi thông soi kèo bóng đá truoctran, bạn cũng có thể sử dụng chức năngpg_notify(Text, Text). Hàm lấy tên kênh làm đối số đầu tiên và tải trọng là thứ hai.Thông soi kèo bóng đá truoctranLệnh nếu bạn cần làm việc với tên và tải trọng kênh không liên tục.

Ví dụ

Định cấu hình và thực hiện trình tự nghe/thông soi kèo bóng đá truoctran từPSQL:

Nghe ảo;

Tương thích

Không cóThông soi kèo bóng đá truoctranCâu lệnh trong tiêu chuẩn SQL.

Xem thêm

nghe, Unlisten