介绍
Github Actions是 github 官方推出的一款 CI(持续集成)工具,目前还处于Beta
版本,需要申请内测资格才能使用,申请成功之后在自己的代码仓库就可以看到Actions
了。
Github Actions是 github 官方推出的一款 CI(持续集成)工具,目前还处于Beta
版本,需要申请内测资格才能使用,申请成功之后在自己的代码仓库就可以看到Actions
了。
众所周知 HTTPS 是保证 HTTP 通讯安全的协议,网站启用 HTTPS 可以避免很多安全性的问题, 而且 Chrome 浏览器 从 68 版本开始直接将 HTTP 网站标记为不安全了。
所以把网站升级成 HTTPS 自然是大势所趋,不过启用 HTTPS 有个最重要的问题是 HTTPS 证书要花钱
!如果每年额外花钱去购买 HTTPS 证书,那也是一笔很大的开销。那么有没有免费的HTTPS
证书可以用呢,查了下资料有个叫Let’s Encrypt
的项目就提供了免费签发 HTTPS 证书的服务,这里记录下如何使用Let’s Encrypt
来签发证书。
websocket 作为现代浏览器的长连接标准,可以很好的解决浏览器与服务器实时通讯的问题,那么在 websocket 出现之前是怎么解决这个问题的呢?首先来回顾一下在此之前浏览器和服务器的”长连接”之路。
在 websocket 协议出来之前,主要是有三种方向去实现类似 websocket 的功能的。
flash 支持 socket 通讯功能,基于 flash 可以很简单的实现与服务器建立通讯。
浏览器使用 ajax 去轮询服务器,服务器有内容就返回,轮询也分为短轮询和长轮询。
k8s
本身就支持服务滚动升级,但是如果程序没有正确的处理退出信号时,就会导致部分请求直接被中断从而影响用户体验。
每个pod
代表一个集群中的节点,在 k8s 做rolling-update
的时候默认会向旧的pod
发送一个SIGTERM
信号,如果应用没有对SIGTERM
信号做处理的话,会立即强制退出程序,这样的话会导致有些请求还没处理完,前端应用请求错误。
先来回顾下 k8s 的滚动升级步骤:
这里要注意,SIGTERM信号如果进程没有处理的话也其实也就会导致进程被强杀
,如果处理了但是超过terminationGracePeriodSeconds
配置的时间也一样会被强杀,所以这个时间可以根据具体的情况去设置。