.NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上
来源:互联网 发布:免备案服务器 知乎 编辑:程序博客网 时间:2024/05/16 09:03
天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMemcached(memcached客户端)的问题之后,.NET 跨平台之旅迈出的重要一步。这个 ASP.NET Core 站点,既用了缓存,也有数据库访问操作,是一个典型的 Web 站点,如果它能持续稳定运行,将为我们全站迁移至 ASP.NET Core + Linux 扫清障碍。
这个 ASP.NET Core 站点用的 memcached 客户端是我们在 nuget.org 上最新发布的 EnyimMemcachedCore;
public void ConfigureServices(IServiceCollection services){ services.AddEnyimMemcached(options => options.AddServer("memcached", 11211));}
.NET Core 用的是最新的 .NET Core 1.0.1;以 self-contained 方式部署,用 dotnet publish 命令发布出来的文件中包含可以直接在 Linux 上运行的可执行文件,因此服务器上无需另外安装 .NET Core 运行环境,用 scp 命令将 dotnuet publish 命令生成的文件上传到部署服务器即可。
"frameworks": { "netcoreapp1.0.1": { "imports": [ "dnxcore50", "portable-net45+win8" ], "dependencies": { "Microsoft.NETCore.App": "1.0.1" } }}
最前端用的是阿里云负载均衡,后端 2 台 Linux 服务器的配置是 1 核 CPU 与 1G 内存,Linux 发行版用的是 Ubuntu 14.04,使用 supervisor 以服务的方式运行站点。Web 服务器用的是 Kestrel,Kestrel 目前最大的问题是不支持主机名绑定,同一台服务器上的不同站点必须绑定不同的端口,这给部署带来了麻烦。数据库服务器用的是阿里云 RDS(SQL Server 2008 R2)。Memcached 缓存服务器用的是阿里云云数据库 Memcache 版。
Now listening on: http://*:8003Application started. Press Ctrl+C to shut down.
接下来,我们将一边观察已经运行在 ASP.NET Core + Linux 上的站点的运行情况,一边将更多项目迁移至 ASP.NET Core
原文链接:http://www.cnblogs.com/cmt/p/5913155.html
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注
- .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上
- .NET跨平台之旅:博问站点迁移至ASP.NET Core on Linux并发布上线
- asp.net core在linux上的部署调试
- .NET跨平台之旅:将示例站点从ASP.NET 5 Beta5升级至Beta7
- 将使用AJAX的DNN模块部署到.net 2.0站点上的问题
- ASP.NET Core之跨平台的实时性能监控
- ASP.NET Core之跨平台的实时性能监控
- 全部暂停服务器上的ASP.NET站点,自动跳到指定页面
- ASP.NET Core部署在IIS上
- ASP.NET Core 网站发布到Linux服务器
- 在IIS上部署你的ASP.NET Core项目
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
- 微软ASP.NET站点部署指南(5):部署到IIS上作为测试环境
- 微软ASP.NET站点部署指南(5):部署到IIS上作为测试环境
- asp.net core + debian8 + nginx + supervisor部署asp.net core 站点
- Linux+Nginx+Asp.net Core部署
- 基于VS2017的Docker Support体检ASP.NET Core站点的Docker部署
- C#在Linux+Mono环境中使用微信支付证书
- 国庆假期请假公告
- 《Unity 3D脚本编程:使用C#语言开发跨平台游戏》序言
- .NET Core性能测试组件BenchmarkDotNet 支持.NET Framework Mono
- C# 在腾讯的发展
- .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上
- 想获得腾讯发行机会?来“腾讯GAD•游戏创新大赛”
- 通过ProGet搭建一个内部的Nuget服务器
- 一位跨平台开发者的自白
- Opserver开源的服务器监控系统(ASP.NET)
- 开发者的利器:Docker 理解与使用
- 学习危险理论
- 如何测试微信应用号
- [学习笔记] Java核心技术 卷一:基础知识 Java 的基本程序设计结构(一)