2010-02-26 40 views
5

Trong Windows 7 (nghĩa là MSI 5.0), có một thuộc tính được gọi là MSIFASTINSTALL, điều này sẽ cải thiện hiệu suất của trình cài đặt của bạn. Hoặc nếu không, bạn có thể tắt tùy chọn quay lại bằng cách đặt thuộc tính DISABLEROLLBACK. Tài sản này có sẵn trong phiên bản trước của MSI 5.0 quá.Cải thiện hiệu suất cài đặt/gỡ cài đặt Wix msi

Hãy chia sẻ kiến ​​thức của bạn để cải thiện trải nghiệm cài đặt. Ngoài ra, tôi không thể tìm đúng cách để cải thiện hiệu suất của Gỡ cài đặt. Chúng tôi sử dụng rất nhiều tập tin/thư mục (hơn 70.000) và các thành phần như 35000. Nó treo trong quá trình lập chi phí tệp và không biết cách tránh sự chậm trễ này. Đôi khi nó bị treo trong hơn 2 hoặc 3 giờ để gỡ bỏ cài đặt trong các máy XP hoặc Vista

Edit: tôi đã làm một số hack của tôi cài đặt bằng cách nén các thư mục trong đó có bộ tập tin rất lớn và làm giảm kích thước các thành phần như Christopher nói . Nó cải thiện hiệu suất mạnh mẽ. có ofcourse, tôi bị mất mẫu trình cài đặt MSI bằng cách làm khái niệm này và nó không được khuyến cáo phương pháp tiếp cận. Tuy nhiên, nó được giao dịch khi chúng tôi muốn đạt được điều này và người dùng của chúng tôi thực sự không muốn có chi tiết phiên bản tệp khi chúng tôi gỡ cài đặt/nâng cấp các bản vá lỗi.

Trả lời

4

Tôi có tình huống tương tự, mặc dù số lượng tệp ít hơn một chút, khoảng 25k. Hầu hết các tệp đó là các biểu tượng, không bao giờ được thay đổi từ bản phát hành này sang bản phát hành khác. Chỉ một bản phát hành chính (một lần mỗi 2 năm) có thể mang lại một số thay đổi cho khu vực này. Giải pháp "nhanh chóng & bẩn" đã nén các biểu tượng đó và bao gồm tệp đơn này vào quá trình cài đặt (không phải thành phần, chỉ là tệp bên cạnh MSI). Trong quá trình cài đặt, ZIP này được trích xuất trong chuỗi nền và bảng RemoveFile được sử dụng để xóa các biểu tượng khi gỡ cài đặt. Nó nhanh hơn việc cài đặt các biểu tượng 20k đó thành các thành phần riêng biệt, ngay cả khi các thành phần có nhiều tệp. Một giải pháp tốt và chính xác là thuyết phục các nhà phát triển ứng dụng chính đưa tất cả các biểu tượng 20k đó vào kho lưu trữ zip 20. Bây giờ 20 tệp zip này được cài đặt như các thành phần MSI thông thường và ứng dụng biết cách trích xuất biểu tượng theo yêu cầu và lưu vào bộ nhớ cache.

Tôi sẽ không khuyên bạn tắt tính năng khôi phục. Mặc dù bạn sẽ tiết kiệm khá nhiều thời gian cài đặt, bạn sẽ mất một tùy chọn rollback được đảm bảo tiêu chuẩn.

Gỡ cài đặt mất nhiều thời gian hơn cài đặt vì tính năng quay lại lần nữa. Cách tôi hiểu, khi bạn gỡ cài đặt, trước hết MSI tạo bản sao của mỗi tệp, sau đó gỡ cài đặt mọi tệp và trong trường hợp thành công, hãy giảm từng tệp sao lưu. Do đó, thời gian gỡ cài đặt gấp ba lần thời gian cài đặt. Tôi đã gặp vấn đề tương tự khi tôi chọn một tùy chọn mặc định để có 1 tệp cho mỗi thành phần. Mặc dù nó được khuyến khích, bạn nên thực hiện một sự cân bằng nếu bạn đối phó với một trường hợp nổi bật.

Hy vọng điều này sẽ giúp bạn hiểu rõ hơn một chút.

+0

Yan, tôi thực sự đánh giá cao câu trả lời của bạn rằng nó làm cho tôi rõ ràng hơn về khái niệm này. Trong trường hợp của tôi, tùy chọn rollback là không cần thiết và cho đến nay, tôi chưa bao giờ gặp trường hợp như vậy mà tôi cần tùy chọn rollback. Dù sao, tôi sẽ cố gắng tất cả các bạn đề nghị của mọi người. – sankar

+0

Bạn có thể giải thích cách bạn có thể gỡ cài đặt các tệp biểu tượng được lưu trong bộ nhớ cache không? – sky

+0

Tệp biểu tượng được lưu trong bộ nhớ cache trong trường hợp này là các tệp mà Windows Installer không cài đặt và không biết gì về. Do đó, nó có thể là một tập hợp các phần tử 'RemoveFile' /' RemoveFolder', hoặc một hành động tùy chỉnh. Tôi thích biến thể đầu tiên. –

2

Tùy chọn tốt nhất để cải thiện hiệu suất của ứng dụng là giảm số lượng tệp và thành phần. Mặc dù có thể có một vài chỉnh sửa bạn có thể thực hiện với MSI để cải thiện hiệu suất, số lượng tệp/thành phần quá mức là vấn đề cốt lõi và sẽ là yếu tố trên bất kỳ cải tiến hiệu suất nào bạn thực hiện. Tại sao bạn cần phải cài đặt 70k tập tin?

+0

Cảm ơn bạn đã trả lời. Tôi sẽ cố gắng giảm yếu tố thành phần để giảm nó. Tôi cần phải gửi số lượng lớn các tệp html và hình ảnh đó cho mục đích hướng dẫn. – sankar

+2

Cài đặt điển hình của tôi có khoảng 15.000 tệp trong đó và đây là các ứng dụng khách. Trong ngành công nghiệp game, nó rất dễ dàng để kết thúc với rất nhiều tập tin được cài đặt. Về phía máy chủ (đặc biệt là các ứng dụng web) nó rất dễ dàng để có được vào hàng chục ngàn. Tôi đã từng quan sát thấy rằng chỉ cần thêm Infragistrics vào một máy khách web đã thêm 5.500 tệp. Bất kỳ ai cố gắng thu nhỏ gói ứng dụng web đều có thể nhanh chóng tìm ra trình cài đặt kích thước lớn và phức tạp. Hãy suy nghĩ cùng các dòng của Microsoft cung cấp một trang web MSDN "tự lưu trữ". –

Các vấn đề liên quan