Tuỳ thuộc vào lưu lượng truy cập và yêu cầu xử lý, bạn có thể cần thay đổi kích thước bộ nhớ heap hoặc kích thước siêu dữ liệu lớp cho các nút đang chạy các thành phần Đám mây riêng dựa trên Java.
Phần này cung cấp kích thước bộ nhớ vùng nhớ khối xếp Java mặc định và được đề xuất, cũng như quy trình thay đổi các giá trị mặc định. Cuối cùng, phần này mô tả cách thay đổi các chế độ cài đặt JVM khác bằng cách sử dụng tệp thuộc tính.
Kích thước bộ nhớ khối xếp mặc định và nên dùng
Bảng sau đây liệt kê kích thước bộ nhớ khối xếp Java mặc định và được đề xuất cho các thành phần Đám mây riêng dựa trên Java:
Thành phần | Tên tệp thuộc tính | Mặc định Kích thước vùng nhớ heap |
Kích thước vùng nhớ heap được đề xuất |
---|---|---|---|
Thời gian chạy | |||
Cassandra | Không có | Được định cấu hình tự động1 | Được định cấu hình tự động1 |
Trình xử lý thông báo | message‑processor.properties |
512 MB | 3 GB – 6 GB2 |
Bộ định tuyến | router.properties |
512 MB | 512 MB |
Analytics | |||
Máy chủ Postgres | postgres‑server.properties |
512 MB | 512 MB |
Máy chủ Qpid | qpid‑server.properties |
512 MB | 2 GB – 4 GB |
Quản lý | |||
Máy chủ quản lý | management‑server.properties |
512 MB | 512 MB |
Giao diện người dùng | ui.properties |
512 MB | 512 MB |
SymasLDAP | Không có | Ứng dụng gốc3 | Ứng dụng gốc3 |
Nhân viên sở thú | zookeeper.properties |
2048MB | 2048MB |
Ghi chú | |||
1 Cassandra tự động tính toán kích thước heap tối đa khi khởi động. Hiện tại, đây là một nửa tổng bộ nhớ hệ thống, tối đa là 8192 MB. Để biết thông tin về cách đặt kích thước vùng nhớ khối xếp, hãy xem phần Thay đổi kích thước bộ nhớ vùng nhớ khối xếp. |
|||
2 Đối với Trình xử lý thông báo, Apigee khuyên bạn nên đặt kích thước vùng nhớ heap trong khoảng từ 3 GB đến 6 GB. Chỉ tăng kích thước vùng nhớ heap lên trên 6 GB sau khi tiến hành kiểm thử hiệu suất.
Nếu mức sử dụng heap gần đạt đến giới hạn tối đa trong quá trình kiểm thử hiệu suất, hãy tăng giới hạn tối đa. Để biết thông tin về cách đặt kích thước vùng nhớ khối xếp, hãy xem phần Thay đổi kích thước bộ nhớ vùng nhớ khối xếp. |
|||
3 Không phải tất cả các thành phần của Đám mây riêng tư đều được triển khai bằng Java. Vì không dựa trên Java, các ứng dụng chạy nguyên bản trên nền tảng lưu trữ không có kích thước heap Java có thể định cấu hình; thay vào đó, chúng dựa vào hệ thống lưu trữ để quản lý bộ nhớ. |
Để xác định tổng bộ nhớ mà Apigee đề xuất bạn phân bổ cho các thành phần dựa trên Java trên một nút, hãy cộng các giá trị được liệt kê ở trên cho từng thành phần trên nút đó. Ví dụ: nếu nút của bạn lưu trữ cả máy chủ Postgres và Qpid, thì Apigee đề xuất bạn phân bổ bộ nhớ kết hợp từ 2,5 GB đến 4,5 GB.
Để xem danh sách phần cứng bắt buộc (chẳng hạn như RAM), hãy xem Yêu cầu về việc cài đặt.
Thay đổi kích thước bộ nhớ vùng nhớ khối xếp
Để thay đổi chế độ cài đặt bộ nhớ heap, hãy chỉnh sửa tệp thuộc tính cho thành phần. Ví dụ: đối với Trình xử lý thông báo, hãy chỉnh sửa tệp /opt/apigee/customer/application/message-processor.properties
.
Nếu tệp message-processor.properties
không tồn tại hoặc nếu tệp .properties
tương ứng cho bất kỳ thành phần Edge nào không tồn tại, hãy tạo tệp đó rồi thay đổi quyền sở hữu tệp thành người dùng "apigee", như ví dụ sau đây minh hoạ:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
Nếu thành phần được cài đặt trên nhiều máy (chẳng hạn như Message Processor), thì bạn phải chỉnh sửa tệp thuộc tính trên tất cả các máy lưu trữ thành phần đó.
Bảng sau đây liệt kê các thuộc tính mà bạn chỉnh sửa để thay đổi kích thước vùng nhớ heap:
Thuộc tính | Mô tả |
---|---|
bin_setenv_min_mem |
Kích thước vùng nhớ khối xếp tối thiểu. Giá trị mặc định dựa trên các giá trị được liệt kê trong phần Kích thước bộ nhớ heap mặc định và được đề xuất. Chế độ cài đặt này tương ứng với lựa chọn |
bin_setenv_max_mem |
Kích thước vùng nhớ khối xếp tối đa. Giá trị mặc định dựa trên các giá trị được liệt kê trong phần Kích thước bộ nhớ heap mặc định và được đề xuất. Chế độ cài đặt này tương ứng với lựa chọn |
bin_setenv_meta_space_size |
Kích thước siêu dữ liệu mặc định của lớp. Giá trị mặc định được đặt thành giá trị của Chế độ cài đặt này tương ứng với lựa chọn |
Khi bạn đặt các thuộc tính kích thước vùng nhớ đệm trên một nút, hãy sử dụng hậu tố "m" để chỉ số megabyte, như ví dụ sau đây:
bin_setenv_min_mem=4500m bin_setenv_max_mem=4500m bin_setenv_meta_space_size=1024m
Sau khi đặt các giá trị trong tệp thuộc tính, hãy khởi động lại thành phần:
/opt/apigee/apigee-service/bin/apigee-service component restart
Ví dụ:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Thay đổi các thuộc tính JVM khác
Đối với các chế độ cài đặt Java không do các thuộc tính nêu trên kiểm soát, bạn cũng có thể đặt các chế độ cài đặt sau trong tệp thuộc tính tương ứng cho mọi thành phần Edge:
bin_setenv_ext_jvm_opts
: Đặt mọi thuộc tính Java không được chỉ định bởi các thuộc tính khác. Ví dụ:bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500
Tuy nhiên, đừng sử dụng
bin_setenv_ext_jvm_opts
để đặt-Xms
,-Xmx
hoặc-XX:MetaspaceSize
vì các giá trị này được kiểm soát bởi các thuộc tính được liệt kê ở trên.
Để biết thêm các mẹo về cách định cấu hình bộ nhớ cho các thành phần Đám mây riêng, hãy xem bài viết này trên diễn đàn Edge.