1、处理问题:

你处理过的问题

2、Mysql 索引类型

Fulltext:针对全文检索,可以设置关键字或者分词,适用于like %%,对中文支持不好

Hash:将一列或几列hash出一个值,将查询条件也hash,查看hash值相等的,取出硬盘上的地址,一次查找比btree效率高,但是只适用于=,不适用于范围查找,并且因为无法避免全表扫描,所以表大的时候效率不高,在内存数据库数据量小的情况下很好用

Btree:二叉树,折半查找,默认

RTree:范围查找比较好,在mysql中使用很少

3、Mysql innodb和myisam区别

1、InnoDB不支持FULLTEXT类型的索引。

2、InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含where条件时,两种表的操作是一样的。

3、对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。

4、DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。

5、LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用。

6、两种类型最主要的差别就是Innodb 支持事务处理与外键和行级锁

7、只读不写的数据,myisam强于innodb

8、Myisam数据和索引分开,innodb绑在一起没有压缩,所以innodb大

9、Innodb非主键查询也锁全表

4、交换机端口类型

Access 只属于一个vlan连接PC

Trunk 属于多个vlan服务器之间

Hybrid 混合

接收

端口接收到的报文类型

报文帧结构中携带VLAN标记

报文帧结构中不携带VLAN标记

Access端口

丢弃该报文

为该报文打上VLAN标记为本端口的PVID

Trunk端口

判断本端口是否允许携带该VLAN标记的报文通过。如果允许则报文携带原有VLAN标记进行转发,否则丢弃该报文

同上

Hybrid端口

同上

同上

interface g 1/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

发送

Access端口

剥掉报文所携带的VLAN标记,进行转发

Trunk端口

首先判断报文所携带的VLAN标记是否和端口的PVID相等。如果相等,则剥掉报文所携带的VLAN标记,进行转发;否则报文将携带原有的VLAN标记进行转发

Hybrid端口

首先判断报文所携带的VLAN标记在本端口需要做怎样的处理。如果是untagged方式转发,则处理方式同Access端口;

如果是tagged方式转发,则处理方式同Trunk端口

5、Vlan

隔离二层网络,同一个vlan是同一个二层网络,vlan之间通过三层网络ip连接

Vlanif vlan的逻辑端口,为vlan下所有用户的网关

6、华为交换机配置路由

ip route-static 10.1.200.0 255.255.255.0 10.10.2.2

7、华为交换机配置OSPF

同一个网络里不同的ospf自治域,每个area有自己的id,不同area之间通过边缘交换机连接,这里例如area1和area1两个自治域,area0是两个核心交换机连接的地方,在

配置vlan

interface g 1/0/1

port hybrid pvid vlan 10

设置vlanif接口地址

interface vlanif 10

ip address 192.168.0.1 24

配置area

router id 1.1.1.1

ospf

area 0

network 192.168.0.0  0.0.0.255反掩码

quit

area 1

network 192.168.1.0  0.0.0.255

Quit

对端核心交换机上配置ospf

配置vlan

interface g 1/0/1

port hybrid pvid vlan 10

设置vlanif接口地址

interface vlanif 10

ip address 192.168.0.2.24

配置area

router id 2.2.2.2

ospf

area 0

network 192.168.0.0  0.0.0.255反掩码,宣告路由

quit

area 2

network 192.168.2.1  0.0.0.255

Quit

其他的边缘交换机

Routerid 3.3.3.3

Ospf

area 2

network 192.168.0.0  0.0.0.255反掩码

quit

验证

display ospf peer邻居

display ospf routing路由

8、TCP滑动窗口

发送缓冲区中一部分数据(窗口大小),B接收后发送确认,再滑动窗口发送,以此类推

乱序的问题通过Sequence Number序号来解决

9、TCP三次握手四次挥手

10、http请求过程

1、dns解析

2、TCP三次握手

3、发送get或者post请求,包括http请求头

4、服务器相应http响应头,发送html

5、浏览器解析

11、http包请求头

Accept  就是告诉服务器端,我接受那些MIME类型

Accept-Encoding  这个看起来是接受那些压缩方式的文件

Accept-Lanague   告诉服务器能够发送哪些语言

Connection       告诉服务器支持keep-alive特性

Cookie           每次请求时都会携带上Cookie以方便服务器端识别是否是同一个客户端

Host             用来标识请求服务器上的那个虚拟主机,比如Nginx里面可以定义很多个虚拟主机

那这里就是用来标识要访问那个虚拟主机。

User-Agent       用户代理,一般情况是浏览器,也有其他类型,如:wget curl搜索引擎的蜘蛛等

12、响应头

Connection            使用keep-alive特性

Content-Encoding      使用gzip方式对资源压缩

Content-type          MIME类型为html类型,字符集是UTF-8

Date                  响应的日期

Server                使用的WEB服务器

Transfer-Encoding:chunked   分块传输编码 是http中的一种数据传输机制,允许HTTP由网页服务器发送给客户端应用(通常是网页浏览器)的数据可以分成多个部分,分块传输编码只在HTTP协议1.1版本(HTTP/1.1)中提供

Vary  这个可以参考(http://blog.csdn.NET/tenfyguo/article/details/5939000)

X-Pingback  参考(http://blog.sina.com.cn/s/blog_bb80041c0101fmfz.html)

13、http包结构

请求

相应

14、Python变量

Pyton变量是内存中一个对象的引用,可以视为是C语言的指针

String tunple numbers是不可更改的,list dict可以更改

修改python字符串:

a = ‘12345’

b = a[:1]+’3’+a[2:]

或者

List转成数组

15、Python staticmethod和classmethon

Classmethod参数有cls,是绑定的类,类对象和实例都可以调用,cls代表类对象,可以使用类变量,但是不能访问实例变量

Staticmethod,类对象和实例对象都可以调用

16、调用父类的构造函数

在子类的构造函数中使用 FOO.__init__(self)或者 super(Foo2,self).__init__()

17、类变量和实例变量

Class A:

name = ‘1’

name_lsit = []

a = A()

b = A()

a.name = ‘2’#只改变他自己

a.name_list.append(1)#改变所有的

18、python双下划线与单下划线

__foo__:python内部方法

_foo_:类私有变量

__foo:解析器替换为__classname__foo,以区别其他类

19、Extend与append区别

Extend只能接受列表,append什么都可以额,二者都只能接受一个参数

20、Yield

用在循环语句中,返回一个生成器。这个生成器只能被迭代一次

比如 在for语句中yield i,就是返回一个由每次的i组成的列表

21、新式类和旧式类

新式类在2.2引入,2.*中要显式的继承object,3.*中默认继承object。新式类相同父类只执行一次构造函数,旧式类多次,新式类搜索父类广度优先,旧式类深度优先

22、Select poll 和epoll:

Select 和poll差不多,都是先把fd_set或者pollfd从用户态拷贝到内核,然后__epoll_wait注册到内核等待队列中等待唤醒,唤醒后执行回调函数设置mask,select在内核中遍历fd列表,碰见有唤醒的就拷贝回用户空间

这样主要有三个问题

1、 fd多次拷贝开销大

2、 在内核中遍历所有fd开销大

3、 Select有文件上限

epoll提供了三个函数:epoll_create,epoll_ctl,epoll_wait,epoll_create创建一个epoll句柄;epoll_ctl注册要监听的事件类型,注册要监听的事件类型;epoll_wait等待返回。

1、 epoll_ctl注册时拷贝fd到内核,省的在epoll_wait中来回拷贝

2、 epoll_ctl时为每个fd注册一个回调函数,如果就绪了,就把自己加入到一个就绪链表,这样内核只要遍历就绪链表就可以了,不需要遍历所有

3、 没有上限,上限和系统一样

参考文献

23、__new__()实例

class LxmlDocument(object_ref):

cache = weakref.WeakKeyDictionary()

__slots__ = ['__weakref__']

def __new__(cls, response, parser=etree.HTMLParser):

cache = cls.cache.setdefault(response, {})

if parser not in cache:

obj = object_ref.__new__(cls)

cache[parser] = _factory(response, parser)

return cache[parser]

24、单例模式

Import天然是单例模式

New单例

class Singleton(object):

_instance = None

def __new__(cls, *args, **kw):

if not cls._instance:

cls._instance = super(Singleton, cls).__new__(cls, *args, **kw)

return cls._instance

class MyClass(Singleton):

a = 1

http://python.jobbole.com/87294/

装饰器

2

3

4

5

6

7

8

9

10

11

12

13

14

from functools import wraps

def singleton(cls):

instances = {}

@wraps(cls)

def getinstance(*args, **kw):

if cls not in instances:

instances[cls] = cls(*args, **kw)

return instances[cls]

return getinstance

@singleton

class MyClass(object):

a = 1

http://python.jobbole.com/87294/

25、Awk

awk ‘BEGIN {awk-commands} /pattern/ {awk-commands} END {awk-commands}’ file

使用文件awk ‘……’ -f awkfile

Awk -v variable=value awk变量

--dump-variables = file 打印全局变量到文件

--lint treat error as warn

--profile = file 讲程序输入到文件中

{print $0}打印所有行

示例:

统计行数:

awk ‘/a/ {++cnt} END {print “Count = “,cnt}’ file

awk 'BEGIN{FS=" "} /Phys/{print $3 }' marks.txt

內建变量:

ARGC 命令行参数个数

ARGV命令行参数数组

CONVFMT 数字的约定模式

ENVIORON 环境变量数组

FILENAME 当前文件名

FS 分隔符

NF 字段数目

NR 行数

FNR 处理多文件时相对当前文件的行号

OFMT 输出格式数字

OFS 输出字符分隔符

ORS 输出行分隔符

RLENGTH 匹配字符串长度

RS 输入字符分隔符

RSTART match第一次匹配的位置

数据结构:

数组:

array_name[index] = value

创建数组的方式非常简单,直接为变量赋值即可

删除使用delete

流程控制:

If(condition)command;else command

for(initialisation;condition;increment/decrement)action

while(condition)action

do action while(condition)

內建函数:

数学函数

atan2(y, x)

cos(expr)

exp(expr)

int(expr)

log(expr)

rand

sin(expr)

sqrt(expr)

srand([expr])

字符串函数

asort(arr [, d [, how] ])

asorti(arr [, d [, how] ])

gsub(regex, sub, string)

index(str, sub)

length(str)

match(str, regex)

split(str, arr, regex)

sprintf(format, expr-list)

strtonum(str)

sub(regex, sub, string)

substr(str, start, l)

tolower(str)

toupper(str)

时间函数

systime

mktime(datespec)

strftime([format [, timestamp[, utc-flag]]])

字节操作函数

and

compl

lshift

rshift

or

Xor

参考文献:

http://blog.jobbole.com/109089/

算法

1、 判断单链表是否交叉

判断是否交叉:两个链表分别遍历到底,看底部是否相等

判断是交叉点:长链表减去短链表之后的位置开始同时遍历两边,查看是否有相等的地方,,相等的地方就是交叉点

2、 二分查找

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

def binarySearch(l, t):

low, high = 0, len(l) - 1

while low < high:

print low, high

mid = (low + high) / 2

if l[mid] > t:

high = mid

elif l[mid] < t:

low = mid + 1

else:

return mid

return low if l[low] == t else False

if __name__ == '__main__':

l = [1, 4, 12, 45, 66, 99, 120, 444]

print binarySearch(l, 12)

print binarySearch(l, 1)

print binarySearch(l, 13)

print binarySearch(l, 444)

3、 如何判断链表是否有环

设置两个指针,一个slow,一个fast,slow每次前进一,fast每次前进二,如果slow碰上fast就是有环

环的长度:记录下slow和fast的碰撞点P,下次相撞前走过的路程l就是环长

连接点位置:分别从碰撞点和头指针开始走,相撞的地方就是连接点,因为你碰撞点p到连接点对的距离等于头指针到连接点的距离

4、 遍历二叉树

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

## 14 二叉树节点

class Node(object):

def __init__(self, data, left=None, right=None):

self.data = data

self.left = left

self.right = right

tree = Node(1, Node(3, Node(7, Node(0)), Node(6)), Node(2, Node(5), Node(4)))

## 15 层次遍历

def lookup(root):

stack = [root]

while stack:

current = stack.pop(0)

print current.data

if current.left:

stack.append(current.left)

if current.right:

stack.append(current.right)

## 16 深度遍历

def deep(root):

if not root:

return

print root.data

deep(root.left)

deep(root.right)

前序遍历:左子树-根-右子树

中序遍历:根-左子树-右子树

后序遍历:右子树-根-左子树

mysql反掩码_运维工程师速成相关推荐

  1. mysql反掩码_Linux运维:文件目录管理

    基础中的基础,趁着面试前复习过一遍. 基础命令 基本命令 pwd命令 作用:显示当前工作目录的名称 选项:-p 显示链接的真实路径 cd命令 作用:切换当前工作目录 常用: cd 切换到根目录 cd ...

  2. 运维学python用不上_运维工程师为什么要学python?

    现阶段,掌握一门开发语言已经成为高级运维工程师的必备计能,不会开发,你就不能充分理解你们系统的业务流程,你就不能帮助调试.优化开发人开发的程序, 开发人员有的时候很少关注性能的问题,这些问题就得运维人 ...

  3. python运维工程师前景及待遇_运维工程师有前途么?

    看怎么定义前途? 我直接点吧,不拿那些虚的精神生活来定义前途了,免得说忽悠,还是直接用物质水平吧 如果对于普通人来说,前途是指能赚个买房买车钱,那肯定没问题 如果想实现阶级跃升,进入富人阶级,也不是说 ...

  4. linux软件工程师_运维工程师打怪升级之路

    前不久,有一些读者朋友跟我聊到关于 Linux 运维方向的问题,不知道自己该学什么?怎么学?甚至对自己今后的职业规划发展方向,都没有明确.这也就充分说明了自己适合做什么方向,这个领域究竟适不适合自己去 ...

  5. python大数据运维工程师_运维工程师转型大数据怎么样

    运维工作没意思,运维没有前途,运维会被取代--让很多的运维工程师感受到前途无"亮",随着资本寒冬的来临,以及各种新技术的不断出现,很多运维工程师开始走向了转型的道路.那么在如今的数 ...

  6. 运维工程师是桥的护栏_运维工程师职务说明书

    岗位名称 运维工程师 岗位级别 所属部门 职 系 直接上级 直接下级 职业发展通道 轮岗方向 晋升方向 岗位目的: 职责范围:负责组织实施相关项目的风险评估.监控体系与工作机制 工作内容 责任程度(全 ...

  7. 运维工程师是桥的护栏_运维工程师岗位职责与任职要求

    驻场运维工程师岗位职责及要求 一. 系统维护人员能力 / 素质要求: 1. 具备优秀的计算机软.硬件知识,能够快速判断软.硬件故障,并且能 够指导用户使用主流软.硬件: 2. 熟悉常用的操作系统 (W ...

  8. python运维主要做什么_运维工程师主要做什么?

    很多想从事云计算运维工程师岗位的人,都想知道自己应该会什么样的技术.运维工程是都需要会什么技术?才会被企业所认可,才能找到一份专业的工作.今天传智播客就来说说运维工程师主要做什么. 运维工程师(Ope ...

  9. python运维工程师前景及待遇_运维工程师的前景如何?

    展开全部 工作前景 运维所涉及的知识面32313133353236313431303231363533e4b893e5b19e31333433616239.专业点非常广,对从业人员素质也要求非常高,运 ...

最新文章

  1. 零基础学java培训怎么选择学校
  2. MAT之GA:GA优化BP神经网络的初始权值、阈值,从而增强BP神经网络的鲁棒性
  3. 数据对象类代码的生成小工具
  4. 【web实战2】基于源码搭建小说自动采集网站
  5. Spark RDD在Spark中的地位和作用如何?
  6. 阮一峰:jQuery官方基础教程笔记
  7. 实验3-8 输出三角形面积和周长 (15 分)
  8. 如何新建一个keil工程 的详细步骤
  9. weblogic部署war包
  10. powerdesigner将name填充到comment中
  11. ABB机器人紧凑型控制柜内部结构(图)
  12. 易烊千玺代言雀巢咖啡;美国食品科技公司获3.5亿美元C轮融资;都乐“菠萝废物”开发皮革替代品...
  13. Python解决五猴分桃问题
  14. 2018年实现营收79.17亿元,科大讯飞能否决胜于人工智能时代?
  15. 塞班S60V5上的画图工具
  16. asp.net中获取当前url的方法(转)
  17. xpad a note tool for ubuntu
  18. Element UI DatePicker 日期选择器
  19. oracle月末才执行,oracle 月初月末的时间处理
  20. ecshop安装检测本地mysql服务器_ecshop 4.0本地服务器安装

热门文章

  1. 海南自由贸易港高层次人才分类标准 (2020):互联网领域标准
  2. Leetcode-467. Unique Substrings in Wraparound String
  3. oracle静默安装 详细流程
  4. js-cookie使用介绍
  5. 样本方差的性质及其应用
  6. ziddu免费网络硬盘
  7. make_blobs函数
  8. 5月19日第壹简报,星期四,农历四月十九
  9. winform窗体热键设置
  10. 基于Python实现k-means算法和混合高斯模型