簡體   English   中英

LAMP開發人員如何開始使用Redis / Node.js解決方案?

[英]How does a LAMP developer get started using a Redis/Node.js Solution?

我來自Dreamhost上PHP和MySQL的陳詞濫調。 但! 我也是一個javascript jenie,我一直渴望上Node.js火車。 在我的閱讀中,我無意中發現了一個名為Redis的NoSQL解決方案!

憑借我的共享Web主機和有限的服務器體驗(我知道如何在我的舊dell上安裝Linux並執行一些基本的服務器管理員)如何開始使用Redis和Node.js? 而下一個最好的問題是 - 甚至使用Redis的用途是什么? Redis比MySQL更適合什么情況? Node.js是否刪除了Apache的必要性? 如果是這樣,為什么開發人員建議使用NGINX服務器?

很多問題,但似乎沒有一個堅實的來源,這些信息都在一個地方!

再次感謝您的指導和反饋!

NoSQL只是一個不夠熱門的詞匯。

我將嘗試回答問題的后半部分。

Redis是一個鍵值存儲數據庫系統。 速度是它的主要目標,因此它的大部分用途來自事件驅動的實現(因為它在reddit教程中已經過時)。

它擅長於日志記錄,消息事務和其他反應過程等領域。

另一方面,Node.js主要用於獨立的HTTP事務。 它基本上用於提供內容(很像Web服務器,但Node.js確實不一定是公開的)非常快,這使得它對后端業務邏輯應用程序很有用。

例如,讓C程序計算股票價值並讓Node.js為另一個內部應用程序提供內容,以便檢索或使用Node.js來提供網頁,這樣一個人正在開發,這樣一個人的同事就可以在內部查看它。

它作為應用程序之間的中間人真的很擅長。

Redis的

Redis是一個內存數據存儲區:所有數據都存儲在內存中,這意味着龐大的數據庫意味着大量的內存使用,但具有非常快速的訪問和查找。

它也是一個鍵值存儲:您沒有任何實現或查詢來檢索您的數據。 您只能設置鍵值對,並通過其ID進行檢索。 (Redis還提供有用的類型,例如集合和散列)。

這些特性使Redis非常適合在Web應用程序中存儲會話,在數據庫上創建索引,處理分析等實時數據。

因此,如果您需要一些能夠“替換”MySQL以存儲基本應用程序模型的東西,我建議您嘗試使用MongoDB,Riak或CouchDB作為文檔存儲。 文檔存儲管理您的數據類似於JSON對象(我知道它是一個巨大的捷徑)。

如果您想了解有關流行的nosql數據庫的更多信息,請閱讀本文。

Node.js的

Node.js為V8 JavaScript引擎提供異步I / O. 運行節點服務器時,它會偵聽計算機上的端口(例如3000)。 它不執行任何類型的域名解析和虛擬主機處理,因此您必須使用具有Apache或nginx等代理的http服務器。

在生產中選擇nginx是性能問題,我發現它更容易使用。 但我建議你使用你最舒服的那個。

要開始使用它,只需安裝它們並開始使用它。 HowToNode

您可以從https://redistogo.com/獲得免費計划 - 它是托管的redis數據庫實例。

有關redis數據類型和基本命令的快速介紹,請訪問http://redis.io/topics/data-types-intro

比較什么時候使用這里的東西 - http://playbook.thoughtbot.com/choosing-platforms/databases/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM