前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >说真的,前端对Linux需要了解到什么程度?

说真的,前端对Linux需要了解到什么程度?

作者头像
闰土大叔
发布2018-12-21 10:41:16
3.3K0
发布2018-12-21 10:41:16
举报
文章被收录于专栏:闰土大叔闰土大叔

第一时间围观土哥的段子

无力吐槽

还记得土哥刚入行,进第一家公司实习的时候,使用的是Win7,对于Windows下的命令行体验真是无力吐槽,特别是对于Web前端来说,非常多的工具都运行在终端内,比如不计其数的Node.js工具,后来改用Linux就舒畅多了,npm很多工具都在Linux系统下有更好的表现。

工作那点事儿

说实话,土哥就是一名野生的前端工程师,对这方面感触颇深。如果你所在公司的开发人员分工清晰的话,确实不用前端人员了解linux相关的东西;如果不是,那么你就要多多少少了解一些Linux相关的东西了。

与其说要会linux,不如说要会一些shell或是linux的操作方法。如果你在公司只是一名页面仔,螺丝钉,只需要负责自己开发的东西,这种情况是完全没有必要会的。

当然,如果你想更百尺竿头更进一步,说我的梦想不只是当一名页面仔,搬砖工!那么你就应该好好学习下Linux了,土哥举两个场景:

1.大前端,server语言的view层也归前端写,那么生产环境和开发环境就要用到linux了。

2.为你的代码提供打包、压缩工具等辅助服务或自动化工具,需要用到shell脚本。

假如你是前端leader

如果你在公司是前端leader的角色,这些问题或者场景,你是否曾经遇到过?

流量高峰期,服务器CPU使用率过高报警,你登录Linux上去top完之后,却不知道怎么进一步定位,到底是系统CPU资源太少,还是程序并发部分写的有问题? 系统并没有跑什么吃内存的程序,但是敲完free命令之后,却发现系统已经没有什么内存了,那到底是哪里占用了内存?为什么? 一大早就收到Zabbix告警,你发现某台存放监控数据的数据库主机CPU的I/O Wait较高,这个时候该怎么办?

作为一个前端程序员,性能优化是无法避开的事情,不管是桌面应用还是web应用,不管是前端还是后端,不管是单点应用还是分布式系统,并且性能优化也是软件系统中最有挑战的工作之 一,更是每个工程师都需要掌握的核心技能

但是在实际的工作中,很多情况下只能看到症状,却完全不知道该从哪儿下手去排查和解决它。

要有方法论

之前也有朋友问过我,土哥,有没有系统学习Linux性能优化的书籍推荐?

网上的资料和书籍可以扩充底层知识体系,从虚拟化的原理、到操作系统和网络原理、再到Linux内核和硬件驱动程序等等。

但是Linux性能优化是个系统工程,除了基础知识点之外,学习中还有两点是比较重要的,第一、要学习大量性能优化的思路和方法,尝试大量的Linux性能工具。第二、要不断的实践和总结。

这样你才能把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序、库函数、系统调用、再到内核和硬件等不同的层级贯穿起来。

对于我们大多数人来说,最好的学习方式一定是带着问题学习,而不是先去啃那几本厚厚的原理书籍,这样容易把自己的信心压垮。

我认为,学习要会抓重点,只要你了解少数几个系统组件的基本原理和协作方式,掌握基本的性能指标和工具,学习实际工作中性能优化的常用技巧,你就已经可以准确分析和优化大多数的性能问题了。

在这个认知和基础上,再反过来去阅读那些经典的操作系统或者其它图书,你才能事半功倍

要有师傅带

土哥在网上调研了一圈,还是觉得倪朋飞老师的《Linux性能优化实战》更体系化,故在此推荐给大家,专栏会以案例驱动的思路,给你讲解Linux性能的基本指标、工具,以及相应的观测、分析和调优方法,不会像教科书那样,详细教你操作系统、算法原理、网络协议乃至各种编程语言的全部细节,但是会为你讲述性能相关的重要系统原理,并且用实际案例教你贯穿从应用程序到操作系统的各个组件。

倪朋飞老师是谁?

倪朋飞,微软Azure资深工程师,主要负责开源容器编排系统Kubernetes在Azure的落地实践。之前先后任职于盛大云和腾讯,一直致力云计算领域,主攻IaaS和容器技术。而近十年的云计算工作经验,也让他对Linux的系统原理、常见的性能问题以及优化方式了如指掌。

学完这个专栏,你能获得什么?

1、掌握Linux必备的基本原理以及Linux系统必懂的性能指标(CPU 性能磁盘 I/O 性能内存性能以及网络性能等)和性能工具。

2、结合实际案例分析,让你在遇到资源瓶颈时不在束手无策,学会观测和准确定位、快速分析并高效优化,具备高手解决性能优化问题的思路和全局观

3、5个综合实战模块还原真实的工作场景结合开源项目、框架或者系统设计的案例,手把手带你在“高级战场”演练,目的是让你把之前学到的所有知识融会贯通,马上能将所学应用在工作当中。

4、针对订阅用户会设置答疑篇章,这个设置我觉得是最物超所值的,你可以和作者近距离的沟通,倪老师会拿出提问频次较高的问题一对一给你系统解答

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 闰土小叔 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 倪朋飞老师是谁?
  • 学完这个专栏,你能获得什么?
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档