保留和沿用 .NET 编程语言和框架,但是网站整体架构仍然去 .NET 化,概要说来:
- 数据层放弃 SQL Server 数据库和存储过程,全部迁移到 Linux 平台上的 MySQL 数据库上;
- 缓存不再依赖 .NET 自身提供的缓存机制,迁移到部署在 Linux 平台上的分布式的 Redis 上;
- 服务之间的调用,避免使用 .NET 自身专有协议,改成 Restful 的 HTTP Web API 调用;
- 静态资源请求,不再让 IIS 自己处理,分离到 Linux 平台上的 Nginx 去处理;
- 需要读取的文件系统,也改成访问 Linux 平台上的分布式文件系统;
- 部署 .NET 代码的 Windows 服务器放在 LVS 后面,用 LVS 做负载均衡和故障切换。