作为一个windows平台下的.net开发者,linux对我来讲确实是个用不上的东西,所以刚开始数次尝试上手接触linux,都走了弯路,比如:
情形1:装系统惯性的认为需要安装一个桌面,为此折腾过数次都是安装完之后不知道干啥了,遂终止。
情形2:为了只能linux下运行的某个小工具,装一个,照着命令搞半天,一头雾水,最终放弃
情形3:由于某些云厂商的限制,1G内存的体验机不支持windows,比如曾经的滴滴云初期不提供windows镜像,提供的免费测试机仅仅1核1G配置,最终折腾半天白白丧失手中的羊毛机器
大概是从2020年开始,一方面是疫情的原因在家有了较多的时间,一方面是微软.netcore已经开始大范围的普及使用。所以我又一次开始折腾linux,这次的顺序反过来,首先是基于.netcore 3.1写了个demo,然后开始学习入手linux。再然后接触到一个同事说,玩客云这种机器可以安装arm版linux,然后就是现在这个状态,磕磕绊绊的成功在linux下跑起了自己的.netcore程序。
刚起步也是偷懒,用了宝塔面板,终于这次宝塔升级不支持arm了,所以才又一次推动了我学习linux的机会。果然学习都是被逼出来的!
几点体会:
1,linux下确实不太需要桌面,几乎所有程序核心都是一段逻辑而已,必要时候才使用浏览器等方式显示界面化
2,拜托了桌面,linux可以极其轻巧,512M内存甚至足够我运行之前逻辑的程序代码
3,跨设备运行是个极大优势,怪不得微软会拥抱linux,甚至支持自家语言在linux上写程序运行。
4,一切皆文件的思路非常巧妙,一直到我这几天用到了linux下的几个跟目录才理解(/var ,/etc ,/proc,/media等等)
5,nginx的优点与缺点,nginx作为转发工具,内部有个缺陷是占用了本地连接,不像直接承载连接那样可以超过65535。优势是可以兼容各种程序建站,分别配置各自的sdk与安装环境即可,怪不得tomcat等工具的默认端口不选择80.
原文地址:
https://www.opengps.cn/Blog/View.aspx?id=1002
文章的更新编辑依此链接为准。欢迎关注源站原创文章!