開源響應式 NoSQL 資料庫

專案簡介

Reactive Programming ( 響應式程式設計 ) 是最近幾年來軟體開發框架/程式庫中相當熱門的設計模式,無論是網頁前端框架( 例如 RxJS ) ,iOS/Android 行動程式設計( 例如 RxSwift,RxJava ) ,你都可以看到 Reactive Programming 的蹤跡。

Reactive Programming 對於處理伴隨時間變化的資料流在 GUI 上的顯示相當方便 ,例如像 Excel 這樣的試算表軟體,當一個欄位的資料相依於其它欄位的資料變化時,使用 Reactive Programming 來處理就很直覺,對於 Reactive Programming 概念還是很模糊,可以參考最下面的參考資料

如果前端已經使用 Reactive Programming ,那麼存在資料庫中的資料要如何與前端做整合?

這應該也是響應式 NoSQL 資料庫 – RxDB 誕生的原因,資料庫的本身就支援 Reactive Programming 介面( 使用 RxJS ) ,那麼前端只要去 Subscribe 資料庫的欄位 ,資料庫中的資料有變化就會即時反應到前端介面,這確實可以省掉開發者不少時間,至少不用再寫一的中介軟體來處理資料庫中的資料欄位變更

RxDB 適合使用 Javascript 開發的網頁前端,Hybrid 應用程式,Electron 應用程式,和 NodeJS

RxDB 可以對任何 CouchDB 相容的端點進行即時複製,也可以對 GraphQL 端點進行及時複製( Replication ) ,( 可以思考一下這功能應該可以開發離線應用程式,等連線網路的時候再進行同步,但是資料衝突的處理該如何處理? )

RxDB 的功能

  • 多平台支援 ( 瀏覽器,nodejselectron,cordova,react-native )
  • Reactive – 基於 RxJS
  • 離線優先
  • 複製 ( Replication ) – 相容 PouchDB,CouchDB 和 IBM Cloudant
  • Schema-based – 使用 JSON-Schema 標準
  • Mango-Query – 如果你會用 MongoDB 和 mongoose  就會使用
  • Encryption – 可針對欄位加密
  • 資料庫狀態的 Import/Export ,對於使用 TDD 開發很棒
  • 多重視窗同步資料 – 在不同的瀏覽器視窗與不同的 NodeJS 行程 )
  • 支援 ORM
  • 完全支援 TypeScript

RxDB 支援以下的前端框架

專案網址

參考資料

相關線上課程

Soft & Share 訂閱會員加值服務

找線上課程?試看看 Soft & Share 網站搜尋引擎

✍ 搜尋結果太多?可參考 Soft & Share 搜尋引擎使用技巧


幫我們個小忙!

使用 e-mail 追蹤 Soft & Share


這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: