Tôi có một công việc dịch vụ UpStart có nhiều (~ 100) trường hợp cần phải được bắt đầu. Mỗi người trong số họ là một quá trình tài nguyên nặng làm rất nhiều đĩa đọc/ghi trong khi khởi động. Khi tất cả chúng bắt đầu hoặc hồi sinh cùng một lúc, chúng gây ra rắc rối do các yêu cầu đọc/ghi đĩa quá mức.Làm thế nào để giới hạn số lượng trường hợp UpStart có thể đồng thời bắt đầu hoặc respawn
Tôi cần một cách để giới hạn số lượng cá thể mà UpStart cố bắt đầu hoặc hồi sinh đồng thời. Ví dụ, có cách nào để UpStart giữ ngừng tung ra một thể hiện khác cho đến khi, nói 30 giây, sau khi khởi động hoặc respawning của một thể hiện đã bắt đầu?
Nếu công việc của bạn là tập lệnh shell, bạn có thể chèn tạm dừng ngẫu nhiên để khi 10 bắt đầu cùng một lúc, mỗi lần tạm dừng một số giây và không gian khác nhau - hoặc bạn có thể có tất cả công việc khóa một tập tin nhất định khi khởi động chuyên sâu. Nhưng đó là một giải pháp shell scripting mà không có gì để làm với upstart. – Paul
bạn có thể hiển thị tập lệnh mới nổi không? họ có phần nào giống nhau không? – FeedTheWeb
Tôi nghĩ rằng phương pháp khóa được đề cập bởi @Paul là tuyệt vời. Nhưng điều đó sẽ yêu cầu thay đổi chính mã ứng dụng (btw, nó không phải là một kịch bản lệnh shell. Nó là một ứng dụng được biên dịch đầy đủ). Đáng ngạc nhiên là UpStart không có một số chức năng dựng sẵn để tự động giữ và xếp hàng các thể hiện dịch vụ (?). – scai