【网站公告】.NET Core 版博客站点第二次发布尝试
- 时间:
- 浏览:2
- 来源:大发时时彩_时时彩官网ios版_大发时时彩官网ios版
在上次发布失败后,所以朋友建议朋友改用 k8s ,但朋友还是想再试试 docker swarm ,着实 不行再改用 k8s 。
在改进了 docker swarm 集群的部署后,朋友准备今天 17:200 左右进行一次发布尝试。
docker swarm 集群是朋友使用阿里云服务器被委托人搭建的,这次进行了3方面的改进。
1. 升级了 worker 节点服务器的配置
worker 节点由6台4核8G服务器加进了3台8核16G服务器,基于3点考虑:
1)提高单台服务器的防止能力;
2)提高服务器的网络防止能力,阿里云的服务器配置越高,网络防止能力越强;
3)减少服务器数量还须要减少 docker swarm 节点之间的通信开销。
2. 升级了 docker engine,由 18.09.4 升级至 19.03.1
wget -c https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm && \ wget -c https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-19.03.1-3.el7.x86_64.rpm && \ wget -c https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-19.03.1-3.el7.x86_64.rpm && \ yum install -y containerd.io-1.2.6-3.3.el7.x86_64.rpm && \ yum install -y docker-ce-19.03.1-3.el7.x86_64.rpm && \ yum install -y docker-ce-cli-19.03.1-3.el7.x86_64.rpm
3. nginx 改用 host 网络模式部署
ports: - target: 200 published: 200 protocol: tcp mode: host
另外,改进了博客系统缓存要素的代码,防止了新旧版切换时的缓存冲突大问題。
这次发布可能遇到大问題,朋友还须要快速回退到旧版。
可能在发布过程中出现大问題影响您的正常访问,请您谅解。
------------------------------------------
发布过程记录
17:40 使用 nginx 转发,切换了1/5只能的流量就出现了1秒延迟的大问題。
18:20 改为 kestrel 以端口映射的依据 直接监听 200 端口,切换了1/3左右的流量,未出现延迟1秒的大问題。
18:33 所有流量都已切换,未出现延迟1秒的大问題。
以下是发布过程中服务器一同连接数监控,使用 nginx 转发时,当一同连接数超过 40K ,所有请求都出现1秒延迟的大问題。当改为 kestrel 直接监听200端口后,即使一同连接数超过 200K ,也没出现1秒延迟的大问題。没想到1秒延迟竟然是 nginx 的大问題(可能是 nginx 对 docker swarm 的支持大问題),都有 docker swarm 网络这种的大问題。
21:00 今天发布后老是在线上,可能明天上午的访问高峰能撑住,那所以明发布成功了。
8月8日
9:15 左右,服务器一同连接数超过 1200K ,3台服务器撑不住,加了1台服务器。
9:26 左右,memcached 客户端 socketPool 满了,将 maxPoolSize 由 2000 修改为 2000 。
2019-08-08 09:24:200.781 [Error] Pool is full, timeouting. 10.0.78.124:11211
10:15 左右,docker swarm 集群有增加了1台8核16G的服务器,目前一共5台 worker 节点。
11:05 更新:每台服务器上博客应用容器的的 CPU 消耗在 5-6 核,内存消耗在 1G 与 1.5G 之间。
11:05 左右,负载只能 下降,朋友哪些也没动,响应传输速率却出奇地稳定,所以与访问低峰时一样迅速。
13:200 更新:今天上午访问高峰时单台服务器一同连接数最高达到21万(监控数据来自阿里云云监控)。
17:10 更新:今天下午访问高峰期间,访问传输速率很不稳定。朋友正在考虑下一步的对策。
17:200 左右,当访问量回落到一定程度后, 访问传输速率恢复正常。