当前位置: 首页 > 科技观察

了解.NET的两种部署模式!

时间:2023-03-12 22:52:14 科技观察

text其实在发布程序的时候有两种模式可以选择,框架依赖模式和独立模式;framework-dependent模式:程序发布打包时,只针对程序本身进行打包,如果打包后的程序要安装到另一台机器上才能正常运行,必须先安装相应版本框架的runtime在相应的机器上,否则程序无法运行;独立模式:程序发布打包时,程序和依赖的框架一起打包,只需要将打包后的文件放到对应的机器上直接运行即可,不需要安装框架运行时。CaseDemo演示前提新建一个MVC项目,默认生成的项目就可以了,主要是有页面,方便演示(其他形式也一样,比如API或者console);实际演示右键项目->点击发布->在弹出框中选择发布方式。这里,推荐选择文件夹的形式。确认无误后再上传到服务器比较安全。单击“下一步”选择对应的发布文件夹,后续发布生成的文件都会放到该文件夹??下。指定路径后,点击右下角完成,进入如下界面;通常,您会直接点击发布按钮来发布程序。其实此时默认是以框架依赖的方式发布程序。可以点击显示所有设置进行配置,如下:这里先以框架依赖的方式发布一个版本,在没有环境的机器上试一下。这里通过Xftp工具将release文件上传到Linux。运行前,需要给项目的启动文件赋予执行权限,否则无法执行,如下:看,确实不行,必须先安装对应版本的runtime。.现在切换到独立模式发布一个版本。这里需要注意一点。选择独立模式时,必须选择目标运行时,可以根据运行的机器来选择。这里我想放在Linux上,所以选择Linuxx64(下拉选项中,Windows、Linux、Mac都可以选择,大家可以根据机器选择合适的环境发布)。发布包完成后,也转移到linux环境中,运行如下:可以看到,独立部署的形式可以正常运行。两种模式的优缺点framework-dependent模式的优缺点:发布的文件小;缺点:当同一台机器需要运行多个程序时,如果依赖的框架不同,则需要重复安装;独立模式优点:部署方便,在同一台机器上不同的依赖程序互不影响,无需安装相应版本的runtime;缺点:发布的文件很大,包括依赖框架的相关库文件;这里简单演示一下linux环境的运行,其他环境的朋友自己试试;代码就不上传了,直接搭建一个项目demo,不做任何改动。综上所述,两种模式可以根据自己的需要进行部署。如果同一台机器需要运行很多程序,又没有类似容器的隔离,独立模式感觉还是不错的。依赖的框架互不影响,可以避免麻烦。