在学习linux技术的前2年里,相信不少人都或多或少的走过不少弯路;现现在互联网技术发展迅速,如何才能有利的找到本身的着重点学习它(linux)呢?其实这并不难,难的只是学习它的人选择性太多了。php
自2012年第一次接触linux运维这个工做时,几乎都是什么都想学 可又什么都学不下去; linux运维 这个职位的定义 要会的东西不少,其中包括:web层、缓存层、数据库层、存储层等等不少的方方面面;然而这些确实对于我这样一个初学者来讲 简直就是乱七八糟的 ,这不比上学的各类课本容易; 但最终全部的技术永远都围绕一个点来出发,那就是 基础 ,正所谓 基础不牢 地动山摇,下面我就来讲说本身总结的一套学习体系:css
一、首先肯定本身所在的公司都用到了哪些技术;java
二、关注现代社会互联网的新技术(这里的新技术 并非都要学习的);python
三、在技术种类繁多的状况下,挑选对本身工做有利的 和 将来前景趋势较大的;mysql
四、结合上面的 作一次阶梯性的筛选 优先级;linux
举个例子说明:nginx
好比咱们公司(一家小公司,规模人数:50人左右)所用到的技术有以下几个点,nginx(作负载均衡)、tomcat(多实例)、redis(持久化数据库)、MC(memcache作缓存)、activeMQ(消息队列)、mysql(后端数据库) 这几个点是目前咱们公司线上环境用到的,本身线下环境 可自由扩展来学习 这里就不说了web
如今炒的比较多的技术又有哪些呢?redis
docker(容器技术)、openstack(私有云技术)、hadoop、MongoDB、python 等等;sql
最后在结合一下社会技术的归属点:
java 环境 ======= hadoop 、tomcat(中小企业最经常使用)、resin(大中型企业经常使用) ;
web层 ======= nginx、tomcat、php、resin 【apache这里没有提,不是不用 而是用的愈来愈多的仍是nginx】
数据库 ======= mysql、oracle、MongoDB、redis
.........
.........
其余技术就不说了,只说这个先;
有了上面的列表,我们大概也就有了一些清晰的思路 如何来学习本身须要的技术了;
最个优先级的排比:
运维: web(nginx、tomcat)、mysql、redis、MongoDB、MQ(学习至少2种:所在公司使用的 和 普通公司用的最多的,好比metaQ)
开发: web(tomcat)、mysql、redis、javaEE、css等等
DBA:mysql、MongoDB、redis、MC
以上例子只是参考,不表明绝对;主要看中的是 思想思路
好的学习思想思路 就是技术人员的灵魂~
这里就说这么多,若有好的建议 还请广大撸友们多多提议,小弟不胜感激!!!