V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
timqian
V2EX  ›  程序员

我最近一个网站的技术选择和源码分享

  •  
  •   timqian ·
    timqian · 2019-06-04 10:21:52 +08:00 · 1513 次点击
    这是一个创建于 2028 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最新原文: https://blog.t9t.io/tech-stack-of-open-source-jobs-2019-06-03/

    关键词: serverless + react server side rendering

    产品简介

    open-source-jobs 是一个收集主要项目为开源, 并且提供工作机会的公司的网站. 一开始只是一个 github 上的 markdown 项目. 因为发表到 reddit 上受到一些关注, 并且开源在近些年的蓬勃发展. 我觉得这个细分的找工作工具可能有一定价值, 于是把这个 markdown 做成了一个网站形式方便使用. 主要的两部分功能是用户通过 github 注册我可以拿到邮箱, 以及工作 /组织的暂时和筛选.

    用到的工具, 技术以及我为什么这么选择

    Serverless

    技术选择里面最重要的可能就是选择了以 serverless 的方式开发.

    Serverless 这个名字其实取得不是那么好, 容易让人以为开发网站不再需要服务器, 其实它真正的意思不是没有 server, 而是 server 由云平台帮你管理了, 根据需求自动伸缩服务器资源.

    Serverless 目前可能还有各种问题, 比如代码包尺寸限制, 语言限制等. 但它的好处也是显而易见的, 你不用管理服务器了!!

    做过几个失败的网站的同学应该有所经验. 一个纯前端的项目, 基本不会死, 因为你不用维护它, 还有各种免费稳定的托管静态网站的服务, 它总能正常工作.

    但对于带服务器的网站就不一样了, 很多时候网站失败的原因都是因为有一天服务器挂了, 你觉得这个东西反正没什么人用, 我还要花时间去管理服务器, 为这个服务器付钱. 挂了就挂了吧. 但我们也知道, 一些网站 /应用想要成功, 时间也是一个关键因素. 尤其对于小众网站. 刚做出来, 分享到各个地方, 因为需求比较小众, 一开始收到的关注可能不是那么多, 很难通过一个很成功发布获得很多用户. 主要还是靠有这种需求的人通过搜索引擎找到你这个工具. 所以用户量需要时间慢慢增加. 网站需要你在用户量比较少的情况下长期维护. 如果没有 serverless, 在这漫长而没有太多回报的维护生涯中, 你很有可能就放弃了.

    Serverless 让写后端变得更像前端了一些, 你只负责写为用户提供价值的逻辑, 维护服务器这种脏活就不用管了. 增加了这种应用的成活时长, 使之更有可能成功.

    open-source-jobs 在我看来就是属于这一类的应用. 比较小众, 现在可能没有那么大需求, 但需求在慢慢增长. 是一个需要慢慢成长的小众产品.

    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

    最后附上项目链接和源码地址

    8 条回复    2019-06-04 16:21:20 +08:00
    hyyou2010
        1
    hyyou2010  
       2019-06-04 10:55:30 +08:00
    mark 下,回头看
    winglight2016
        2
    winglight2016  
       2019-06-04 14:14:52 +08:00
    Server: AWS lambda
    Serverless Database: AWS dynamodb

    这两项技术,用过一次再也不想碰第二次,感觉是不成熟的产品拿出来交给用户找 bug 来完善的——特点就是送你一大堆券,给你免费用起来,然后填坑填不完,填到放弃。。。
    snappyone
        3
    snappyone  
       2019-06-04 15:06:26 +08:00
    前后分离用 lambda 的话冷启动延迟咋样?
    Musir
        4
    Musir  
       2019-06-04 15:31:16 +08:00 via Android
    中国人搞点中文的东西呗
    Karpov
        5
    Karpov  
       2019-06-04 15:49:43 +08:00
    网站地址有点问题:应该是 https://oo.t9t.io/jobs
    timqian
        6
    timqian  
    OP
       2019-06-04 15:57:30 +08:00
    @snappyone 感觉可以接受, 一秒之内把, 搜到个测评: https://mikhail.io/serverless/coldstarts/aws/

    @Karpov 感谢指出, markdown 里的链接忘记加 https://
    snappyone
        7
    snappyone  
       2019-06-04 16:15:55 +08:00
    @timqian 看了下评测里面 c#的时间,我用 java 貌似更惨,冷启动时间好蛋疼
    timqian
        8
    timqian  
    OP
       2019-06-04 16:21:20 +08:00


    @snappyone 是不是使用姿势不对, 看他测的 java 还可以哇
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2726 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:00 · PVG 23:00 · LAX 07:00 · JFK 10:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.