喜欢用笔记本办公的朋友一定对于以下经历不陌生。
- 在户外办公,明明可以用几个小时的电量,由于运行了一些大型软件,导致电量耗光。
- 跑代码的时候计算量太大,导致机器热量不段升高,风扇声音越来越大。
- 眼看着代码跑完,内存太小被程序吃光被迫中止,得重新调整代码,重新再跑。
- 电脑突然坏了,由于搭建的环境都在这台电脑上,导致无法继续工作。
- 随着工作所需技术的增多,软件越来越大,换新电脑且再瘩搭建工作环境越来越困难。
这都是我们现在或者说以后一定会遇到的问题
我的解决方式就是部署“远程办公环境”
因为在部署“远程办公环境”后,客户端不再受限硬件,即使一个低配的上网本一样可以工作,也许未来的办公电脑只能起到一个终端的作用。
直接使用SSH做远程开发
SSH其实就是一种网络协议,专门用于计算机之间的加密登录。
如果你的开发环境只用终端命令就能完成,那这种方式是最适合你的,也是占用资源最少的。因为客户端只做显示之用,不做额外任何计算之用。
比如,我开发喜欢使用EMACS,那我在本地.ssh文件夹下配置了我家里的SSH连接,连上以后,执行emacs -nw就可以开始办公了,这时无论语法显示还是跳转都与客户端无关。
当然上面方式对有些人并不是一个好的方式,因为更多人是需要GUI程序开发的。
使用XRDP和VNC等协议做远程桌面共享
我本地使用的是XRDP协议将远程操作系统桌面传回本地,占用网络资源非常少,以我目前的网速完全可以胜任,下面是我的远程桌面。
还有一种方式是VNC方式,其中VNC方式占用网络资源较大,不过它支持硬件的GPU加速,如果远程玩儿游戏什么的最好这种方式。
以上两种协议都可以做远程开发使用,但有一个额外的问题,就是对于软件的管理问题,有时我可以只是想运行其中一个软件,而不想去连接整个桌面,那怎么办呢?
这时SSH的 X11-forwarding方式,将远程一个或几个程序的GUI转发到本地显示,可以让我们在当前的操作系统操作像操作本系统软件一样,操作其它系统的软件。推荐工具MobaXterm处理起来很简单。
遇到的问题:
目前主要的问题是户外办公的网络问题,这也要等未来5G开通能给我们的网络提升来解决这个问题。
操作问题,目前针对这方面的软件还是过少,解决方案有时还有有些麻烦,我觉得会随着未来远程办公需求增加,会得到更好的解决。
或许以后会有专业的行业专门帮我们解决这些问题。
关于数据存储问题可以看一下我上一篇文章。