11

Tôi đang cố gắng xác định một số ưu điểm và nhược điểm của việc có CMS là sự kiện được thúc đẩy.CMS hướng sự kiện - lợi thế và bất lợi

Biến cố sự kiện không phải là hiếm. Bạn thấy nó trong nhiều ngôn ngữ kịch bản như Actionscript, javascript, jquery liên quan đến một khách hàng. Làm thế nào về trong một CMS, nơi các sự kiện và phản ứng của họ xảy ra trên máy chủ. Những lợi thế hay bất lợi có thể có cách tiếp cận này, và những cách tiếp cận nào khác ở đó mà mọi người có thể thích hơn.

P.S. Xin lưu ý rằng tôi chỉ sử dụng Actionscript, JQ và JS làm ví dụ. Bạn nhận ra rằng khi nói về một CMS theo cách này, các sự kiện một phản ứng của họ là tất cả các công cụ phía máy chủ.

Chỉnh sửa: Tôi thấy rất nhiều người nói rằng không có ý nghĩa khi sử dụng sự kiện do họ không hiểu nó là gì. Một trong những hệ thống CMS đã sử dụng phương pháp này là Drupal, vì vậy tôi tin tưởng nó là một cách hiện tại, tôi không lấy ý tưởng ra khỏi A. Nó chỉ có nghĩa là "nội bộ" của CMS (tất cả các công cụ phía máy chủ) là sự kiện điều khiển. Cốt lõi làm điều của nó và định nghĩa các sự kiện. Plugin có thể phản hồi các sự kiện đó để thêm logic của riêng chúng. Tôi đề cập đến Actionscript là một ví dụ bởi vì phía máy khách là nơi mà khái niệm này được biết đến nhiều nhất, nhưng nó cũng có thể ở phía máy chủ, có thể không liên quan đến các ứng dụng bình thường và do đó không được biết đến. Nhưng nó có ý nghĩa đối với một cái gì đó phức tạp hơn như một CMS, nơi các nhà phát triển khác muốn thêm các plugin riêng của họ hoặc thậm chí thay đổi logic được xây dựng sẵn của CMS.

+1

Bạn đang tìm kiếm lợi thế gì trong cách tiếp cận như vậy? Khi bạn nói CMS, tôi cho rằng bạn có nghĩa là một CMS dựa trên web. Bất kể phần mềm phía máy chủ, CMS của bạn sẽ vẫn đáp ứng yêu cầu HTTP, tạo ra html và trả lại cho khách hàng, phải không? Vậy sự kiện CMS sẽ trợ giúp như thế nào trong quá trình đó? – marcvangend

+0

Tôi đã tự do đưa bản cập nhật của bạn vào một khối trích dẫn và không bẻ khóa nó. Vui lòng quay lại nếu bạn không thích. –

+0

Bạn sẽ sử dụng ngôn ngữ nào? @Georg, cảm nhận của bạn thế nào !!! :) Tôi tìm thấy nó hợp lý để hỏi khi tất cả các ví dụ được đưa ra là ngôn ngữ phía khách hàng và tôi xa như tôi biết PHP không gửi các sự kiện, mà không có sự giúp đỡ của bất kỳ thư viện bổ sung. Hơn nữa, với danh tiếng từ 17k trở lên, bạn có thể tự mình mang lại một số câu trả lời cho câu hỏi, phải không? Georg, bạn nghĩ Dave nên sử dụng ngôn ngữ nào? – PatrickS

Trả lời

1

Chính xác bạn ngụ ý gì bởi "sự kiện điều khiển"? Có nghĩa là, khách hàng có thể xem nội dung và sẽ được thông báo khi được cập nhật?

Nếu có, thì đây thực sự là một ý tưởng tuyệt vời, nhưng việc thực hiện là một trải nghiệm đầy tham vọng. Những bất lợi rõ ràng là, có rất nhiều thứ, có thể đi sai, trong khi một mô hình dựa trên yêu cầu đơn giản hơn nhiều và do đó mạnh mẽ hơn.

+0

Điều này có nghĩa là "nội bộ" của CMS được định hướng theo sự kiện, giống như Drupal. Cốt lõi xác định các sự kiện và bổ sung có thể đáp ứng với chúng để thêm logic của riêng chúng. – dave

6

Bạn có chắc chắn "hướng sự kiện" là thuật ngữ chính xác cho điều này không?

Tôi nghĩ những gì bạn đang nói đến là cơ sở hạ tầng của plugin plugin cho phép plugin hoạt động khi một sự kiện diễn ra (móc được kích hoạt).

Điều tôi biết là "sự kiện điều khiển" là khi các ứng dụng máy tính để bàn lưu trữ các sự kiện trong các phần tử giao diện người dùng, giống như Javascript có thể làm cho các phần tử HTML. Các ứng dụng dành cho máy tính để bàn được xây dựng hoàn toàn theo cách đó. Điều đó không bao giờ có thể đạt được trong PHP dựa trên Web vì nó hoàn toàn được yêu cầu theo định hướng.

Dù sao thì, tôi hiểu ý của bạn bây giờ. Có các CMS và khung công tác có mức độ này - Wordpress chẳng hạn và Dokuwiki.

  • Trong Wordpress, những sự kiện này được gọi là hành động. Bạn có thể xem danh sách đầy đủ trong the Wordpress Plugin API.

  • Trong DokuWiki, họ đang thực sự được gọi là sự kiện: DokuWiki's event system

Ngoài ra:

Tôi đang cố gắng để xác định một số ưu và nhược điểm của việc có một CMS là sự kiện điều khiển.

Ưu điểm rất rõ ràng: Nó trở nên dễ dàng hơn nhiều, dễ dàng hơn khi móc vào hệ thống mà không cần phải hack lõi. Nó có thể viết các plugin thực sự.

Một yếu tố quan trọng là hệ thống có xu hướng trở nên chậm hơn trong thời gian dài, càng có nhiều móc nối và các plugin càng được đăng ký với móc. Tôi đã nhìn thấy một hoạt động bảo trì của cổng thông tin khổng lồ - việc xóa hàng trăm nút Drupal - mất giờ trên một máy chủ sản xuất cực nhanh, chủ yếu là do hệ thống móc.

+0

+1. Cơ sở hạ tầng plugin (hook) nghe có vẻ tốt và tự giải thích. Wiki khá rõ ràng về những gì "hướng sự kiện": http://en.wikipedia.org/wiki/Event_driven_programming. Và không có vòng lặp chính trong PHP :) – back2dos

+0

Tôi đồng ý, Drupal và Wordpress dễ dàng trở thành voi béo lớn chậm khi bạn thêm ngày càng nhiều mô-đun/plugin. Tôi đã nhìn thấy các trang web với hàng trăm mô-đun/plugins phải được thu nhỏ với nhiều máy chủ, cân bằng tải và bộ nhớ cache phía trước vì CMS không thể theo kịp chỉ với một vài khách truy cập. Việc thêm các tính năng rất dễ dàng cho các nhà thiết kế trang web và cho các nhà phát triển dễ dàng sử dụng các mô-đun khác (tôi đã thấy các mô-đun drupal rất đơn giản với hàng chục phụ thuộc, bây giờ hãy tưởng tượng bạn cài đặt một tá trong số đó). –

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