kèo bóng đá c1Đôi khi có thể làm cạn kiệt các giới hạn tài nguyên hệ điều hành khác nhau, đặc biệt là khi nhiều bản sao của máy chủ đang chạy trên cùng một hệ thống hoặc trong các cài đặt rất lớn. Phần này giải thích các kèo bóng đá c1 được sử dụng bởikèo bóng đá c1và các bước bạn có thể thực hiện để giải quyết các vấn đề liên quan đến tiêu thụ kèo bóng đá c1.
kèo bóng đá c1Yêu cầu hệ điều hành cung cấp giao tiếp giữa kèo bóng đá c1 quá trình (IPC) kèo bóng đá c1 tính năng, chia sẻ bộ nhớ và semaphores cụ thể. kèo bóng đá c1 hệ thống có nguồn gốc UNIX thường cung cấpSystem V IPC, HồiPOSIXHàng IPChoặc cả hai.WindowsCó triển khai riêng kèo bóng đá c1 tính năng này và không được thảo luận ở đây.
Theo mặc định,kèo bóng đá c1Phân bổ kèo bóng đá c1 lượng rất nhỏ bộ nhớ chia sẻ hệ thống V, cũng như kèo bóng đá c1 lượng lớn hơn nhiềuMMAP
Bộ nhớ chia sẻ. Ngoài ra, có thể sử dụng kèo bóng đá c1 vùng bộ nhớ chia sẻ hệ thống V hệ thống lớn (xemshared_memory_type). Ngoài ra, một số lượng đáng kể kèo bóng đá c1 semaphores, có thể là kiểu hệ thống V hoặc POSIX, được tạo tại máy chủ khởi động. Hiện tại, Semaphores Posix được sử dụng trên kèo bóng đá c1 hệ thống Linux và FreeBSD trong khi kèo bóng đá c1 nền tảng khác sử dụng System V Semaphores.
System VIPCkèo bóng đá c1 tính năng thường bị hạn chế bởi kèo bóng đá c1 giới hạn phân bổ toàn hệ thống. Khikèo bóng đá c1vượt quá một trong kèo bóng đá c1 giới hạn này, máy chủ sẽ từ chối bắt đầu và nên để lại thông báo lỗi hướng dẫn mô tả vấn đề và phải làm gì về nó. (Xem thêmPhần 18.3.1.) kèo bóng đá c1 tham số kernel có liên quan được đặt tên nhất quán trên kèo bóng đá c1 hệ thống khác nhau;Bảng 18.114489_14598
Bảng 18.1.System V IPCtham số
tên | Mô tả | kèo bóng đá c1 giá trị cần thiết để chạy mộtkèo bóng đá c1phiên bản |
---|---|---|
Shmmax |
Kích thước tối đa của phân đoạn bộ nhớ chia sẻ (byte) | ít nhất 1kb, nhưng mặc định thường cao hơn nhiều |
Shmmin |
Kích thước tối thiểu của phân đoạn bộ nhớ chia sẻ (byte) | 1 |
Shmall |
Tổng số lượng bộ nhớ chia sẻ có sẵn (byte hoặc trang) | giống nhưShmmax Nếu byte hoặcceil (shmmax/page_size) Nếu kèo bóng đá c1 trang, cộng với phòng cho kèo bóng đá c1 ứng dụng khác |
SHMSEG |
Số lượng phân đoạn bộ nhớ được chia sẻ tối đa cho mỗi quá trình | Chỉ cần 1 phân đoạn, nhưng mặc định cao hơn nhiều |
shmmni |
Số lượng phân đoạn bộ nhớ được chia sẻ tối đa toàn bộ hệ thống | nhưSHMSEG Plus Room cho kèo bóng đá c1 ứng dụng khác |
semmni |
Số lượng nhận dạng semaphore tối đa (tức là, bộ) | ít nhất16806_16906 Plus Room cho kèo bóng đá c1 ứng dụng khác |
semmns |
Số lượng tối đa của toàn bộ hệ thống | 17148_17253 Phòng cộng cho kèo bóng đá c1 ứng dụng khác |
semmsl |
Số lượng semaphores tối đa cho mỗi bộ | ít nhất 20 |
semmap |
Số lượng mục trong Bản đồ Semaphore | xem văn bản |
semvmx |
Giá trị tối đa của Semaphore | ít nhất 1000 (mặc định thường là 32767; không thay đổi trừ khi cần thiết) |
kèo bóng đá c118066_18403shared_memory_typevàDynamic_Shared_Memory_Type), có thể cần phải tăngShmall
, là tổng số lượng hệ thống v chung hệ thống bộ nhớ. Lưu ý rằngShmall
được đo bằng kèo bóng đá c1 trang thay vì byte trên nhiều hệ thống.
Ít có khả năng gây ra sự cố là kích thước tối thiểu cho kèo bóng đá c1 phân đoạn bộ nhớ được chia sẻ (Shmmin
), nên có nhiều nhất khoảng 32 byte chokèo bóng đá c1(thường chỉ là 1). Số lượng phân đoạn tối đa toàn bộ hệ thống (Shmmni
) hoặc trên mỗi quá trình (SHMSEG
19233_19309
Khi sử dụng System v Semaphores,kèo bóng đá c1Sử dụng kèo bóng đá c1 semaphore cho mỗi kết nối được phép (Max_Connections), cho phép quy trình công nhân tự động (autovacuum_max_workers), cho phép quy trình người gửi Wal (MAX_WAL_SENDERS) và cho phép quy trình nền (Max_Worker_Processes), trong kèo bóng đá c1 bộ 19. Mỗi bộ như vậy cũng sẽ chứa một semaphore thứ 20 có chứaHồisố ma thuậtxông, để phát hiện va chạm với kèo bóng đá c1 bộ semaphore được sử dụng bởi kèo bóng đá c1 ứng dụng khác. Số lượng semaphores tối đa trong hệ thống được đặt bởi20238_20246
, do đó phải cao ít nhất làMax_Connections
cộngautovacuum_max_workers
cộngMAX_WAL_SENDERS
, cộng vớiMax_Worker_Processes
, cộng với kèo bóng đá c1 thêm cho mỗi 19 kết nối được phép cộng với công nhân (xem công thức trongBảng 18.1). Tham sốsemmni
Xác định giới hạn về số lượng bộ semaphore có thể tồn tại trên hệ thống cùng kèo bóng đá c1 lúc. Do đó tham số này phải ít nhất20934_21034
21039_21163Không còn khoảng trống trên thiết bịxông, từ chức năngSemget
.
Trong kèo bóng đá c1 số trường hợp, cũng có thể cần phải tăngSEMMAP
ít nhất là theo thứ tựSEMMNS
. Nếu hệ thống có tham số này (nhiều người không), nó xác định kích thước của bản đồ kèo bóng đá c1 semaphore, trong đó mỗi khối tiếp giáp của các semaphores có sẵn cần một mục nhập. Khi một bộ semaphore được giải phóng, nó sẽ được thêm vào một mục hiện tại liền kề với khối được giải phóng hoặc nó được đăng ký dưới một mục bản đồ mới. Nếu bản đồ đầy, các semaphores được giải phóng sẽ bị mất (cho đến khi khởi động lại). Sự phân mảnh của không gian semaphore có thể theo thời gian dẫn đến ít semaphor có sẵn hơn nên có.
kèo bóng đá c1 cài đặt khác nhau liên quan đếnHồisemaphore undo, chẳng hạn nhưsemmnu
vàsemume
, không ảnh hưởngkèo bóng đá c1.
22233_22371Max_Connections), cho phép quy trình công nhân tự động (autovacuum_max_workers), cho phép quy trình người gửi Wal (MAX_WAL_SENDERS) và cho phép quy trình nền (Max_Worker_Processes). Trên kèo bóng đá c1 nền tảng mà tùy chọn này được ưa thích, không có giới hạn kernel cụ thể về số lượng semaphores POSIX.
Cài đặt bộ nhớ chia sẻ mặc định thường đủ tốt, trừ khi bạn đã đặtshared_memory_type
đếnSYSV
. System v semaphores không được sử dụng trên nền tảng này.
Cài đặt IPC mặc định có thể được thay đổi bằng cách sử dụngsysctl
hoặcTrình tải
Giao diện. kèo bóng đá c1 tham số sau có thể được đặt bằng cách sử dụngsysctl
:
#
sysctl kern.ipc.shmall = 32768
#
sysctl kern.ipc.shmmax = 134217728
Để làm cho kèo bóng đá c1 cài đặt này tồn tại trên kèo bóng đá c1 lần khởi động lại, sửa đổi/etc/sysctl.conf
.
Nếu bạn đã đặtshared_memory_type
đếnsysv
, bạn cũng có thể muốn định cấu hình kernel của mình để khóa hệ thống v bộ nhớ chia sẻ vào RAM và ngăn không cho nó được phân trang để hoán đổi. Điều này có thể được thực hiện bằng cách sử dụngsysctl
Cài đặtkern.ipc.shm_use_phys
.
Nếu chạy trong nhà tù FreeBSD, bạn nên đặt nósysvshm
tham số đếnmới
, do đó nó có không gian tên bộ nhớ chia sẻ hệ thống riêng của nó. .
Cài đặt bộ nhớ chia sẻ mặc định thường đủ tốt, trừ khi bạn đã đặtshared_memory_type
đếnsysv
. Bạn thường sẽ muốn tăngkern.ipc.semmni
vàkern.ipc.semmns
, nhưNetBSDCài đặt mặc định cho những thứ này là nhỏ kèo bóng đá c1 cách khó chịu.
25425_25464sysctl
, ví dụ:
#
sysctl -w kern.ipc.semmni = 100
Để làm cho kèo bóng đá c1 cài đặt này tồn tại trên khởi động lại, sửa đổi/etc/sysctl.conf
.
Nếu bạn đã đặtshared_memory_type
đếnSYSV
, bạn cũng có thể muốn định cấu hình kernel của mình để khóa hệ thống v bộ nhớ chia sẻ vào RAM và ngăn không cho nó được phân trang để hoán đổi. Điều này có thể được thực hiện bằng cách sử dụngsysctl
Cài đặtkern.ipc.shm_use_phys
.
Cài đặt bộ nhớ chia sẻ mặc định thường đủ tốt, trừ khi bạn đã đặtshared_memory_type
đếnsysv
. Bạn thường sẽ muốn tăngkern.seminfo.semmni
vàkern.seminfo.semmns
, nhưOpenBSDCài đặt mặc định cho những thứ này là nhỏ kèo bóng đá c1 cách khó chịu.
Thông số IPC có thể được điều chỉnh bằng cách sử dụngsysctl
, ví dụ:
#
sysctl kern.seminfo.semmni = 100
Để làm cho kèo bóng đá c1 cài đặt này tồn tại trên khởi động lại, sửa đổi/etc/sysctl.conf
.
Cài đặt bộ nhớ chia sẻ mặc định thường đủ tốt, trừ khi bạn đã đặtshared_memory_type
đếnSYSV
, và thậm chí sau đó chỉ trên kèo bóng đá c1 phiên bản kernel cũ được vận chuyển với mặc định thấp. System v semaphores không được sử dụng trên nền tảng này.
Cài đặt kích thước bộ nhớ được chia sẻ có thể được thay đổi thông quasysctl
Giao diện. Ví dụ: để cho phép 16 gb:
$
sysctl -w kernel.shmmax = 17179869184
$
sysctl -w kernel.shmall = 4194304
Để làm cho kèo bóng đá c1 cài đặt này tồn tại trên kèo bóng đá c1 lần khởi động lại, xem/etc/sysctl.conf
.
Bộ nhớ chia sẻ mặc định và cài đặt semaphore thường đủ tốt, trừ khi bạn đã đặtshared_memory_type
đếnsysv
.
Phương thức được đề xuất để định cấu hình bộ nhớ chia sẻ trong macOS là tạo kèo bóng đá c1 tệp có tên/etc/sysctl.conf
, chứa kèo bóng đá c1 bài tập biến như:
kern.sysv.shmmax = 4194304 kern.sysv.shmmin = 1 kern.sysv.shmmni = 32 kern.sysv.shmseg = 8 kern.sysv.shmall = 1024
Lưu ý rằng trong kèo bóng đá c1 số phiên bản macOS,Tất cả nămkèo bóng đá c1 tham số bộ nhớ chia sẻ phải được đặt trong/etc/sysctl.conf
, khác kèo bóng đá c1 giá trị sẽ bị bỏ qua.
Shmmax
Chỉ có thể được đặt thành bội số của 4096.
Shmall
được đo bằng 4 trang kb trên nền tảng này.
Có thể thay đổi tất cả trừShmmni
Khi đang bay, sử dụngsysctl. Nhưng tốt nhất là thiết lập kèo bóng đá c1 giá trị ưa thích của bạn thông qua/etc/sysctl.conf
, để kèo bóng đá c1 giá trị sẽ được giữ trên kèo bóng đá c1 lần khởi động lại.
Bộ nhớ chia sẻ mặc định và cài đặt semaphore thường đủ tốt cho hầu hếtkèo bóng đá c1Ứng dụng. Solaris mặc định làShmmax
của kèo bóng đá c1 phần tư hệ thốngRAM. Để điều chỉnh thêm cài đặt này, hãy sử dụng cài đặt dự án được liên kết vớiPostgres
Người dùng. Ví dụ: chạy như sauRoot
:
30284_30407
Lệnh này thêmuser.postgres
Dự án và đặt bộ nhớ được chia sẻ tối đa choPostgres
Người dùng đến 8GB và có hiệu lực vào lần tiếp theo mà người dùng đăng nhập hoặc khi bạn khởi động lạikèo bóng đá c1(không tải lại). Ở trên giả định rằngkèo bóng đá c1được chạy bởiPostgres
Người dùng trongPostgres
Nhóm. Không cần khởi động lại máy chủ.
Thay đổi cài đặt kernel được đề xuất khác cho kèo bóng đá c1 máy chủ cơ sở dữ liệu sẽ có số lượng lớn kết nối là:
Project.Max-Shm-ids = (Priv, 32768, Deny) Project.Max-Sem-ids = (Priv, 4096, Deny) Project.Max-MSG-IDS = (Priv, 4096, Deny)
Ngoài ra, nếu bạn đang chạykèo bóng đá c1Bên trong một khu vực, bạn cũng có thể cần phải tăng giới hạn sử dụng kèo bóng đá c1 khu vực. Xem "Chương2: Các dự án và nhiệm vụ" trongHướng dẫn của Quản trị viên Hệ thốngĐể biết thêm thông tin vềDự án
vàPRCTL
.
nếuSystemdđang được sử dụng, một số cần phải chú ý rằng kèo bóng đá c1 IPC (bao gồm cả bộ nhớ chia sẻ) không bị hệ điều hành loại bỏ sớm. Điều này đặc biệt là mối quan tâm khi cài đặt PostgreSQL từ nguồn. Người dùng gói phân phối của PostgreSQL ít có khả năng bị ảnh hưởng, vìPostgres
Người dùng sau đó thường được tạo dưới dạng người dùng hệ thống.
Cài đặtRemoveIpc
inlogind.conf
Kiểm soát xem kèo bóng đá c1 đối tượng IPC có bị xóa khi người dùng đăng xuất đầy đủ hay không. Người dùng hệ thống được miễn trừ. Cài đặt này mặc định là bật trong khosystemd32657_32719
32729_32962
Cảnh báo: Không thể xóa phân đoạn bộ nhớ được chia sẻ "/kèo bóng đá c11450751626": Không có tệp hoặc thư mục đó
kèo bóng đá c1 loại đối tượng IPC khác nhau (bộ nhớ chia sẻ so với Semaphores, System V so với POSIX) được xử lý hơi khác nhau bởisystemd, vì vậy người ta có thể quan sát rằng một số kèo bóng đá c1 IPC không bị xóa theo cách khác như những kèo bóng đá c1 khác. Nhưng không nên dựa vào những khác biệt tinh tế này.
AĐăng nhập người dùngKhănCó thể xảy ra như kèo bóng đá c1 phần của công việc bảo trì hoặc thủ công khi quản trị viên đăng nhập dưới dạngPostgres
33628_33694
A là gìNgười dùng hệ thốngđược xác định tạisystemdbiên dịch thời gian từSYS_UID_MAX
Cài đặt trong/etc/login.defs
.
33971_3403834058_34068
Người dùng làm người dùng hệ thống bằng cách sử dụnguserAdd -r
, adduser -system
hoặc tương đương.
Ngoài ra, nếu kèo bóng đá c1 khoản người dùng được tạo không chính xác hoặc không thể thay đổi, nên đặt
removeIpc = no
in34415_34441
hoặc tệp cấu hình thích hợp khác.
Ít nhất một trong hai điều này phải được đảm bảo hoặc máy chủ kèo bóng đá c1 sẽ không đáng tin cậy.
Hệ điều hành giống UNIX thực thi các loại giới hạn kèo bóng đá c1 khác nhau có thể can thiệp vào hoạt động của của bạnkèo bóng đá c1Máy chủ. Đặc biệt quan trọng là giới hạn về số lượng quy trình trên mỗi người dùng, số lượng tệp mở cho mỗi quy trình và lượng bộ nhớ có sẵn cho mỗi quy trình. Mỗi trong số này có kèo bóng đá c1Hardvà ASoft35442_35616SetRlImit
chịu trách nhiệm đặt kèo bóng đá c1 tham số này. Lệnh tích hợp của shellUlimit
(vỏ Bourne) hoặcGiới hạn
(CSH) được sử dụng để kiểm soát các giới hạn kèo bóng đá c1 từ dòng lệnh. Trên các hệ thống có nguồn gốc BSD, tệp/etc/login.conf
Kiểm soát các giới hạn kèo bóng đá c1 khác nhau được đặt trong quá trình đăng nhập. Xem tài liệu hệ điều hành để biết chi tiết. Các tham số có liên quan làMaxProc
, OpenFiles
vàDataSize
. Ví dụ:
Mặc định: \ ... : datasize-cur = 256m: \ : MaxProc-Cur = 256: \ : OpenFiles-Cur = 256: \ ...
(-cur
là giới hạn mềm. ỨNG DỤNG-Max
Để đặt giới hạn cứng.)
Hạt nhân cũng có thể có giới hạn toàn hệ thống trên một số kèo bóng đá c1.
trênLinuxTham số kernelfs.file-Max
36854_36954sysctl -w fs.file -max =
. Để làm cho cài đặt vẫn tồn tại trên kèo bóng đá c1 lần khởi động lại, hãy thêm một bài tập trongn
/etc/sysctl.conf
. Giới hạn tối đa của kèo bóng đá c1 tệp cho mỗi quá trình được cố định tại thời điểm hạt nhân được biên dịch; nhìn thấy/usr/src/linux/documentation/proc.txt
Để biết thêm thông tin.
Thekèo bóng đá c1Máy chủ sử dụng kèo bóng đá c1 quy trình cho mỗi kết nối để bạn nên cung cấp ít nhất là nhiều quy trình khi kết nối được phép, ngoài những gì bạn cần cho phần còn lại của hệ thống. Đây thường không phải là vấn đề nhưng nếu bạn chạy kèo bóng đá c1 số máy chủ trên kèo bóng đá c1 máy thì mọi thứ có thể bị chặt chẽ.
Giới hạn mặc định của nhà máy trên kèo bóng đá c1 tệp mở thường được đặt thànhthân thiện với xã hộiCác giá trị cho phép nhiều người dùng cùng tồn tại trên máy mà không sử dụng một phần không phù hợp của kèo bóng đá c1 hệ thống. Nếu bạn chạy nhiều máy chủ trên máy thì đây có lẽ là thứ bạn muốn, nhưng trên các máy chủ chuyên dụng, bạn có thể muốn tăng giới hạn này.
Ở phía bên kia của đồng tiền, một số hệ thống cho phép kèo bóng đá c1 quy trình riêng lẻ mở một số lượng lớn kèo bóng đá c1 tệp; Nếu có nhiều hơn một vài quy trình làm như vậy thì giới hạn toàn hệ thống có thể dễ dàng vượt quá. Nếu bạn thấy điều này xảy ra và bạn không muốn thay đổi giới hạn toàn hệ thống, bạn có thể đặtkèo bóng đá c1'sMAX_FILES_PER_PROCESSTham số cấu hình để giới hạn mức tiêu thụ của kèo bóng đá c1 tệp mở.
kèo bóng đá c1 giới hạn kernel khác có thể là mối quan tâm khi hỗ trợ số lượng lớn kết nối máy khách là chiều dài hàng đợi kết nối ổ cắm tối đa. Nếu nhiều hơn nhiều yêu cầu kết nối đến trong kèo bóng đá c1 khoảng thời gian rất ngắn, kèo bóng đá c1 số người có thể bị từ chối trướckèo bóng đá c1Máy chủ có thể phục vụ kèo bóng đá c1 yêu cầu, với những máy khách nhận được kèo bóng đá c1 lỗi lỗi kết nối không có ích nhưkèo bóng đá c1 tạm thời không có sẵnhoặcKết nối bị từ chốiKhăn. Giới hạn độ dài hàng đợi mặc định là 128 trên nhiều nền tảng. Để nâng nó, điều chỉnh tham số kernel thích hợp thông quasysctl, sau đó khởi động lạikèo bóng đá c1Máy chủ. Tham số được đặt tên khác nhaunet.core.somaxconn
Trên Linux,Kern.ipc.Soacceptqueue
Trên FreeBSD mới hơn vàkern.ipc.somaxconn
Trên kèo bóng đá c1 biến thể MACOS và kèo bóng đá c1 biến thể BSD khác.
Hành vi bộ nhớ ảo mặc định trên Linux không tối ưu chokèo bóng đá c1. Do cách mà hạt nhân thực hiện bộ nhớ quá mức, hạt nhân có thể chấm dứtkèo bóng đá c1Postmaster (quy trình máy chủ giám sát) nếu bộ nhớ yêu cầu của kèo bóng đá c1 trong haikèo bóng đá c1hoặc quá trình khác khiến hệ thống hết bộ nhớ ảo.
Nếu điều này xảy ra, bạn sẽ thấy một thông báo kernel trông giống như thế này (tham khảo kèo bóng đá c1 liệu và cấu hình hệ thống của bạn về nơi tìm kiếm thông báo như vậy):
Out of Memory: Quá trình bị giết 12345 (Postgres).
Điều này chỉ ra rằngPostgres
Quá trình đã bị chấm dứt do áp suất bộ nhớ. Mặc dù kèo bóng đá c1 kết nối cơ sở dữ liệu hiện tại sẽ tiếp tục hoạt động bình thường, nhưng sẽ không có kết nối mới nào được chấp nhận. Để phục hồi,kèo bóng đá c1Sẽ cần được khởi động lại.
kèo bóng đá c1 cách để tránh vấn đề này là chạykèo bóng đá c141255_41557
nếukèo bóng đá c141613_41821Shared_buffers
, work_mem
vàHash_mem_multiplier
. Trong kèo bóng đá c1 trường hợp khác, vấn đề có thể được gây ra bằng cách cho phép quá nhiều kết nối với chính máy chủ cơ sở dữ liệu. Trong nhiều trường hợp, có thể tốt hơn là giảmMax_Connections
và thay vào đó sử dụng phần mềm kết nối bên ngoài.
Có thể sửa đổi hành vi của hạt nhân để nó khôngOVERCOMMITHồibộ nhớ. Mặc dù cài đặt này sẽ không ngăn đượcOOM KillerTừ việc được gọi hoàn toàn, nó sẽ hạ thấp cơ hội đáng kể và do đó sẽ dẫn đến hành vi hệ thống mạnh mẽ hơn. Điều này được thực hiện bằng cách chọn chế độ OverCommit nghiêm ngặt thông quasysctl
:
sysctl -w vm.overCommit_memory = 2
hoặc đặt kèo bóng đá c1 mục tương đương trong/etc/sysctl.conf
. Bạn cũng có thể muốn sửa đổi cài đặt liên quanVM.OverCommit_Ratio
. Để biết chi tiết, xem tệp kèo bóng đá c1 liệu kernel43429_43496.
kèo bóng đá c1 cách tiếp cận khác, có thể được sử dụng với hoặc không thay đổiVM.OverCommit_Memory
, là đặt quy trình cụ thểĐiều chỉnh điểm OOMGiá trị cho quy trình Postmaster thành-1000
, do đó đảm bảo nó sẽ không được nhắm mục tiêu bởi kẻ giết người OOM. Cách đơn giản nhất để làm điều này là thực thi
echo -1000/proc/self/oom_score_adj
trongkèo bóng đá c1Tập lệnh khởi động ngay trước khi gọiPostgres
44097_44336Postgres
:
Xuất PG_OOM_ADJUST_FILE =/Proc/self/oom_score_adj Xuất PG_OOM_ADJUST_VALUE = 0
kèo bóng đá c1 cài đặt này sẽ khiến kèo bóng đá c1 quy trình con của Postmaster chạy với điều chỉnh điểm OOM bình thường bằng 0, do đó, kẻ giết người OOM vẫn có thể nhắm mục tiêu chúng khi cần. Bạn có thể sử dụng một số giá trị khác choPG_OOM_ADJUST_VALUE
Nếu bạn muốn kèo bóng đá c1 quy trình con chạy với một số điều chỉnh điểm OOM khác. (PG_OOM_ADJUST_VALUE
cũng có thể được bỏ qua, trong trường hợp đó, nó mặc định là không.) Nếu bạn không đặtPG_OOM_ADJUST_FILE
, kèo bóng đá c1 quy trình con sẽ chạy với cùng một điều chỉnh điểm OOM như Postmaster, không khôn ngoan vì toàn bộ điểm là để đảm bảo rằng người quản lý bưu điện có cài đặt ưu tiên.
Sử dụng kèo bóng đá c1 trang khổng lồ sẽ giảm chi phí khi sử dụng kèo bóng đá c1 khối bộ nhớ tiếp giáp lớn, nhưkèo bóng đá c1Đặc biệt khi sử dụng kèo bóng đá c1 giá trị lớn củaShared_buffers. Để sử dụng tính năng này trongkèo bóng đá c1Bạn cần kèo bóng đá c1 hạt nhân vớiconfig_hugetlbfs = y
vàconfig_hugetlb_page = y
. Bạn cũng sẽ phải định cấu hình hệ điều hành để cung cấp đủ kèo bóng đá c1 trang khổng lồ có kích thước mong muốn. Tham số tính toán thời gian chạyshared_memory_size_in_huge_pages46161_46270Postgres
Lệnh như:
$Postgres -d $ pgdata -c shared_memory_size_in_huge_pages
3170 $grep ^vispagesize /Proc /meminfo
Vũ trụ: 2048 kb $ls/sys/kernel/mm/khổng lồ
khổng lồ-1048576KB khổng lồ-2048kb
Trong ví dụ này, mặc định là 2MB, nhưng bạn cũng có thể yêu cầu rõ ràng 2MB hoặc 1GB vớiVUAN_PAGE_SIZEĐể điều chỉnh số lượng trang được tính bằngshared_memory_size_in_huge_pages
. Trong khi chúng ta cần ít nhất3170
kèo bóng đá c1 trang lớn Trong ví dụ này, một cài đặt lớn hơn sẽ phù hợp nếu kèo bóng đá c1 chương trình khác trên máy cũng cần kèo bóng đá c1 trang lớn. Chúng ta có thể đặt cái này với:
#SYSCTL -W VM.NR_HUGEPAGES = 3170
Đừng quên thêm cài đặt này vào/etc/sysctl.conf
để nó được áp dụng lại sau khi khởi động lại. Đối với kích thước trang khổng lồ không mặc định, thay vào đó chúng ta có thể sử dụng:
#echo 3170/sys/kernel/mm/khổng lồ/khổng lồ-2048kb/nr_huges
Cũng có thể cung cấp kèo bóng đá c1 cài đặt này vào thời điểm khởi động bằng kèo bóng đá c1 tham số hạt nhân nhưkhổng lồ
.
Đôi khi hạt nhân không thể phân bổ số lượng trang khổng lồ mong muốn ngay lập tức do phân mảnh, do đó có thể cần phải lặp lại lệnh hoặc khởi động lại. (Ngay sau khi khởi động lại, hầu hết bộ nhớ của máy nên có sẵn để chuyển đổi thành kèo bóng đá c1 trang lớn.) Để xác minh tình huống phân bổ trang khổng lồ cho một kích thước nhất định, sử dụng:
$48258_48318
Cũng có thể cần phải cấp cho phép người dùng hệ điều hành của máy chủ cơ sở dữ liệu sử dụng kèo bóng đá c1 trang khổng lồ bằng cách cài đặtvm.hugetlb_shm_group
Viasysctl, và/hoặc cho phép khóa bộ nhớ vớiulimit -l
.
48653_48694kèo bóng đá c1là sử dụng chúng khi có thể, với kích thước trang khổng lồ mặc định của hệ thống và quay trở lại kèo bóng đá c1 trang bình thường khi thất bại. Để thực thi việc sử dụng kèo bóng đá c1 trang khổng lồ, bạn có thể đặtVUGE_PAGESđếntrên
inkèo bóng đá c1conf
. Lưu ý rằng với cài đặt nàykèo bóng đá c1Sẽ không bắt đầu nếu không có đủ kèo bóng đá c1 trang khổng lồ có sẵn.
Để biết mô tả chi tiết vềLinuxTính năng trang khổng lồ có xemhttps: //www.kernel.org/doc/documentation/vm/hugetlbpage.txt.
50512_50738Mẫu nàyĐể báo cáo vấn đề kèo bóng đá c1 liệu.