• Linux天天见


    一、Linux基础篇

    1. 发行版本

    redhat/centos/suse/debian/

    2. 目录结构 

    /bin

    /boot -> grub

    /dev

    /etc ->init.d sysconfig

    /home -> dmtsai Iccnet

    /lib -> modules

    /mnt

    /opt/

    /proc

    /root

    /sbin 做磁盘/网络的配置

    /src

    /sys

    /tmp 所有用户都可以存放的目录,系统管理员一般会定期清除/tmp目录

    /usr ->bin ->X11R6 ->share -> local

    /var ->log ->lib ->spool ->run   日志文件

    /usr

    /var

    3. 基础服务及组件

    FW:防火墙

    LB:负载均衡

    FTP:

    NFS:NFS(Network File System)即网络文件系统。其他参考GFS 

    MAIL:

    DHCP:分配IP

    NTP:时间服务器

    DNS:

    GW: 网关(网络设备,交换机),跨网段服务器之前交换

    4. 远程登录

    1)远程登录Linux-SSH

    (1)口令登录

    用户->登录请求->主机

    用户<-主机公钥<-主机

    用户->公钥加密密码->主机

    用户<-主机私钥解密,密码ok允许登录<-主机

    用户<-密码ERROR,拒绝登录<-主机

    (2)公钥登录

    用户->登录请求->主机(存有用户公钥)

    用户<-随机字符串<-主机(存有用户公钥)

    用户->用户私钥加密字符串->主机(存有用户公钥)

     2)Security CRT

    定时发送空格,这样security crt就可以一直保持登录。(注意可能更改服务器里的文件)

    buffer调大

    Appearance 字体设置UTF-8  

     

    5. 运维提供的工具及介绍

    开发日志访问规则,里面有脚本,可批量跑脚本

    查看,下载,批量命令

    6. 异常排查

    系统错误日志: /var/log.{message,cron,boot.log}

    应用日志

    性能数据:cpu、内存、io

    JVM状态

    实时性能工具:

    top:综合,偏cpu,内存

    1 多核

    b 高亮

    x 选择列

    shift + 箭头

    dstat:综合、磁盘

    dstat -lcms --top-cpu

    iostat:

    pidstat: pidstat -d

    iftop:网络、实时刷新(类似工具还有nload,ifstat)

    nethogs

    ss

    free

    Netstat、ss

    内存:

    free -m

    dstat -lcms --top-mem

    IO:

    iostat -x 1

    dstat -lcmd --top-mem

    pidstat

    网络

    ss -nap

    历史性能数据:

    sar(每10分钟记录一次)

    sar -f saNUM

    zabbix

    CAT

    二、 JVM性能分析

    1. Java CPU消耗过多问题排序

    top查看java消耗CPU

    开启top的线程模式,找出消耗CPU最多的java线程ID

    thread-id转为十六进制

    jstack javapid > /tmp/jstatck.log

    从jstack.log,查看该线程的运行情况

    2. Java内存消耗过多问题排查

    -XX:+HeapDumpOnOutOfMemoryError

    -XX:HeapDumpPath

    OR jmap -dump:format=b,file=xxx.hprof<pid>

    MAT

    jmap -histo:live pid查看类的示例

    jstat -gcutil pid 200 200 查看GC情况

    三、运维篇

    1. 运维的类别: 应用运维,系统运维,DBA

    2. 真实的运维

    (1)Dev和Ops的相互能力传递

    (2)工具可视化

    (3)价值观

    客户第一、效率优先、持续优化、责任共担、紧密合作

    3. 典型的网站拓扑

    Fire Wall

    负载均衡

    应用系统

    DB/缓存

    4. 万级别系统管理

    (1)大批量物理机装机

    (2)怎样提高物理资源的使用率

    (3)虚拟化:KVM

    (4)怎样定制各种操作系统需求

    (5)资产怎样管理

    (6)服务器和应用的关联:CMDB

    (7)。。。

    5. 大规模应用管理

    (1)可持续的稳定性保障

    (2)变更

    灰度,窗口,风险意识(敬畏产线变更)

    (3)不同/相同应用集群差异化的管理

    配置文件

    入库配置

    可运维性、可拓展性

    (4)应用交付(发布)管理

    效率(灵活)

    风险(灰度),发布包的正确性,变更内容风险

    (5)应用系统容量评估

    (6)关键组件(中间件等)管理

    (7)日常事务管理

    N研发 VS 1运维

    6. 高可用方案

    (1)远程调用框架  

    (2)集群化及消除单点

    (3)缓存

    (4)静态化

    (5)降级

    F5降级

    Nginx降级

    Client降级

    (6)容灾

    渠道备份:

    短信

    银行

    第三方支付

    运营商线路

    IDC容灾机房

    切换:

    自动化切换

    半自动化切换

    7. 监控

    (1)应用监控

    异常

    调用耗时,失败率等

  • 相关阅读:
    Mr. Frog’s Game(模拟连连看)
    Comparison of Android versions(strcmp的应用)
    Android热门网络框架Volley详解
    Android中你应该知道的设计模式
    从高德 SDK 学习 Android 动态加载资源
    Android中多线程下载列表的封装实现(含进度反馈)
    判断App是否在后台运行
    信息安全领域有哪些非常棒的资源?
    Android应用发布后的统计——百度移动统计的应用
    面试时,问哪些问题能试出一个Android应用开发者真正的水平?
  • 原文地址:https://www.cnblogs.com/yeahwell/p/5640787.html
Copyright © 2020-2023  润新知