非管理员账户如何安装 Node.js 与快速切换版本

在企业环境中的电脑,往往严格管控着管理员权限,无法自由地安装软件。

  • 如何以普通用户的身份安装 Node.js?
  • 如何在需要低版本的 Node.js 时快速切换版本而不需要重新安装?

JDK 也适用于这种方式安装!只需多配一个环境变量 JAVA_HOME

阅读更多

使用 HTTP API 从 WPS 在线表格中获取数据

之前的博文中,我提到过本站的友情链接是通过 Vika 维格表管理的,维格表的一大特色是支持通过 API 增、删、改、查表格中的数据,这直接让维格表化身为一个简单的数据库,可玩性大大提升,通过它维护友链数据,并通过自己编写的脚本生成友链页面就是个例子。

阅读更多

离奇问题,网络故障恢复后,无法重连到数据库?

问题现象

周末生产环境出现了一个奇怪的问题,部署在 k8s 容器中的 SpringBoot 应用连接到数据库的交换机出现了故障,交换机的故障恢复后,查询数据库的接口还是无法提供服务,试了很多次,日志中报出的异常依然是 Connection is not available,难道是网络还是没回复?

网络可能不通?那我们就 telnet 一下,网络是没问题的。最后我们使用 netstat 看一下和数据库的连接状态,状态是 ‌ESTABLISHED,这个状态表示已经成功建立连接,但是连接只有一个,与我们配置的最小活跃连接数 10 的数量不相符,此时为了业务能尽快恢复,只好重启了应用服务。

事后,我们又查看了所有通过这个故障交换机连接数据库的应用,有的没有发生问题,有的没有经过重启,分别在 20 分钟和 120 分钟之后自动恢复了,于是我们开始在测试环境想办法复现这个问题并寻找解决方案。

阅读更多

macOS 自动重新打开意外退出的应用

我的 Mac mini 全天运行,上面挂着 Parsec 远程控制 APP,需要时我会通过 Parsec 连上去使用。然而 Parsec 长时间运行后,偶尔会崩溃,搞得我需要跑到 Mac 旁边手动点重启才能重新连上。有没有办法能让它崩溃以后自动重启呢?

阅读更多

腾讯云 EdgeOne 3.0 体验

前几天腾讯云发布了 边缘安全加速平台 EdgeOne 3.0 版本,体验了一下,效果还不错!

以上链接为推广链接,通过该链接购买产品,我将获得一定比例的佣金。本文并非受邀撰写,评测产品为自费购买,我会尽量客观地评价产品。

介绍

EdgeOne 和 Cloudflare CDN 类似,属于防护型 CDN,可以隐藏源站地址,防护各种攻击,静态网站和动态网站都能用。

阅读更多

腾讯云 CDN 防刷经验分享

通过 CDN 部署静态网站可以让网站加载速度如德芙般丝滑。CDN 和云服务器不同,云服务器大多是按带宽计费,CDN 则是按流量计费,如果设置不当,遇到流量洪峰时,会产生高额账单。最近不少使用 CDN 的博客遭遇了恶意刷流量攻击(近期部分加速域名晚间遭遇恶意流量事件说明),本站也是受害站之一,但基本没啥损失,分享一下防刷经验。

DNS 设置

虽然接入 Cloudflare 提供的 DNS 可以防御 DDoS,但 Cloudflare 在国内访问太慢了,暂时没套,如果未来受到比较严重的攻击,再考虑套 Cloudflare。

多准备几个源站,可以在受到攻击时灵活切换。我准备了三套源站,GitHub Pages、Netlify、腾讯云 CDN。

用腾讯云的 DNSPod,可以设置两条线路,默认线路解析到 Netlify,国内线路解析到腾讯云 CDN,GitHub Pages 不解析,留作备用。

阅读更多

VSLite 原理解析与本地化部署

VSLite 是一个开源的、完全运行在浏览器中的开发环境,它的亮点在于,不需要联网也可以直接在浏览器中使用 Node.js、Python、Git 等工具。你可以在 vslite.dev 体验到在线 demo。

传统的基于云的开发环境,例如 GitHub Codespaces,依赖于后端服务,前端所执行的命令,实际上是通过网络请求发送到后端对应的云虚拟机(或容器)中执行的,这就需要消耗后端的计算资源;而 VSLite 的思路完全不同,它在浏览器中启动了一个容器,做到了不再依赖后端。

想要在浏览器中跑起来一个容器,第一次听说这样的想法时,我说:不可能!绝对不可能!就浏览器这也受限那也受限的环境,还能跑起来一个操作系统?然而 StackBlitz 真的做到了,他们开发出了 WebContainers,WebContainers 是一个基于浏览器的运行时,用于执行 Node.js 程序和操作系统命令,完全在浏览器选项卡中。以前需要云虚拟机才能执行的应用,现在可以完全在浏览器端运行。

经过两天的研究,我开始对 WebContainers 的原理有了初步的了解。

阅读更多
微信二维码