2012-11-10 20 views
14

Câu hỏi này cố gắng tìm xem liệu giá trị của nó có phải là sự cân bằng lợi ích của CDN có lợi cho việc quản lý mã nhà cung cấp có cấu trúc và có tổ chức hay không.khi lưu trữ bằng CDN và khi nào không?


Tôi biết rằng việc sử dụng CDN để phân phối các lib nhà cung cấp như jquery được khuyến nghị.

Tuy nhiên, tôi đã đọc khoảng bower hôm nay và điều đó làm tôi ngạc nhiên. Với bower tôi có thể dễ dàng quản lý tất cả các phụ thuộc của ứng dụng của tôi một cách rất có cấu trúc. Cuối cùng tôi có thể đóng gói chúng trong một tệp vendor.js duy nhất (sử dụng yeoman, brunch hoặc đơn giản grunt) sẽ là máy chủ trong html trong thẻ script.

Tuy nhiên, trong khi cách tiếp cận này có thể làm cho cuộc sống của tôi dễ dàng hơn, khuyết điểm của nó là gì? Tôi có thể nghĩ về những điều sau:

  • Có nhiều khả năng nhiều libs tôi đang sử dụng, đã được lưu trong trình duyệt của người dùng.
  • Bằng cách đặt tất cả trong một tệp vendor.js, trình duyệt cuối cùng sẽ lưu tệp này, nhưng tôi sẽ bắt đầu gặp phải sự cố bất cứ khi nào tôi thêm depencies của bên thứ ba mới, tức là khi tệp nhà cung cấp của tôi bị thay đổi. Trình duyệt sẽ phải tải lại tệp đó (do đó mất bộ nhớ đệm của tệp vendor.sj gốc)

Đặt thời gian để quản lý các phụ thuộc trong html dưới dạng <script> thẻ, đường nối để cung cấp tốt hơn hiệu suất/thời gian tải.

Bạn có nghĩ rằng có điều gì đó sai trái trong cách suy nghĩ của tôi không? Lợi ích của việc tổ chức mã có nói là bower, đủ thuyết phục? Xét cho cùng, nó giống như xương sống. Có một ứng dụng xương sống nặng hơn cho các ứng dụng nhỏ, nó chứa nhiều mã hơn .. nhưng từ một quan điểm dev, nó đáng giá!

Cheers (và cảm ơn các ý kiến ​​mà khiến tôi lại chỉnh sửa các câu hỏi!)

+0

Đó là bởi vì những người có trình độ khác rõ ràng không tin rằng đó là "cách để đi" _. Đây là loại câu hỏi thường không được phép vì nó sẽ gọi ý kiến ​​mạnh mẽ. Ngoài ra, mặc dù nó là "không xây dựng", nó [đã được giải quyết ở đây nhiều lần trước đây] (http://stackoverflow.com/search?q=CDN+good+idea&submit=search). – Sparky

+0

Tìm trong Câu hỏi thường gặp về thẻ jQuery trong trang web này ... một trong những bài đăng xếp hạng hàng đầu bao gồm chủ đề này chi tiết tuyệt vời http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery- nhưng thư viện được lưu trữ trên máy chủ của tôi-on-my-on-go. Câu trả lời đơn giản cho câu hỏi của bạn là tài nguyên CDN có nhiều khả năng đã có trong bộ nhớ cache của người dùng – charlietfl

+0

Câu hỏi này có thể được lặp lại để mang tính xây dựng nếu bạn hỏi những khác biệt kỹ thuật cụ thể là gì, để bạn có thể thực hiện cuộc gọi phán đoán của riêng mình, thay vì hỏi để người khác tặng cho họ. – eh9

Trả lời

5

Sử dụng CDN khi nó có sẵn cho bạn và được cho phép bởi các yêu cầu của dự án của bạn. Nó nói chung là nhanh hơn, và các trình duyệt sẽ có khả năng lưu trữ các tệp đó từ các trang web khác rồi.

Hầu hết các trang web tôi tạo, tôi sử dụng jQuery từ CDN. Tuy nhiên, bạn sẽ thấy rằng đôi khi những CDN đó bị chặn bởi các quốc gia cụ thể. Trong mọi trường hợp, nó không làm tổn thương để có một dự phòng. Bạn có thể tải jQuery từ CDN và dự phòng đến máy chủ của riêng bạn nếu máy chủ đó không thành công.

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