Tối ưu hóa hiệu suất tạo bộ đệm bản đồ trong ArcGIS cho Máy chủ 10.2.1


8

Tôi còn khá mới với ArcGIS for Server, vì vậy tôi hy vọng rằng ai đó có thể chỉ cho tôi đi đúng hướng trong trường hợp những gì tôi đang làm không phải là thông lệ tốt.

Tôi có 2 hộp với ArcGIS cho máy chủ 10.2.1, cả hai trên cùng một trang. Cả hai hộp đều có 4 bộ xử lý và RAM 16gb. Cả hai hộp đều chạy trên Windows Server 2008.

nhập mô tả hình ảnh ở đây

Trang web được sử dụng để cung cấp một vài dịch vụ bản đồ cơ sở cho một lượng nhỏ người dùng (<5) và để tạo các ô lưu trữ cho các dịch vụ trong tương lai.

Tôi hiện đang tạo các ô bộ đệm cho dịch vụ ánh xạ (~ 50GB). Tôi đã dự kiến ​​sẽ thấy việc sử dụng CPU trên 2 hộp chạy khá cao. Nhưng nó có xu hướng ngồi từ 15% đến 30% trên mỗi hộp.

Các phiên bản tối đa cho các công cụ bộ đệm được đặt thành 6.

nhập mô tả hình ảnh ở đây

Số lượng phiên bản tối đa trên mỗi máy được đặt thành 3.

nhập mô tả hình ảnh ở đây

Tôi có sai khi cho rằng tôi sẽ thấy CPU sử dụng cao hơn không?

Tôi đã không đưa vào số liệu chính xác?

Hoặc là thiết lập của tôi không thực hành tốt nhất? tức là tôi có nên sử dụng một trang chỉ để phục vụ bản đồ và một trang khác chỉ để lưu vào bộ đệm không?

Tôi nghĩ rằng tôi đã làm theo các hướng dẫn được đề cập ở đâyở đây . Nhưng tôi khá chắc chắn rằng bộ nhớ đệm đang chạy chậm hơn bình thường. Sau 19 giờ, nó chỉ lưu được 1,17% tất cả các ô của tôi.

nhập mô tả hình ảnh ở đây

Bất kỳ đề xuất thực hành tốt nhất chào đón nhiều.

CẬP NHẬT: Sau 21 giờ, việc sử dụng CPU trên cả hai máy không còn nữa:

máy 1: nhập mô tả hình ảnh ở đây

máy 2:

nhập mô tả hình ảnh ở đây

Thanh trạng thái "trong tiến trình" bộ đệm trên máy chủ vẫn đang di chuyển, nhưng% bộ nhớ cache không tăng trong 2 giờ qua.


Máy chủ của bạn trên Linux hay Windows?
Mintx

Mintx, tôi đã cập nhật câu hỏi với thông tin được yêu cầu.
Dan_h_b

không chắc chắn, nhưng có thể là do truy cập đọc / ghi nhiều hơn CPU
radouxju

Tài khoản ArcServer có quyền truy cập đọc / ghi đầy đủ vào thư mục đích và quyền truy cập đọc vào cơ sở dữ liệu nơi dữ liệu nguồn được đặt. Tôi đã lưu trữ các khu vực nhỏ hơn từ cùng một nguồn đến cùng một đích mà không gặp vấn đề gì.
Dan_h_b

1
Tôi nghĩ rằng bình luận của radouxju đã đề cập đến sự tranh chấp I / O của đĩa hơn là các quyền. Tốc độ mà các quá trình có thể ghi các tệp hình ảnh có thể là nút cổ chai.
tomfumb

Câu trả lời:


2

Có vẻ như bạn đã thực hiện một công việc khá tốt là tuân theo các thực tiễn tốt nhất để tạo bộ đệm. Máy chủ của bạn có đủ mã lực, nhưng việc lấy dữ liệu bản đồ từ cơ sở dữ liệu của bạn có thể là một vấn đề. Dưới đây là một bản tóm tắt nhỏ của trang web này có một vài mẹo bổ sung để nhận được nhiều lợi ích nhất cho bạn.

1 - Phân tích bản đồ của bạn trước khi xuất bản nó!

Điều này có thể rõ ràng, nhưng tôi thường quá nhanh chóng để xuất bản lên máy chủ mà không kiểm tra kết quả từ việc phân tích. Chỉ cần đi đến File->Analyze Mapvà kiểm tra nhanh để xem bản đồ của bạn có vấn đề gì không. Bản đồ của bạn có thể hiển thị càng nhanh, nó càng có thể lưu trữ nhanh hơn.

2 - Giữ dữ liệu cục bộ

Nếu bạn có một triển khai máy đơn lẻ, hãy giữ dữ liệu bản đồ trong FGDB cục bộ đến máy chủ. Nếu bạn có nhiều máy, hãy để mỗi máy có một bản sao dữ liệu và sử dụng tùy chọn "Sử dụng thư mục bộ đệm cục bộ khi tạo ô trên máy chủ" khi thiết lập bộ đệm.

Liên kết ở trên có một số mẹo hữu ích để xử lý các lỗi, cùng với tập lệnh tiện dụng này phân tích các lỗi bộ đệm thành dấu chân đa giác để bạn có thể dễ dàng quay lại và thử lưu lại các vùng bị lỗi.

Câu hỏi này xuất hiện mọi lúc mọi nơi. Có lẽ chúng ta có thể có thêm một số câu trả lời và biến điều này thành Wiki. :)


1

Một điều khác bạn có thể làm là đặt các bộ điều khiển bộ đệm và các công cụ bộ đệm vào một cụm khác. Điều này sẽ cô lập quá trình lưu trữ từ bộ quy trình thông thường. Tôi đã thấy hiệu suất này tốt hơn khi cách ly bộ nhớ đệm từ các hàm arcgisserver thông thường. Tôi thường gọi bộ nhớ đệm cụm mới này. Sau đó, khi bạn thêm các máy mới vào cài đặt của mình, chỉ cần thêm chúng vào cụm bộ đệm so với mặc định và điều này sẽ tăng sức mạnh xử lý của bạn. Ngoài ra, nếu bạn thấy mức độ sử dụng thấp thì hãy tiếp tục bổ sung ngày càng nhiều tài nguyên cho đến khi bạn đạt mức sử dụng khoảng 70-80%, bạn vẫn muốn để lại một số mã lực để sao chép các tệp qua lại và giảm tranh chấp tài nguyên.


1

Dựa trên thông tin ESRI ( http://server.arcgis.com/en/server/latest/publish-service/linux/accelerating-map-cache-creation.htmlm ) cách thực hành tốt nhất cho số lượng phiên bản được sử dụng để lưu trữ là n + 1 trong đó n là số lõi chạy trên máy chủ. Máy chủ của bạn có 4 bộ xử lý và mỗi bộ xử lý X5690 có 6 lõi theo tài liệu:

http://ark.intel.com/products/52576/Intel-Xeon-Processor-X5690-12M-Cache-3_46-GHz-6_40-GTs-Intel-QPI

Dựa trên điều này, về mặt lý thuyết bạn có thể xử lý 25 trường hợp lưu trữ trên mỗi máy chủ. Bây giờ tôi biết tài liệu ESRI là 10.3 nhưng đây là cách thực hành được khuyến nghị cho một vài phiên bản gần đây.

Tôi có một thiết lập máy chủ tương tự và tôi có thể nói với bạn rằng CPU của tôi sẽ đạt được 100% trước khi tôi có thể đạt gần 25 trường hợp nhưng tôi có thể sử dụng 10-15 khá thoải mái.

Vì vậy, nếu bạn đã kiểm tra IO đĩa hoặc cơ sở dữ liệu không phải là nút cổ chai, tôi khuyên bạn nên tăng số lượng phiên bản lên 10. Nếu điều này không làm tăng mức sử dụng CPU của bạn thì điều đó có nghĩa đó không phải là yếu tố giới hạn. Nếu nó tăng nhưng vẫn hợp lý, bạn có thể thử tăng thêm.

Dù sao, đạo đức của câu chuyện là không ngại ngùng với các trường hợp. Có lần tôi cũng làm việc trên một máy chủ khá yếu chỉ có 2 nhân và 3 trường hợp không đưa tôi đến đâu. Tuy nhiên khi tôi tăng các phiên bản lên 5 thì việc sử dụng CPU là hợp lý. Thực hành tốt nhất chỉ là một điểm khởi đầu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.