我最近一個網站的技術選擇和源碼分享

最新原文: blog.t9t.io/tech-stack-…前端

關鍵詞: serverless + react server side renderingreact

產品簡介

open-source-jobs 是一個收集主要項目爲開源, 而且提供工做機會的公司的網站. 一開始只是一個 github 上的 markdown 項目. 由於發表到 reddit 上受到一些關注, 而且開源在近些年的蓬勃發展. 我以爲這個細分的找工做工具可能有必定價值, 因而把這個 markdown 作成了一個網站形式方便使用. 主要的兩部分功能是用戶經過 github 註冊我能夠拿到郵箱, 以及工做 /組織的暫時和篩選.git

用到的工具, 技術以及我爲何這麼選擇

Serverless

技術選擇裏面最重要的可能就是選擇了以 serverless 的方式開發.github

Serverless 這個名字其實取得不是那麼好, 容易讓人覺得開發網站再也不須要服務器, 其實它真正的意思不是沒有 server, 而是 server 由雲平臺幫你管理了, 根據需求自動伸縮服務器資源.web

Serverless 目前可能還有各類問題, 好比代碼包尺寸限制, 語言限制等. 但它的好處也是顯而易見的, 你不用管理服務器了!!後端

作過幾個失敗的網站的同窗應該有所經驗. 一個純前端的項目, 基本不會死, 由於你不用維護它, 還有各類免費穩定的託管靜態網站的服務, 它總能正常工做.服務器

但對於帶服務器的網站就不同了, 不少時候網站失敗的緣由都是由於有一天服務器掛了, 你以爲這個東西反正沒什麼人用, 我還要花時間去管理服務器, 爲這個服務器付錢. 掛了就掛了吧. 但咱們也知道, 一些網站 /應用想要成功, 時間也是一個關鍵因素. 尤爲對於小衆網站. 剛作出來, 分享到各個地方, 由於需求比較小衆, 一開始收到的關注可能不是那麼多, 很難經過一個很成功發佈得到不少用戶. 主要仍是靠有這種需求的人經過搜索引擎找到你這個工具. 因此用戶量須要時間慢慢增長. 網站須要你在用戶量比較少的狀況下長期維護. 若是沒有 serverless, 在這漫長而沒有太多回報的維護生涯中, 你頗有可能就放棄了.markdown

Serverless 讓寫後端變得更像前端了一些, 你只負責寫爲用戶提供價值的邏輯, 維護服務器這種髒活就不用管了. 增長了這種應用的成活時長, 使之更有可能成功.框架

open-source-jobs 在我看來就是屬於這一類的應用. 比較小衆, 如今可能沒有那麼大需求, 但需求在慢慢增加. 是一個須要慢慢成長的小衆產品.less

Serverless 開發用到的工具

  • Server: AWS lambda
  • Serverless Database: AWS dynamodb
  • Easy Deployment: apex up
    • 這裏的部署包括: 子域名自動註冊; HTTPS; 以及部署服務端最新代碼

前端模塊化開發: React

React 可能不用多作介紹了, 是如今前端圈子裏最火的框架. 讓你能夠模塊化開發前端頁面.

Server Side Rendering(SSR)

open-source-jobs 是一個內容站, 因此對搜索引擎友好是很重要的一點, 目前 React 圈這一點作的最好的應該就是 next.js 了

  • Server Side Rendering for SEO: next.js

最後附上項目連接和源碼地址

相關文章
相關標籤/搜索