2012-07-11 11 views
12

Vì nhiều người sử dụng kho nội dung. Phải có lý do chính đáng. Tôi đang xây dựng một ứng dụng web mới cần lưu trữ nội dung. Ai đó có thể giúp tôi hiểu điều này?Ưu điểm đối với kho nội dung (không nói về CMS)

Ưu điểm của việc sử dụng kho lưu trữ nội dung như Apache Jackrabbit thay vì viết mã/API của riêng bạn để lưu trữ hình ảnh hoặc trang văn bản là gì? Viết của riêng bạn đòi hỏi thời gian vv nhưng cũng như vậy hiện thực hiện và học một khuôn khổ mới như API kho lưu trữ nội dung. Một lợi ích để tự mình lăn có vẻ như với tôi rằng bạn biết mã của mình và có chuyên môn ngay lập tức nếu bạn cần cải thiện hoặc sửa chữa nó. Sử dụng một khung công tác khác, bạn cần phải tìm hiểu các khung của nó và luôn dễ dàng sửa đổi mã bạn biết mà không biết ... tức là bạn không biết rằng mã khung cơ bản cũng như của bạn.

Như tôi đã nói rất nhiều người sử dụng chúng. Có phải là một lý do. Tôi không thể nhìn thấy nó như là chỉ là một "tất cả mọi người đang sử dụng chúng như vậy, vì vậy chúng ta nên." Ít nhất tôi hy vọng nó không phải là điều đó. :)

Trả lời

8

Dự án gần đây nhất của tôi có liên quan đến cả hai lựa chọn: kho lưu trữ dữ liệu tùy chỉnh (MySQL và tệp hình ảnh) với cơ chế lưu vào bộ nhớ đa cấp và kho lưu trữ thương mại dựa trên JCR. Một vài suy nghĩ:

Trong ngắn hạn, giải pháp DIY cung cấp độ phức tạp giảm: bạn chỉ phải xây dựng và tìm hiểu những gì bạn cần. Và có ít nhất cơ hội để tối ưu hóa kho dữ liệu cho nhu cầu của ứng dụng cụ thể của bạn - nhiều khả năng là tốc độ truy xuất, nhưng có thể lưu trữ dấu chân, bảo mật hoặc mối quan tâm về độ tin cậy cho bạn. Tuy nhiên, về lâu dài, bạn đang xem xét một gia tăng đáng kể công việc để mở rộng hệ thống phát triển trong nước sang loại nội dung mới (ví dụ:) hoặc để cung cấp chức năng mới (có thể, phiên bản).

Ngoài ra, rất khó tách riêng lựa chọn phương pháp lưu trữ dữ liệu khỏi việc lựa chọn công cụ mà nhà cung cấp nội dung sẽ sử dụng để điền và lưu trữ kho dữ liệu. Bạn sẽ phải cung cấp cho tác giả của mình một cái gì đó nhiều hơn một biểu mẫu HTML có văn bản và nút gửi.

2

Điều này liên quan đến những lợi thế của standardization: khả năng tương thích và khả năng thay thế. Nếu mọi người viết thư viện và API của riêng mình, không có khả năng tương thích và khả năng thay thế, dẫn đến chi phí cao hơn.

13

Kho lưu trữ JCR cho phép bạn lưu trữ tất cả nội dung của bạn (từ dữ liệu có cấu trúc cơ sở dữ liệu đến tệp đa phương tiện lớn) ở một nơi duy nhất và với một API đơn giản. giữa các tệp và dữ liệu mà bạn thường có trong các hệ thống dựa trên nội dung.

JCR cũng cung cấp rất nhiều chức năng cơ sở hạ tầng mà bạn sẽ không phải xây dựng hoặc lắp ráp chính mình: tìm kiếm (bao gồm toàn văn), quan sát (gọi lại khi có gì đó thay đổi) phiên bản, loại dữ liệu bao gồm nhiều giá trị , vv ...

Nếu bạn cho phép phích cắm không biết xấu hổ, bài viết "JCR - tốt nhất của cả hai thế giới" tại http://java.dzone.com/articles/java-content-repository-best mô tả chi tiết hơn và cũng cung cấp danh sách đọc cho thông số JCR, cho phép bạn một cái nhìn tổng quan tốt mà không cần đọc toàn bộ điều.

Bài viết sử dụng Apache Sling cho các ví dụ của nó, kết hợp với một kho lưu trữ JCR cung cấp một nền tảng (IMO) rất đẹp (IMO) là nền tảng cho các ứng dụng dựa trên nội dung.

+0

Cảm ơn phản hồi, điều này mang lại cho tôi cái gì đó để xem xét sau các bước đầu tiên này. Tuy nhiên, việc bổ sung sling vào ví dụ của bạn (trên thực tế sự nhấn mạnh nặng nề về nó ... dễ hiểu trong bài viết và ngữ cảnh của bạn) là quá nhiều cho tôi để đồng hóa ngay bây giờ. Quy tắc Kính viễn vọng Thompson. Một khi tôi có thể tìm ra java/glassfish và jcr tôi có thể có thể đánh giá cao/hiểu những gì sling được cung cấp. Nhưng tôi cần phải đi bộ trước khi chạy. :) Ngay bây giờ tôi chỉ muốn lý trí là tại sao tôi nên bận tâm để học jcr. David đã cung cấp loại lý do chiến lược mà tôi đang tìm kiếm. Tôi sẽ cung cấp cho jcr một đi. – BillR

+0

Vẫn cho bạn +1 mặc dù. :) – BillR

+0

Đủ công bằng - bạn cũng có thể dừng trước khi đề cập đến Sling trong câu trả lời của tôi và hạnh phúc với JCR một mình ;-) –

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