1月了,期待已久的.NET5即将发布,你做好准备了吗?如果还只是在Windows上用Visual Studio + SQL Server做跨平台开发,真心对不住这个时代了!强烈建议你去尝试Linux,不仅是程序部署,而是全Linux环境去开发、运行、部署.NET 5项目,从开发工具到数据库到各种中间件全部Linux,你会收获无法想象的快感!真的,让我们一起拥抱Linux吧!
”
文:Sifan-H
来源:DotNetdaily
DotNetdaily
拥抱Linux
Linux开源优势
Linux是完全开源的,轻松查看源码并修改和定制,完全免费的属性也深得企业青睐,而且稳定性、安全性、灵活性都远超Windows服务器,当下全球大量数据中心的服务器已经开始向基于 Linux Server 平台转移。
开源组件最佳平台
耳熟能详的各种高并发组件,Redis、MongoDB、RabbitMQ、Nginx、Kafka等等,都是基于Linux服务器开发和发布的,虽然也为Windows Server提供了安装版本,但都是阉割版的,版本更新都严重迟滞,像Redis在Windows下的性能表现,达不到Linux下的50%。
互联网大势所趋
当下互联网技术的发展方向是容器化、K8S、DevOps、CI/CD、云原生,90%的工具环境都是基于Linux的,微软都出.NET5去适配Linux,还推出了VS Code开发工具,甚至连SQL Server都支持Linux了,互联网技术大势浩浩荡荡,顺之者昌!
DotNetdaily
全Linux实战踩坑
微软.NET跨平台开发4年多了,Linux下开发运行部署都已经有完整的解决方案了,我来给大家分享下全体的工具和技术选型(文末有做工具的打包分享)。
服务器准备
不习惯双系统的小伙伴儿,可以用VMware workstation弄个虚拟机,Linux操作系统繁多,这里我推荐最新版本CentOS8。开始可能不太习惯,用用就好了。
开发环境准备
当然是Visual Studio Code,微软出品必属精品,然后是.NET5 RC2的环境。数据库我推荐用MySQL标配,不要试图用SQL Server for Linux了。
项目框架选择
这个跟Window下开发是没啥区别的,直接前后分离架构,前端Vue,后端是Core WebApi,O/RM选择的轻量级Dapper,连接MySQL也方便。
部署运行
用Docker容器部署的Nginx + WebApi实例集群,然后MySQL和Redis就直接安装在Linux的宿主机上面,一个小项目就这样构建起来了。
说了这么多,那到底怎么开发实操??