惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
量子位
MongoDB | Blog
MongoDB | Blog
N
Netflix TechBlog - Medium
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog
A
About on SuperTechFans
腾讯CDC
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
雷峰网
雷峰网
Last Week in AI
Last Week in AI
H
Help Net Security
WordPress大学
WordPress大学
博客园 - 司徒正美
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hackread – Cybersecurity News, Data Breaches, AI and More
T
Tailwind CSS Blog
博客园 - 【当耐特】
S
SegmentFault 最新的问题
美团技术团队
M
MIT News - Artificial intelligence
L
LangChain Blog
博客园 - 聂微东

WANGYE / 王晔

网站平台迁移到ASP.NET 8.0 使用umami自建博客流量统计分析平台 解决PPPoE宽带上网IPv6卡顿问题 restic使用rclone后端备份数据至WebDAV服务器 Linux LVM分区管理学习备忘 本站使用PGP/GPG加密技术保护联系表单 5月29日网站nginx运维故障复盘 看门狗(Watchdog)使Linux设备从异常运行中快速恢复 Docker容器使用dumb-init作为进程supervisor和init系统 让过时浏览器支持新技术 JavaScript Polyfill 网站近期的维护情况 Bash Shell脚本得到宽带公网动态IP地址 FreePBX解决动态公网IP环境SIP地址更新问题 从Socket error丢失网络连接的Linux SSH恢复pts会话 Bash Shell使用curl POST向Web API提交JSON nginx njs利用ipset集合实现黑名单(白名单)访问控制 网站平台由ASP.NET 5.0迁移到.NET 6.0 Linux环境.NET Core zh-CN中文语言问题 Docker桥接网络开启IPv6支持
网站近期的维护情况
Wang Ye · 2023-04-07 · via WANGYE / 王晔

本文章超过一年没有更新,所提供信息可能已经过时,请谨慎参考。

很长时间没有更新网站内容,不过还是抽出时间对网站架构进行了升级。

主要升级点

  1. 将网站平台由.NET 6.0迁移至.NET 7.0,这次迁移是平滑的,没有Break changes。
  2. 数据库也升级至PostgreSQL 15。
  3. 之前网站是基于Docker容器部署的,后来了解到Podman这个最佳替代,于是将Docker部署迁移至Podman部署。
  4. 编写了网站引导脚本(Boot Script),在启动网站程序前执行自动化测试检测外部环境设施(数据库、消息队列、邮件系统、传输代理等)是否正常,测试通过后拉起网站程序。
  5. 全站迁移至Cloudflare CDN。

需要特别提出的

  1. 使用Podman部署,其好处是去中心化,Podman不像Docker一样有个守护进程,守护进程崩溃了所有Docker容器也会崩溃,Podman是Rootless的相比较而言会更加安全(Docker也有Rootless部署方式),Podman与systemd结合紧密可以直接将容器做成独立的服务,当然Docker转Podman也遇到过大大小小的坑,有机会和大家分享一下。
  2. 使用引导脚本,最大原因就是外部环境设施启动较.NET应用慢,如果.NET先启动就会导致连接必要的外部基础设施超时报错,虽然通过容器Healthy状态编排了depends on,但这种现象依旧无法避免,连接超时会导致上游nginx 502 Bad Gateway报错,终端用户可能不断请求进一步消耗不必要的连接资源,引导脚本模拟了计算机启动自检,在自检没有完成的前提下,将请求流量用haproxy backup模式导入到临时页面上,显示友好错误消息,如果自检失败将自动通知网站管理员报告错误情况,自检成功后则拉起.NET应用,并恢复网站正常访问。
  3. 使用Cloudflare CDN,之前是通过DNS将境外访问流量导入Cloudflare,境内访问流量直接连接,主要考虑到Cloudflare境内会抽风,实际上境内恶化的国内线路问题即使直接连接服务器也会出现抽风问题,索性直接全部采用Cloudflare,后续再观察观察。