2010-05-19 41 views
8

Chúng tôi hiện đang làm việc trên một ứng dụng với số lượng lớn các phụ thuộc bên ngoài tương đối, vì chúng tôi đang tích hợp với một hệ thống khá phức tạp.Tăng tốc độ phân giải phụ thuộc vào Grails

Các phụ thuộc chỉ hoạt động tốt, tuy nhiên, vẫn mất vài phút để giải quyết các phụ thuộc bất kể phụ thuộc đã có trong bộ đệm Ivy hay chưa. Nếu bộ nhớ cache cần cập nhật, nó sẽ mất nhiều thời gian hơn.

Có cách nào để chúng tôi có thể tăng tốc quá trình này hoặc tắt độ phân giải phụ thuộc trên mọi lần chạy không? Điều này hiện đang trở thành một cống thoát năng suất rất lớn.

Cảm ơn!

Trả lời

2

Có lẽ đó là một chút khó khăn nhưng tôi sẽ làm như sau

  1. Sử dụng các yếu tố môi trường của cấu hình dsl để thêm độ phân giải dependecy chỉ trong sản xuất điện tử kiểm tra xem [ở đây] [1]
  2. Đặt tất cả jar depenecy của bạn trong forlder lib của ứng dụng grails của bạn tôi sẽ làm điều đó với maven dependecy: copy. Tôi nghĩ rằng nó có thể được thực hiện trong ivy quá
  3. Thêm file jar to-lờ-list scm bạn
  4. Sử dụng một hệ thống CI xây dựng để kiểm tra dependecy độ phân giải được thực hiện ngay

    [1]: http://www.grails.org/doc/1.3.x/guide/3.%20Configuration.html#3.2 môi trường

0

Tôi không nghĩ rằng có một cách tốt để có được khoảng thời gian cần để thực hiện độ phân giải phụ thuộc; như tôi đã hiểu, đó là một quyết định thiết kế cụ thể trong Grails để thực hiện độ phân giải phụ thuộc vào lúc khởi động để ứng dụng không phải kéo phụ thuộc vào trong thời gian chạy. Bạn có thể sử dụng một trong các phiên bản Grails gần đây với máy chủ Tomcat nhúng, điều này hoạt động thực sự tốt.

+0

Grails đầy những gì bạn biết (vâng, tôi tức giận). Nó rất chậm để làm * bất kỳ lệnh * nào! Triển khai nóng không hoạt động đối với bất kỳ thay đổi đối tượng miền hoặc thay đổi dịch vụ nào (mặc dù nó hoạt động tốt cho các bộ điều khiển). Không chắc chắn lý do tại sao! Tôi mới bắt đầu một dự án sử dụng grails và trong khi tôi thích rất nhiều tính năng groovy + grails cung cấp, nó quá chậm chạp! Tương đương với maven/jetty/hibernate/spring/hsql/thiết lập java đơn giản khởi động trong vòng chưa đầy 10 giây! Mã chỉ dễ viết bằng chú thích, IMO! – les2

1

thử sử dụng nút chuyển đổi ngoại tuyến. điều này sẽ tránh các kho lưu trữ từ xa và chỉ tìm kiếm hệ thống tệp (ví dụ: repo maven cục bộ). bạn chỉ cần quay lại trực tuyến khi các phụ thuộc mới được thêm vào.

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