2012-05-02 39 views
7

Gần đây tôi đã gặp một lỗi tập lệnh trả lời chậm trên một ứng dụng và tôi cảm thấy cần phải lập hồ sơ ứng dụng để xác định rằng những gì tôi cần cải thiện. Tôi muốn sửa chữa lâu dài, không phải là một sửa chữa hackish. Tôi đã thử Firebug Profiler nhưng kể từ khi ứng dụng sử dụng rất nhiều jQuery tôi nhận được rất nhiều báo cáo về các cuộc gọi nặc danh mà tôi thực sự mong đợi.Các ứng dụng jQuery trong hồ sơ

Tôi cũng đã tìm thấy một số báo cáo trên web về một trình tạo hồ sơ do John Resig tạo nhưng các liên kết tôi thấy đều đã chết.

Vì vậy, câu hỏi của tôi là:

  1. những cách tốt nhất để cấu hình một ứng dụng jQuery là gì?
  2. Có bất kỳ công cụ/tập lệnh dành riêng cho mã nguồn mở nào để đạt được điều này không?

Trả lời

1

Vì vậy, sau khi tìm hiểu thêm một chút, tôi đã tìm thấy một giải pháp khác do John Resig cung cấp. Ông đã sử dụng một phần mở rộng thử nghiệm đơn vị cho firebug được gọi là FireUnit (http://fireunit.org/) được chứng minh là khá tốt đẹp.

Nếu bạn có một cái nhìn tại các ví dụ tại địa chỉ:

http://ejohn.org/blog/function-call-profiling/

Và cũng kiểm tra các trang kiểm tra anh đang cung cấp:

http://ejohn.org/files/jquery-profile.html

Điều gì bạn nhận được một số kết quả tốt đẹp như dưới đây:

.addClass ("test"); 52
.addClass ("test"); 102
.removeClass ("test"); 102
.removeClass ("test"); 52
.css ("màu", "màu đỏ"); 299 O (3n)
.css ({color: "red", border: "1px đỏ đậm"}); 597 O (6n)
.remove(); 198 O (2n)
.append ("test"); 599 O (6n)
.show(); 982 O (10n)
.hide(); 968 O (10n)
.html ("test"); 104
.empty(); 100
.is ("div"); 109
.filter ("div"); 214 O (2n)
.tìm ("div"); 300 O (3n)

Tôi đã tích hợp điều này trong một số ứng dụng và kết quả đạt được thỏa đáng hơn. Hạn chế duy nhất là bạn chỉ có thể sử dụng plugin từ bên trong Firefox. Nhưng đây vẫn là một công cụ khá hay.

0

Như đã nêu here:

IE, Chrome và Safari đã được xây dựng trong profilers trong việc phát triển web công cụ mà tàu với trình duyệt. Đối với Firefox, bạn có thể sử dụng Firebug. Cũng hữu ích, vì bạn đang sử dụng jQuery có nghĩa là báo cáo lược tả của bạn sẽ được điền đầy đủ các chức năng ẩn danh, làm cho nó không đọc được, John Resig's jQuery profiling plugin, sẽ cung cấp cho bạn đầu ra rõ ràng hơn về vấn đề này.

+0

Như đã nêu trong bài đăng ở trên, tôi đã kiểm tra hồ sơ của John Resig trên liên kết đó. Nhưng tất cả tôi nhận được là một trang 404 không tìm thấy cho các vị trí tải về :) –

+0

Hãy thử này: http://archive.plugins.jquery.com/project/profile – adrien

+0

vì không có câu trả lời đã được đưa ra bởi thời gian này tôi sẽ chấp nhận của bạn như là một trong những chính xác, mặc dù tôi có thể trở lại với một tiền thưởng cho điều này sớm –

0

Tôi tạo ra một công cụ nào khá chính xác những gì bạn cần: http://yellowlab.tools

Launch một kiểm tra, click vào "JS Timeline" tab và nó ghi lại tất cả các chức năng jQuery truy cập vào DOM trong khi tải trang. Nó cũng theo dõi các hàm vani JS, vì vậy bạn có thể hiểu được phép thuật đằng sau jQuery.

Rất hữu ích để giúp tối ưu hóa một số mã jQuery cho hiệu suất.

Hy vọng câu trả lời của tôi không đến quá muộn :)

+0

một câu trả lời hay không bao giờ là quá muộn :) Tôi sẽ kiểm tra nó và nếu nó tốt hơn những gì tôi cung cấp dưới đây, chắc chắn sẽ đánh dấu câu trả lời của bạn là chính xác –

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