實現:Node.js上的JavaScript Servlet的方式

Node.js徹底改變了開發JavaScript的方式。在這篇文章中,我們將在後端查看JS的另一個開源創新。

實現:Node.js上的JavaScript Servlet的方式

Achieve是一個在Node.js上運行的現代HTTP服務器,它使用JavaScript Servlet來啟動後端處理。(npm,GitHub)JS Servlet快速,易於使用,並且不限制您開發複雜後端應用程序的能力; 非常適合快速開發微服務或完整的基於Node.js的Web應用程序。您甚至可以將它用於提供網頁。

servlet是一個在服務器上運行的小程序。這個術語早已與Java有關。Java Servlets提供了用Java編寫的服務器和後端應用程序之間的接口。這個名為Achieve的新服務器實現在Node.js上提供了一個JavaScript Servlet實現。如果您熟悉Java Servlet,則應該很容易看到新JS Servlet設計中的一般相似之處。

Achieve的最初動機是將Web應用程序開發包括在早期編程課程(包括Web開發課程)中。易於使用,尤其是交換utf-8文本(HTML5的默認值)是絕對必要的。JavaScript是一種明顯的語言選擇。

各種考慮促使使用servlet概念,受Java servlet的啟發。閱讀快速入門指南,您將看到,憑藉JS Servlets的特殊功能,Achieve非常易於使用。但是沒有人應該受到工具限制的阻礙。易用性是一個特徵,而不是限制特徵。JS Servlet Context對象以及對Node.js和所有存在的節點模塊的完全訪問提供了完整專業體驗的途徑。最後,使用Achieve的早期體驗可以更容易地在以後的課程中引入Java Servlet。

真正的開發人員不需要不必要的複雜性!

隨著Achieve工作的進行,很明顯,實施對於生產來說足夠有效。此外,它的基本功能對開發人員和學生都有幫助。

  • 在生產中實現將應用程序組件加載到內存中,但在代碼更改後自動重新加載它們。
  • 實現提供錯誤消息,以便在瀏覽器或瀏覽器控制檯中以與瀏覽器代碼中的錯誤相同的形式顯示,從而在開發和測試期間允許一個焦點。
  • Achieve可以處理返回通過servlet的return語句返回給它的響應的整個過程。
  • Achieve的默認值是utf-8純文本,但您可以更改MIME類型和編碼(事實上,設置任何標頭)並仍然使用servlet return語句,允許Achieve完成響應。
  • 您可以將應用程序文件夾設置為您有權訪問的任何目錄(包括網絡目錄),併為根應用程序設置子目錄。
  • 您可以通過訪問servlet的Context對象中的請求和響應來完全控制,就像在任何Node.js應用程序中一樣。
  • 您可以列出Achieve當前支持的MIME類型,並根據需要添加其他MIME類型。
  • 實現支持瀏覽器緩存(ETags)和壓縮(gzip,deflate)。
  • 您可以將Achieve與其他節點模塊結合使用來構建後端應用程序。

一個獨立的Servlet容器!

在某些情況下,單獨使用JS Servlet是運行微服務的不錯選擇。模塊servlets.js 是Achieve的servlet部分。它是在沒有靜態內容服務器代碼的情況下實現的。雖然速度至關重要時可能會提高速度,但在做出選擇時應考慮以下因素。

因為servlets.js是Achieve的servlet支持部分,所以您可以使用Achieve開發並在生產中切換到servlets.js。

實現允許微服務開發人員通過單元測試獨立工作,在其他組件發展良好的情況下保持集成。通過瀏覽器觸發後端進程很容易,並且Achieve向瀏覽器提供錯誤消息的方式可以幫助您進行調試。這通過允許一次關注一件事來簡化開發過程。您可以使用瀏覽器作為GUI輕鬆地為您的微服務開發監控工具。通過服務與運行決策非常有效地實現目標。如果您真的覺得需要通過編碼來縮短微秒,那麼您可能需要更快的計算機。

Achieve和servlets.js是作為HighLevel Logic項目(HLL)的一部分開發的。它們都可以通過npm 和GitHub獲得,MIT許可下的免費和開源。


分享到:


相關文章: