.NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上

天下午我们将生产环境中一个单台服务器 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://*:8003
Application started. Press Ctrl+C to shut down.

接下来,我们将一边观察已经运行在 ASP.NET Core + Linux 上的站点的运行情况,一边将更多项目迁移至 ASP.NET Core 

原文链接:http://www.cnblogs.com/cmt/p/5913155.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/328353.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百世

https://blog.csdn.net/lsh_2013/article/details/45507619 https://blog.csdn.net/lsh_2013/article/details/45507619 https://blog.csdn.net/snowwhite211/article/details/49450613?locationNum8&fps1

matlab哈明窗带阻,基于matlabFIR低通,高通,带通,带阻滤波器设计.doc

基于matlabFIR低通,高通,带通,带阻滤波器设计课 程 设 计 报 告课程名称: DSP设计名称:FIR 低通、高通带通和带阻数字滤波器的设计姓 名:学 号:班 级:指导教师:起止日期:课 程 设 计 任 务 书学生班级&…

JSTL 标签大全详解

转载自 JSTL 标签大全详解一、JSTL标签介绍 1、什么是JSTL?JSTL是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言!JSTL标签使用以来非常方便,它与JSP动作标签一样,只不过它不是J…

C# 在腾讯的发展

.NET 主要的开发语言是 C# ,.NET 平台泛指遵循ECMA 334 C#和 ECMA 335 CLI 标准的开发平台,包括微软自行开发的.NET 平台和开源实现的Mono 以及微软最新开发的.NET Core。从2007年加入公司自今一直在使用C#, 对这门语言在腾讯的使用情况有大概的了解,最近…

sam+matlab,Sam版Matlab粒子群PSO工具已经更新

显著亮点这次最大的更新是支持除了bound上下边界约束之外的其它类型的线性和非线性约束条件。名字也从Another Particle Swarm Toolbox改为Constrained Particle Swarm Optimization英文版介绍DescriptionPreviously titled “Another Particle Swarm Toolbox”IntroductionPar…

chengxuyuan

程序人生的四个象限和两条主线 置顶 2018年08月20日 12:00:36 vivian_wanjin 阅读数:120 零 为什么我们要自己做职业生涯规划?记得《社交网络》里边,CFO同学在知道自己股权被稀释时说了一句话,“我以为那些律师是我的律师。” …

.NET Core性能测试组件BenchmarkDotNet 支持.NET Framework Mono

.NET Core 超强性能测试组件BenchmarkDotNet 支持Full .NET Framework, .NET Core (RTM), Mono。 BenchmarkDotNet支持 C#, F#, 和Visual Basic,可以跨平台运行。 而且支持各种报表导出,相当的方便。 GitHub: https://github.com/PerfDotNet/…

matlab amd补丁,Matlab升级 AMD锐龙性能恢复满血:轻松提升60%

Mathwork Matlab是一款极为流行、权威的计算软件,但是去年11月的时候,有人发现AMD锐龙处理器疑似被它“劣化”,无法正确调用最新指令集,导致性能残血。具体来说,Matlab会提前检测处理器身份,也就是CPUID字符…

JSP2.0中的表达式语言(EL表达式)

转载自 JSP2.0中的表达式语言(EL表达式) EL语法EL的语法很简单,他最大的特点就是使用上很方便 例: ${sessionScope.user.sex} 所有EL都是以${ 为起始、以} 为结尾的。 上述EL范例的意思是:从Session取得用户的性别。如果使用之前JSP代码的写…

免费下载百度 豆丁 丁香 等平台文档

免费下载百度 豆丁 丁香 等平台文档 2019年01月15日 17:59:04 松门一枝花 阅读数:347 版权声明:有问题咨询请发邮件zengmiaogen126.com。CSDN的留言和私信不好使。 https://blog.csdn.net/zengmingen/article/details/86496344 免费下载百度文档 免费…

java填充线缺口,在geom_freqpoly线下填充区域的最简单方法是什么?

x轴是时间间隔的时间 . 数据框中有一个间隔列,用于指定每行的时间 . 该列是一个因子,其中每个区间是不同的因子级别 .使用geom_histogram和geom_freqpoly绘制直方图或直线效果很好,但是我希望有一条线,就像geom_freqpoly提供的那样…

《Unity 3D脚本编程:使用C#语言开发跨平台游戏》序言

本文是7月受陈嘉栋的委托为他的新书《Unity 3D脚本编程:使用C#语言开发跨平台游戏》所写的序言,借助序言告诉大家.NET平台有着一个广阔的使用场景。 序言 Unity3D 是由两个具有巨大吸引力而极其令人愉悦的领域混合而成:C#语言和游戏开发。Unity团队设计U…

CDN如何实现,关键技术是什么?

转载自 CDN如何实现,关键技术是什么? CDN原理 CDN网络是在用户和服务器之间增加Cache层,如何将用户的请求引导到Cache上获得源服务器的数据,主要是通过接管DNS实现,这就是CDN的最基本的原理。如下图&…

35 岁程序员的独家面试经历

35 岁程序员的独家面试经历 2015年12月15日 17:34:33 松门一枝花 阅读数:524 创业失败后,在找工作。选择了三家(两家上市公司,一家将上市),都走到了关键的节点。我记录了面试过程中被问到的一些问题&…

国庆假期请假公告

公众号运营从开始到今天,运营了接近2年时间,每天更新成了一个必备功课,有时候很辛苦,有时候也是很累,但想到公众号里有很多的朋友的期待,就会一次次的拿起电脑开始码字。 公众号不谈国事,不论风…

php中对象的遍历输出,PHP中的对象遍历技巧

PHP中的对象遍历对象的遍历,主要是指遍历对象中的,对外部可见属性。实际上就是用访问限制符public声明的属性,这点大家肯定很熟悉了。并且,在php中,遍历对象居然与遍历数组一样,都可以用使用foreach语句。好,下面用实例…

数据库连接池的选择及其开发配置

转载自 数据库连接池的选择及其开发配置 一、数据库连接池概述 数据库连接的建立是一种耗时、性能低、代价高的操作,频繁的数据库连接的建立和关闭极大的影响了系统的性能。数据库连接池是系统初始化过程中创建一定数量的数据库连接放于连接池中,当程序…

C#在Linux+Mono环境中使用微信支付证书

最近特殊的需求,要把微信平台一个功能页面部署到Linux(CentOS6.5)下,其中涉及到微信支付退款。 鉴于之前实践过monojexusasp.net mvc的部署,于是问题重点在于解决对商户证书的调用问题。 查看微信支付官方文档关于证书…

mysql切换用户sql语句,MySQL用户管理及SQL语句详解

[(none)]>select user,host frommysql.user; #查询用户和主机--------------------------| user | host |--------------------------| root | 10.0.0.% || mysql.session | localhost || mysql.sys | localhost || root | localhost |--------------------------4 rows in …

其他

关于程序员的文章 2014年05月01日 16:58:25 a8511119 阅读数:300 中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神&#xff0…