成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用于構建API和微服務的流行JavaScript框架

譯文
開發 前端
在本文中,我們將羅列并討論各種用于構建API和微服務的最流行JavaScript框架,以方便您在實際應用構建時予以采用。

用于構建API和微服務的流行JavaScript框架

【51CTO.com快譯】近年來,隨著jQuery、JSON(JavaScript的對象表示法)、MongoDB、ES6 Generators的廣泛使用,JavaScript發展出了許多易于使用、并能與多種編程語言相集成的框架、庫和工具。其中包括:NodeJS、Angular、React、Vue、Meteor、Google Polymer、Mercury、以及Backbone等。而作為后端開發人員中最常用的編程語言,JavaScript通過如下優勢,為軟件開發人員節省了大量的資源和時間:

1.客戶端處理能力

2.易于學習的語法

3.簡單且易于實現

4.易于調試和測試

5.能夠快速執行

6.易于擴展到網頁上

7.帶有內置JavaScript的瀏覽器

8.提供基于事件的編程

9.提供動態內容

基于上述優勢,根據GitHub(擁有全球數百萬開發用戶的最大存儲庫)的統計,JavaScript是產生打開和拉取請求(即:編寫的代碼量)數量最多的編程語言。

下面,我們將討論那些用于構建API和微服務的JavaScript流行框架。注意,這里說的API是一種通信模式,而微服務則是一種架構模式。我們應當區別對待。

用于構建API的十大流行JavaScript框架

1.Hapi

作為一種非常強大的JavaScript框架,Hapi通過最小的開銷和各種開箱即用(out-of-box)的功能,來構建安全、魯棒且可擴展的API。憑借著全球性的開發人員社區,Hapi框架擁有完善的插件系統和如下關鍵功能。

主要特征

  • 可實現緩存
  • 具備錯誤處理能力
  • 提供日志
  • 帶有輸入驗證
  • 提供基于配置的功能

作為一種配置驅動的模式,Hapi具有在特定IP上創建服務器的獨特能力。Paypal和Disney就在它們的應用中用到了Hapi的此類能力。

2. Express

由Node核心項目團隊成員--TJ Holowaychuk構建的Express,是一個快速、且不受限制的簡約式JavaScript框架。它可以為Web和移動應用程序提供一系列強大的功能。在龐大的開發人員社區的支持下,它的所有核心功能得到了不斷更新與迭代。

Express支持各種程序包,以及諸如Pug、Mustache、EJS等模板引擎。Express的API能夠充當HTTP服務器,通過配置路由,來實現在前端和數據庫之間發送/接收各種請求。

3. Restify

該Web服務框架利用連接樣式中間件(connect style middleware),來構建REST API。Restify對構建正確語義的RESTful Web服務進行了優化,可供生產環境直接使用。此外,進行了性能優化的Restify,還可以被用于一些大型Node.js的部署。

主要特征

  • 語義正確
  • 可調試
  • 面向生產環境

目前,用到Restify的知名公司包括:Netflix、Pinterest、Napster、以及npm等。

4. Sails

Sails框架以使用可擴展性的、面向服務的架構,來構建數據驅動型API而聞名。它與大家熟悉的Ruby on Rails等MVC模式框架非常類似。Sails可以在幾周內為您構建出實用的、可用于生產環境的Node應用程序。

用戶可以通過Sails提供的數據驅動式API,來開發聊天應用、儀表板、以及多人游戲等軟件。同時,Sails能夠使用Express來處理Node上的HTTP請求,并使用waterline進行各種與對象相關(object-related)的數據庫映射。

主要特征

  • 自動生成的REST API
  • 適用于任何數據庫
  • 前端透明
  • 可輕松地集成Web套接字
  • 提供專業的支持
  • 完全由JavaScript編寫

目前,用到Sails的知名公司包括:Microsoft、WikiJobs、Philips、DXL、Scout、MOBOOM、以及broadsoft等。

5. Loopback

Loopback是一種用于構建API和微服務的高度可擴展性JavaScript(包括Node和TypeScript)框架。它允許用戶創建出能夠與任何類型Web客戶端協同的,并可以輕松地橋接到后端資源的API。

作為一種開放源代碼的框架,Loopback允許那些具有最少或幾乎沒有編程背景的用戶創建動態的REST API。由于默認使用的是widget-API資源管理器,因此它也能協助創建SDK和API文檔。

主要特征

  • 提供由OpenAPI Spec驅動的REST API
  • 具有高度可擴展性
  • 對GraphQL支持
  • 支持Swagger(一種Rest API)
  • 提供更好的用戶管理策略
  • 提供第三方登錄和存儲服務
  • 提供模型關系支持(Model-relation-support)

6. Koa

由Express的團隊創建的NodeJS下一代Web框架--Koa,旨在為API和Web應用程序提供更具表現力、且功能更強大的基礎架構。值得注意的是,Koa要求NodeJS的版本至少為0.11或更高。

主要特征

  • Koa能夠提供那些從未出現在瀏覽器中的ECMAScript方法
  • 允許在不使用回調的情況下,大幅提高錯誤的處理能力
  • 提供了一套“優雅”的方法,來快速編寫服務器端程序
  • 提供更多的自定義選項
  • 通過支持syn和await關鍵字,來管理各種代碼

7. Total.js

Total.js是一個開放、穩定且免費的JavaScript框架,可用于構建快速、且功能強大的REST服務、網站和實時應用。TotalJS能夠與Angular、Polymer、Backbone、Bootstrap、以及其他客戶端JavaScript框架完全兼容。

值得一提的是,Total.js Eshop是一個針對移動設備,進行了用戶界面優化的版本,所有高級會員都可以下載到該版本。

主要特征

  • 可擴展和異步
  • 易于使用
  • 支持數組和其他原型
  • 支持MVC架構

8. Feathers

Feathers是一個適用于實時應用和REST API的輕量級JavaScript框架。它可以在幾分鐘之內構建出原型,并讓對應的應用程序能夠在幾天內投入生產環境。Feathers不但支持各種數據庫,并且可以與諸如React、React-native、VueJS、Angular、Android或iOS等,許多前端技術一起使用。當然,它也可以與任何后端技術進行交互。

主要特征

  • 提供靈活的插件
  • 具有服務優先的原則
  • 支持不可預知的數據存儲(Datastore agnostic)
  • 提供實時的REST API
  • 具有通用性

9. Fastify

顧名思義,Fastify是一種極快的Web框架。它高度專注于以最少的開銷和強大的插件架構,為開發人員提供最佳的使用體驗。由于受到了Hapi和Express框架的極大啟發,Fastify以其高效的服務器,不但提供了較低的架構成本,而且能夠交付讓用戶滿意的、更好的負載響應能力。

核心功能

  • 提供基于模式(Schema-based)的支持
  • 具有可擴展性
  • 對開發人員友好
  • 提供日志
  • 對TypeScript(是JavaScript的一個超集)友好
  • 具有高性能

10. Actionhero

由Typescript編寫的Actionhero是一種可重用、可擴展且快速的NodeJS API服務器。它適用于在Linux、OS X和Windows上運行的、無狀態和有狀態的應用程序。該框架通過入門級的REST API方法,提供了各種快速的路由、版本控制、測試、以及翻譯工具。

主要特征

  • 易于使用
  • 內置各項任務
  • 面向集群
  • 提供路由
  • 支持本地化

目前,用到Actionhero的知名公司包括:Samsung、TaskRabbit、以及madglory等。

用于構建微服務的四大流行JavaScript框架

在微服務框架支持的情況下,JavaScript的注釋語法(Annotation Syntax)功能、及其可讀性,對于Java微服務的開發非常實用。總的說來,Java通過提供以下功能來支持微服務的開發和部署:

  • 用戶界面
  • 各種模型組件
  • 與后端資源的連接

此外,如下Java EE標準也適用于微服務應用:

  • 針對API的JAX-RS
  • 用于數據處理的JPA
  • 用于依賴項注入和生命周期管理的CDI

下面我們來討論一些可以簡化微服務架構開發的流行Java框架。

1. Spring Boot

Spring Boot可以方便用戶創建獨立運行的、基于Spring的應用程序。它們能夠獨立于不同的語言,實現各種反轉控制和面向切面(aspect-oriented)的編程。

主要特征

  • 可創建獨立的Spring應用程序
  • 能直接嵌入Tomcat、Jetty或Undertow中(但不部署WAR文件)
  • 提供入門級的依賴項,以簡化構建的配置
  • 提供各項運行狀況檢查、指標和外部配置等面向生產環境的功能
  • 無需XML配置
  • 無需代碼生成

2. Dropwizard

Dropwizard能夠讓用戶構建操作友好且高性能的RESTful Web服務。用戶能夠通過該框架提供的穩定且成熟的Java庫,來輕松地整合到各種輕量級的程序包中。

主要特征

  • 提供對復雜配置的、開箱即用式的支持
  • 提供各種操作工具
  • 提供日志記錄
  • 提供各種指標

總的說來,Dropwizard能夠讓用戶在最短的時間內,交付出具有產品級質量的Web服務。

3. Spark

作為一種微服務框架,Spark可以讓用戶用最少的精力,用Kotlin和Java 8快速地構建Web應用。通過流暢的、具有聲明性和表達性的語法,Spark不但提高了代碼的生產力,還能讓用戶充分利用到JVM。

目前,用到Spark的知名公司包括:Asana、Gosu、Apache、以及Playlyfe等。

4. Restlet

Restlet能為大量Java開發人員提供支持,以便他們構建出更好的Web API。用戶可以根據Apache軟件許可準則的相關條款,免費下載和使用這款完全開源的框架。

主要特征

  • 原生的REST支持
  • 提供廣泛的用例支持
  • 提供靈活的配置
  • 安全且可擴展
  • 提供完整的網絡服務器
  • 具有各種可用的表示形式
  • 提供廣泛的連接器組

除了上述介紹到的各種架構,以Netflix Eureka、Consul或Amalgam8為代表的服務發現解決方案,也能夠提供與Java微服務的輕松連接。

小結

上述JavaScript框架的列表,便是我根據JavaScript社區中的使用率和普遍性的綜合排名,收集到的用于構建API和微服務的各種流行框架。您具體應該采用哪一種框架,還是取決于計劃構建的實際應用類型。

原文標題:Popular JavaScript Frameworks to Build API and Microservices,作者: Kanchan Sharma

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:龐桂玉 來源: 51CTO
相關推薦

2021-12-07 12:15:07

PythonAPI框架

2021-09-22 09:00:00

Python框架開發

2019-10-21 09:29:00

JavaScriptHTML數據庫

2022-02-17 11:41:26

JavaScript框架編程語言

2022-02-15 09:00:00

Java開發框架

2011-03-21 13:01:10

2021-03-05 11:09:46

Go框架微服務

2024-12-23 00:22:55

2023-06-28 08:00:00

JavaScript開發

2021-12-29 08:30:48

微服務架構開發

2022-08-12 07:39:30

數字化集成微服務

2011-06-16 08:22:04

JavaScriptjQuery

2022-10-10 08:00:00

微服務Spring Boo容器

2018-05-04 14:34:06

微服務SOAAPI

2018-12-03 08:00:00

微服務gRPC

2024-04-10 09:36:17

Spin開源框架

2010-07-23 08:22:00

動態語言框架

2024-01-09 09:09:45

RESTGraphQL

2022-06-07 08:19:30

gRPCBallerina微服務

2017-01-19 09:57:18

APP開發JavaScript
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91玖玖 | 国内精品视频一区二区三区 | 日韩精品网站 | 免费在线国产视频 | 古装人性做爰av网站 | 国产一二区在线 | 亚洲成人精品 | 久久成人一区 | 久久精品免费观看 | 7777精品伊人久久精品影视 | 欧美性受xxxx白人性爽 | 精品国产一区二区国模嫣然 | 中文字幕不卡视频在线观看 | 欧美日韩在线视频一区二区 | 欧美极品少妇xxxxⅹ免费视频 | 亚洲久久 | 国产精品久久久久久婷婷天堂 | 亚洲免费在线 | 日韩一区二区三区视频 | 日本一级淫片免费啪啪3 | 国产成人精品一区二区三 | 日操夜操 | 久久黄网 | 精品无码久久久久久国产 | 久久剧场| 亚洲国产一区二区三区 | 中文字幕亚洲精品 | 久久网日本 | 伊人网站视频 | 国产在线观看网站 | 国产免费色 | 久久精品一区二区三区四区 | 毛片入口 | 国产精品明星裸体写真集 | 人人艹人人爽 | 不卡一区二区三区四区 | 久优草 | 粉嫩粉嫩芽的虎白女18在线视频 | 欧美日韩精品 | 久久久久亚洲 | 亚洲精品中文字幕 |