.NET的两种部署模式,了解一下
前言
以往部署程序一直是习惯性先安装运行时环境,然后再将发布打包好的程序运行起来;但当多个程序依赖不同版本框架平台时,如果部署在同一台机器上,那就需要在同一台机器上安装多个版本的运行时,总感觉有点不太方便,所以今天就来说说.NET部署的两种模式
正文
其实在发布程序时有两种模式可以选择,框架依赖模式和独立模式;
框架依赖模式:程序在发布打包时,只针对程序本身进行打包,如果打包好的程序要在其他机器上正常运行,首先要在对应的机器上安装对应版本框架的运行时,否则程序是不能运行的;
独立模式:程序在发布打包时,程序和依赖的框架一起打包了,只需要将打包好的文件放到对应的机器上直接运行即可,不需要安装框架运行时。
案例演示
演示前提
新建一个MVC项目,默认生成的项目就行,主要是有页面,演示方便(用其他形式同理,如API或控制台等都一样);
实操演示
右键项目->点击发布->弹框选择发布方式,这里建议选择用文件夹的形式,确定无误之后再上传到服务器比较保险。
点击下一步选择对应的发布文件夹,后续发布生成的文件就到此文件夹下啦。
指定好路径之后,点击右下角的完成,进入如下界面;
通常会直接点击发布按钮将程序发布,其实这个时候默认是以框架依赖的模式进行发布的,可以点击显示所有设置进行配置,如下:
这里先以框架依赖的方式发布一版,放到一个没有环境的机器上试试。这里是通过Xftp工具将发布文件传到Linux中,运行之前,需要将项目的启动文件赋予执行权限,否则不能执行,如下:
看看,果然运行不起来,必须先安装对应版本的运行时才行。
现在再切换为独立模式发布一版,这里需要注意一点,当选择独立模式时,一定要选择目标运行时,根据运行的机器进行选择即可,这里我要放在Linux上,所以选择Linux x64(下拉选项中Windows、Linux、Mac都可以选择,根据机器选择合适的环境发布就行)。
发布打包完成之后,同样传到Linux环境中,运行如下:
可以看到,独立部署的形式是可以正常运行的。
两种模式的优缺点
框架依赖模式
优点:发布文件小;
缺点:当同一台机器需要运行多个程序时,如果依赖的框架不同,就得重复安装;
独立模式
优点:部署方便,同一台机器上不同依赖的程序互相不影响,不需要安装对应版本的运行时;
缺点:发布的文件很大,包含了依赖框架的相关库文件;
这里就简单演示了Linux环境的操作,其他环境小伙伴们自己试试吧;代码就不上传了,就是简单建个项目演示,没有做任何更改。
总结
两种模式可以针对自己的需要进行部署,如果是同一台机器需要运行很多程序,又没有做类似于容器这种隔离的情况下,独立模式感觉还不错哦,依赖框架互不影响,可能会避免一些麻烦事。
关注“Code综艺圈”,和我一起学习吧;我回来啦~~~
.NET的两种部署模式,了解一下相关推荐
- Solr系列二:solr-部署详解(solr两种部署模式介绍、独立服务器模式详解、SolrCloud分布式集群模式详解)...
一.solr两种部署模式介绍 Standalone Server 独立服务器模式:适用于数据规模不大的场景 SolrCloud 分布式集群模式:适用于数据规模大,高可靠.高可用.高并发的场景 二.独 ...
- 大数据分布式存储方案的两种部署模式-分离式和超融合
数据中心内部系统的核心要求是"稳定可靠",一是指系统在运行过程中有能力提供连续可靠的服务,长时间无故障运行:二是指当故障发生之后,有能力快速定位,及时排查,故障范围不蔓延. 分离式 ...
- 大数据存储解决方案的两种部署模式-分离式与超融合
2019独角兽企业重金招聘Python工程师标准>>> 数据中心内部系统的核心要求是"稳定可靠",一是指系统在运行过程中有能力提供连续可靠的服务,长时间无故障运行 ...
- calico的两种网络模式BGP和IP-IP性能分析
目前使用较多的网络插件有 flannel,calico,canel等,但是如果对比以上几种网络插件的性能,还是calico最受欢迎 一.calico概述 二.性能评测指标 三.物理机性能评测 四.物理 ...
- 有几种部署模式_来!PyFlink 作业的多种部署模式
关于 PyFlink 的博客我们曾介绍过 PyFlink 的功能开发,比如,如何使用各种算子(Join/Window/AGG etc.),如何使用各种 Connector(Kafka, CSV, So ...
- 路由器的两种工作模式
路由器的两种工作模式: 1.对于一个url来说,什么是hash值?--#及其后面的内容就是hash值.2.hash值不会包含在HTTP请求中,即:hash值不会带给服务器. 3. hash模式: 1) ...
- FTP服务器的两种工作模式
FTP协议: FTP(File transfer Protocol)是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20.21号端口, 其中端口20(数据端口)用于进行数据传输,端 ...
- 路由器的两种工作模式~~~
1.路由器的两种工作模式:hash模式.history模式. 一.hash模式 1)对于url来说,#及其后面的内容就是hash值: 2)hash值不会包含在http请求中,即:hash值不会带给服务 ...
- sa结构组网方式_关于 SA/NSA 两种组网模式,你了解多少?-通信/网络-与非网
之前关于一则 5G 的消息在引起了大家的关注,中移动董事长表示,明年 1 月 1 日起非独立组网5G 手机将不能入网. 这样的新闻在很多自媒体的报道和发酵之下,不知怎么就变成了 NSA 是" ...
最新文章
- 赢在中国(08-02-27)
- Java中super关键字的位置
- 基于 Jenkins 快速搭建持续集成环境--转
- 计算广告学学习2 - 广告有效性模型
- SAP CRM Fiori My appointment点了Edit按钮后的三个roundtrip详解
- 布尔表达式的语法及语义分析程序_XSS语义分析的阶段性总结(一)
- Java中Comparable和Comparator接口的区别
- 64位 linux 中 oracle 11g dbca 报 out of memory 错误
- javaSE----for,wile ,do while循环的应用
- java面向对象编程考试题_《Java面向对象程序设计》考试卷及答案带注释
- Redis分布式缓存安装和使用
- MySQL数据库中数据完整性_MySQL数据完整性详细讲解及实现方式
- JS 的5个不良编码习惯,现在就改掉吧
- 101个CV模型集体开源,魔搭社区视觉AI深度解析
- linux swp文件重启,Linux下.swp文件的恢复方法
- 难受难受,真它吗的难受... ...
- 用Spring Cloud和Docker搭建微服务平台
- 转:开源图形库 c语言-图形图像库 集合
- 用遗传算法GA改进CloudSim自带的资源调度策略
- 明远智睿5G工业网关 5G物联网人工智能
热门文章
- 基于 IdentityServer3 实现 OAuth 2.0 授权服务【密码模式(Resource Owner Password Credentials)】...
- Citrix桌面及应用虚拟化系列之二:XenServer补丁
- javax.jdo.option.ConnectionURL配置的问题
- Html5 Video 节点
- 智能云改-docker云迁移实战
- 1-3.监督学习(supervised learning)
- http服务详解(1)——一次完整的http服务请求处理过程
- 自定义smokeping告警(邮件+短信)
- mac SecureCRT设置
- 补作业:随机生成二元四则运算