远程开发方案

  • Cloud Studio - 开启云端开发模式 WebIDE 腾讯的这个在线开发工具还不错,但是目前还没有出定价方案,每日仅支持 4 小时在线开发

  • 较为完善的在线运行环境

    https://stackblitz.com/ 将 node 环境搬到了浏览器,vscode online 的编辑体验

    https://codesandbox.io/ 非常成熟的在线代码运行环境,但使用体验受限于网络,在国内还行吧

    自行配置一台服务器

    • 自行配置环境 然后安装 cdr/code-server: VS Code in the browser (github.com)

    • 最好是配置域名以及 https 不然会有一些 service-worker 的问题

    • 移动端使用 code-server

      • 然后再添加为 pwa 应用,感觉非常良好

        • 更好的方案是使用 FusionApp 构建一个套壳app,这样可以实现全面屏沉浸,且使用外接键盘右键单击时可以避免一些浏览器的闪现一下菜单就又没了的问题Screenshot20220108193915.png

        • funsionApp vs code 套壳 源代码 vs code1.0.1.fap 自行修改其中的浏览页地址为自己的即可

      • 建议使用百度输入法(参见 手机编程输入法选型

      • ctrl+c 无法使用,但右键菜单中的复制按钮可以使用,猜测是权限问题浏览器限制了没有单击这样的交互则无法复制

    • 防卡死:code-server 似乎有一点问题,其中一些进程会一直吃内存

    • rfjakob/earlyoom: earlyoom - Early OOM Daemon for Linux (github.com) 防止 linux 服务器由于程序大量占用内存后直接卡死无法 ssh 连接, earlyoom 会监测内存使用情况,在内存不够的时候杀掉占用内存过多的进程。

      • linux 有自带一个 oom-killer 但这玩意需要等很长时间,也就是实在卡的没办法了才会去清理,我等不了那么久

    code-server 中遇到的一些问题

    使用云服务器与节省经费

    • 例如采用云服务器厂商提供的 ecs (最好选择可以停机不收费的

    • 使用这个方案还有一个优势就是可以随意变配,cput、内存、带宽不够直接分分钟加上去

    • 由于停机节省模式下会回收 公网 ip ,所以还需要自行更新 dns 解析,又由于 dns 解析的 ttl 比较高 可以使用 ipconfig /flushdns 命令立刻刷新本机的 dns 记录

    • 在安卓设备上可以使用 hosts go 这样的通过 vpn 来修改dns

    • 作为开发者最好选择外国的服务器,因为可以得到更好的网络速度,例如 npm 还有系统软件源的下载比国内要快得多

    一个用于自动进行停机以及更新 dns 解析的项目 https://github.com/2234839/auto_stop_dev

    vscode web版

    目前网上随便一搜的教程基本都是直接 yarn web 启动,根本没有进行过压缩的,这种非本地打开需要及其长的时间,几乎无法用于生产

    by 崮生 from 崮生 • 一些随笔 🎨,欢迎 赞助本文
    本文欢迎分享与聚合,全文转载未经授权( 联系我)不许可。