antd picker 使用 如何_如何打造 Serverless JavaScript 全棧商業級應用?

2019 年底我們發布過一篇《O’Reilly 1500 份問卷調研:2019 年 Serverless 落地到底香不香?》,揭示了海外 Serverless 的落地情況,但中國 Serverless 的落地實踐分享相對較少,似乎誰都在喊 Serverless,誰都不知道別人落地的怎么樣了。希望通過這篇語雀的實踐文章,大家能管中窺豹,一起探索 Serverless 落地實踐。

語雀技術架構演進

1. 原型階段

語雀誕生于 2016 年,當時螞蟻金融云需要一個工具來承載它的文檔。當時負責的技術同學利用業余時間,開始搭建這個文檔工具。項目的初期,沒有任何人員和資源支持,同時也為了快速驗證原型,技術選型上選擇了最低成本的方案。

底層服務完全基于體驗技術部內部提供的 BaaS 服務和容器托管平臺:

  • Object 服務:一個類 MongoDB 的數據存儲服務;
  • File 服務:阿里云 OSS 的基礎上封裝的一個文件存儲服務;
  • DockerLab:一個容器托管平臺。

這些服務和平臺都是基于 Node.js 實現,專門給內部創新型應用使用,也正是由于有這些降低創新成本的內部服務,才給工程師們提供了更好的創新環境。

應用層服務端自然而然的選用了體驗技術部開源的 Node.js Web 框架 Egg(螞蟻內部的封裝 Chair),通過一個單體 Web 應用實現服務端。應用層客戶端也選用了 React 技術棧,結合內部的 antd,并采用 CodeMirror 實現了一個功能強大、體驗優雅的 markdown 在線編輯器。

b6d0349c7fea2ad79fc6b6ee9f7710bf.png

這時可以算作語雀的“原型階段”,它僅僅是一個工程師的業余項目,采用內部專為創新應用提供的 BaaS 服務和一系列的開源技術解決方案,驗證了在線文檔工具這個產品原型。

PS:當時我還不在語雀團隊,但是巧的是我卻在給語雀提供 Object、File 等 BaaS 服務和 Egg.js Web 框架的支持。

2.如何打造?

點擊文末了解更多查看。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277627.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277627.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277627.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Android Studio安裝部署系列】十三、Android studio添加和刪除Module 2

版權聲明:本文為HaiyuKing原創文章,轉載請注明出處! 概述 新建、導入、刪除Module是常見的操作,這里簡單介紹下。 新建Module File——New——New Module... 選中Android Library 修改Library名稱 在項目工程中修改依賴 和添加下面…

Kinect開發筆記之七Visual Studio結合C#調控Kinect俯仰角度

總感覺自己前面啰啰嗦嗦寫了好多,卻一直都沒有使用用開發kinect的重型武器——Visual Studio。 那么本次我們就借助于Visual Studio,寫一個C#程序,連接Kinect并調用Kinect SDK標準函數庫來改變Kinect的俯仰角。 首先我們打開VS創建一個項目…

hadoop HDFS常用文件操作命令

命令基本格式: hadoop fs -cmd < args >1.ls hadoop fs -ls /列出hdfs文件系統根目錄下的目錄和文件 hadoop fs -ls -R /列出hdfs文件系統所有的目錄和文件 2.put hadoop fs -put < local file > < hdfs file >hdfs file的父目錄一定要存在&#xff0c;否則…

定量庫存控制模型_探索全面流動管理TFM 庫存控制與低減的理性策略

庫存乃萬惡之源庫存不僅占用了資金&#xff0c;還占用了各種管理性資源&#xff0c;形成了“財務性顯性成本“而且過多的庫存導致“緩沖區”的存在&#xff0c;還使得各類問題變得不那么緊迫&#xff0c;從而掩蓋了各類隱藏的問題&#xff0c;這被稱為“隱形成本”零庫存不僅做…

android studio更新之后打包遇到V1(Jar Signature)、 V2(Full APK Signature)問題

昨天更新了android studio 打包時遇到兩個勾選框&#xff0c;于是開始了解… 問題 剛開始默認是勾選 V2&#xff08;Full APK Signature&#xff09;&#xff0c;然后我就打包去測試先了&#xff0c;發現安裝失敗。之后發現與簽名有關系。 發現 android 7.0中引入了APK Signatu…

C#——一個簡單的文件管理器

最近在緊張的學習C#&#xff0c;說實話對C#之前沒有太多的接觸過&#xff0c;只知道C#的特性與java很相似&#xff0c;接觸了之后才發現C#跟java相比區別不是很多&#xff0c;但它是一門實現程序能力比Java還要好的語言&#xff08;僅代表個人觀點&#xff09;。 有許多新手在…

關于epoll,select,poll的理解

select: 輪詢fd_set 1.采用fd_set存儲fd&#xff08;fd_set通過數組位圖實現&#xff09; 2.每次調用select&#xff0c;都需要把fd集合從用戶態拷貝到內核態&#xff0c;fd越多開銷越大 3.每次調用select&#xff0c;都需要在內核遍歷傳遞進來的fd&#xff0c;開銷大(輪詢&…

kali linux超級用戶_如何優雅的在Linux上使用Powershell]

點擊上方“藍字”關注我們吧&#xff01;譯文聲明本文是翻譯文章&#xff0c;文章原作者 TJ Null文章來源&#xff1a;https://www.offensive-security.com原文地址&#xff1a;https://www.offensive-security.com/offsec/kali-linux-powershell-pentesting/譯文僅供參考&…

Laravel5.5 MySQL配置、讀寫分離及操作

2019獨角獸企業重金招聘Python工程師標準>>> Laravel 讓連接不同數據庫以及對數據庫進行增刪改查操作: 參考&#xff1a;http://laravelacademy.org/post/854.html 配置讀寫分離 應用的數據庫配置位于 config/database.php&#xff08;但是數據庫用戶及密碼等敏感信…

Kinect開發筆記之八C#實現Kinect聲音的追蹤

聲明&#xff1a;本文中特征多針對Kinect for windows 1.0&#xff0c;新版的Kinect Sensor可能有部分數值或方法有一定變化&#xff0c;請知曉。Kinect的聲音來自下方的4個麥克風組成的麥克風陣列。傳感器內含數字信號處理器&#xff0c;可以用來強化接受聲音的清晰度同時處理…

Nginx常見配置:負載均衡、限流、緩存、黑名單和灰度發布

一、Nginx安裝&#xff08;基于CentOS 6.5&#xff09; 1.yum命令安裝 yum install nginx –y(若不能安裝&#xff0c;執行命令yum install epel-release) 2. 啟動、停止和重啟 service nginx startservice nginx stopservice nginx restart瀏覽器中 輸入服務器的 ip 地址&…

國服服務器_《Minecraft我的世界》第三方服務器的基本儲備

今天我想單獨來聊一聊Minecraft我的世界第三方服務器的發展。世外荒原玩家作品我來到頭條的第一篇文章就發表了一篇我對Minecraft現狀的看法&#xff0c;現在國服的狀態對老玩家不是很友好。(這不說明國服的運營戰略路線是有問題的)因此誕生了一大堆第三方服務器。世外荒原玩家…

Unity中Time.deltaTime的含義及其應用

相信Unity的開發者或者初學者都對Time.deltaTime并不陌生&#xff0c;我們經常會在代碼中用到或者看到它&#xff0c;今天去官方的API文檔查了一下&#xff0c;感覺它非常有用&#xff0c;所以翻譯一下以引導初學者。 原文網址&#xff1a; file:///Applications/Unity/Unity…

unity3d曲線text文本

測試.pngusing System; using System.Collections.Generic;namespace UnityEngine.UI.Extensions {/// <summary>/// Curved text.讓文本按照曲線進行顯示 【注意對Image的變形 也是可以的】/// 說明&#xff1a; 對Text的操作就和 shadow 和 outline 組件類似。/// <…

HTML 和CSS

1 HTML 介紹1.1 web 服務本質import socket sk socket.socket() sk.bind(("127.0.0.1", 8080))sk.listen(5) while True: conn, addr sk.accept() data conn.recv(8096) conn.send(b"HTTP/1.1 200 OK\r\n\r\n") conn.send(b"<h1>Hello world…

Unity中Quaternion的含義及其使用

官網API文檔&#xff1a; file:///Applications/Unity/Unity.app/Contents/Documentation/html/en/ScriptReference/Quaternion.html Quaternion的意思是四元數&#xff0c;用于代表旋轉。 它們是緊致的&#xff0c;不會產生萬向節死鎖并且能夠很容易被插值。Unity內使用Quat…

Python PIPEs

2019獨角獸企業重金招聘Python工程師標準>>> https://www.python-course.eu/pipes.php https://www.tutorialspoint.com/python/os_pipe.htm 轉載于:https://my.oschina.net/zungyiu/blog/1860857

延時消息_Handler的消息延時是怎么實現的

消息延時做了什么特殊處理&#xff1f;是發送延時&#xff0c;還是消息處理延時&#xff1f;延時的精度如何&#xff1f;通常我們使用Handler的消息延時都是調用sendMessageDelayed函數實現的&#xff0c;其中delayMillis是需要延時的毫秒。通過跟蹤sendMessageDelayed函數可以…

5月JC學習總結

斷劍重鑄之日&#xff0c;王者歸來之時。為了更美好的明天而戰。 五月 悄悄地過了 人兒 不覺中散了 攜著一腔熱血&#xff1b;來到蛟川 來到機房 微涼的輕風&#xff0c;無聲地去了 熾熱的驕陽&#xff0c;即將要落了 站在4樓&#xff0c;向窗外眺望&#xff0c;映出的不是夕陽…

4 關卡流 進階_全息武器全解析,記住4個點全區第一就是你!

實不相瞞&#xff0c;每次看著全息武器糖糖都感覺自己像鋼鐵俠高端大氣上檔次&#xff0c;低調奢華有內涵那么問題來了&#xff01;這個全息武器究竟該怎么玩才能成為真正的鋼鐵俠&#xff1f;我的使命之全息武器【作者&#xff1a;D38激戰阿曼——潛龍小生】全息武器在屬性增加…