服务器类型

8.DHCP协议分析与实践

断了今生、忘了曾经 提交于 2019-12-27 13:49:35
DHCP 协议分析与实践 1. 概述 1.1 简介 Dynamic Host Configuration Protocol 用于取代 RARP 和 Bootp 协议,主要用于 集中管理和自动分配 IP 地址 ,帮助网络内的主机获取 IP 地址、子网掩码、网关和 DNS 服务器地址。 DHCP 用于取代 Bootp 协议,但引用了 租约和续租 的概念 基于 UDP 协议实现,位于应用层,使用 67 (DHCP服务器) 和 68 (DHCP客户端) 端口 1.2 地址分配方式 方式 说明 静态分配 即手工配置 IP、网关、子网掩码和 DNS 服务器 动态分配 主机向 DHCP 服务器申请 IP 地址,获取后就使用该地址 零配置 当使用动态分配失败时,如果 DHCP 服务器故障,有些操作系统会使用零配置为自己 分配一个私有地址(169.254.0.0 ~ 169.254.255.255),确保自己有 IP 地址 1.3 DHCP 工作流程 1.4 DHCP 网络拓扑图 1.5 报文格式 报文类型 : 1 表示请求报文(client to server), 2 表示响应报文(server to client) 硬件地址类型 : 即网络类型,1 表示以太网 硬件地址长度 : 以太网地址为 6 字节 跳数 : DHCP 报文经过的中继数量,每经过一个路由器值加 1 事件 ID :

服务器查看的一些命令

不羁岁月 提交于 2019-12-27 10:16:15
系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量 资源 # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 # du -sh <目录名> # 查看指定目录的大小 # grep MemTotal /proc/meminfo # 查看内存总量 # grep MemFree /proc/meminfo # 查看空闲内存量 # uptime # 查看系统运行时间、用户数、负载 # cat /proc/loadavg # 查看系统负载 磁盘和分区 # mount | column -t # 查看挂接的分区状态 # fdisk -l # 查看所有分区 # swapon -s # 查看所有交换分区 # hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备) # dmesg | grep IDE # 查看启动时IDE设备检测状况 网络 # ifconfig # 查看所有网络接口的属性 #

Python学习之旅(三十三)

£可爱£侵袭症+ 提交于 2019-12-27 09:14:32
Python基础知识(32):网络编程(Ⅰ) 网络通信是两台计算机上的两个进程之间的通信,而网络编程就是如何在程序中实现两台计算机的通信 P协议负责把数据从一台计算机通过网络发送到另一台计算机 TCP协议则是建立在IP协议之上的。TCP协议负责在两台计算机之间建立可靠连接,保证数据包按顺序到达 许多常用的更高级的协议都是建立在TCP协议基础上的,比如用于浏览器的HTTP协议、发送邮件的SMTP协议等 TCP编程 Socket是网络编程的一个抽象概念。通常我们用一个Socket表示“打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可。 一、客户端 大多数连接都是可靠的TCP连接。创建TCP连接时,主动发起连接的叫客户端,被动响应连接的叫服务器 1、创建一个基于TCP连接的Socket #导入socket import socket #创建一个socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #建立连接,注意参数是一个tuple,包含地址和端口号 s.connect(('www.sina.com.cn', 80)) TCP连接创建的是双向通道,双方都可以同时给对方发数据。谁先发谁后发,怎么协调,要根据具体的协议来决定 HTTP协议规定客户端必须先发请求给服务器

cmdb简介

让人想犯罪 __ 提交于 2019-12-27 08:30:15
目录 : 1.为啥要做cmdb👀 2.开发cmdb的思路和大概做法👀 3.cmdb的四套方案👀 一、为啥要做CMDB a.项目发开和上线场景🎆 流程: 产品经理调研需求 ===》定一个时间开发 ===》测试 ===》产品项目上线(运维) 传统做法: 运维解压文件(以邮件的形式发给运维),将代码部署到相对应的服务器目录下面。如果是由100等的话就是写shell脚本,后面跟着一串服务器的列表,然后把项目代码部署分发到每个服务器上,然后再用一个命令进行解压 存在问题: --效率不高 --不能实现覆盖Bug的代码(代码需要完bug之后就要重新走一套流程,效率极低) 解决方法: 代码上线系统: 前端展示给用户页面,用户可选择要上传的代码,页面还展示了公司所有的服务器和对应的ip地址可以进行勾选,然后点击上传即可。 这样就不需要交给运维人员了,运维只要告诉你有什么权限,然后分配了哪几台机器,再去选择需要发布的服务器,上传交给后端(使用django去改写shell脚本的那一套) 如果需要修改代码的话,也是直接发布提交,然后后台会自动的进行代码之间的比较 -------------------必要的条件:服务器的IP地址,硬盘空间,CPU的使用率,内存等 b.监控服务器🎪 (🔯监控服务器的报警信息:公司的服务器运行好多程序,会有好多的图表,就是监控这个服务|应用|网址的状态码等的一些变化信息♍)

sql语句

情到浓时终转凉″ 提交于 2019-12-27 08:29:50
一、基础 1 、说明:创建数据库 CREATE DATABASE database-name 2 、说明:删除数据库 drop database dbname 3 、说明:备份 sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始 备份 BACKUP DATABASE pubs TO testBack 4 、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B :create table tab_new as select col1,col2… from tab_old definition only 5 、说明:删除新表 drop table tabname 6 、说明:增加一个列 Alter table tabname add column col type 注 : 列增加后将不能删除。DB2中列加上后数据类型也不能改变

Redis和其数据类型操作手册

橙三吉。 提交于 2019-12-27 07:36:17
《“Java技术员”成长手册》,包含框架、存储、搜索、优化、分布式等必备知识,都收集在 GitHub JavaEgg ,N线互联网开发必备技能兵器谱,欢迎指导 Redis简介 Redis: REmote DIctionary Server (远程字典服务器)。 Redis 是一个全开源免费(BSD许可)的,内存中的数据结构存储系统,它可以用作 数据库、缓存和消息中间件 。一般作为一个高性能的(key/value)分布式内存数据库,基于 内存 运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为 数据结构服务器 Redis 介绍 ​ redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。 ​ redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括 string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型) 。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中

通过SQL Server操作MySQL的步骤和方法

天涯浪子 提交于 2019-12-27 07:26:23
在多种数据库环境下,经常会遇见在不同数据库之间转换数据和互相进行操作的情况。以下简要介绍下用SQL Server操作MySQL的步骤和方法。 1 操作前的准备 1.1 安装MySQL驱动 想要在SQL Server中操作MySQL,首先要在SQL Server所在的服务器上安装MySQL的驱动。MySQL的驱动安装包在MySQL的官网上可以下载到,我下载到的安装包名为:mysql-connector-odbc-5.1.8-winx64,适用于64位的Windows服务器。双击安装包,直接[next]即可安装成功。安装成功后,在运行中输入[odbcad32.exe]打开[ODBC数据源管理器],点击[驱动程序]选项,可看到[MySQL ODBC 5.1 Driver]已安装成功。 1.2 建立ODBC数据源 安装好MySQL的驱动后就可以在SQL Server所在的服务器上建立指向MySQL服务器的ODBC数据源。 在[ODBC数据源管理器]中选择[系统 DSN]选项卡,点击[添加]按钮。 选择[MySQL ODBC 5.1 Driver],点击[完成]。 在弹出的配置框中填写数据源名、MySQL服务器IP、端口、用户名和密码,点击[ok],ODBC数据源创建成功。 1.3 建立链接服务器 建立链接服务器有两种方式,可以通过SQL Server Management

分布式文件系统MFS(moosefs)实现存储共享(第二版)

若如初见. 提交于 2019-12-27 03:48:52
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 分布式文件系统MFS(moosefs)实现存储共享(第二版) 作者:田逸( 这种架构除了性能问题而外,还存在单点故障,一旦这个NFS服务器发生故障,所有靠共享提供数据的应用就不再可用,尽管用rsync方式同步数据到另外一个服务器上做nfs服务的备份,但这对提高整个系统的性能毫无帮助。基于这样一种需求,我们需要对nfs服务器进行优化或采取别的解决方案,然而优化并不能对应对日益增多的客户端的性能要求,因此唯一的选择只能是采取别的解决方案了;通过调研,分布式文件系统是一个比较合适的选择。采用分布式文件系统后,服务器之间的数据访问不再是一对多的关系(1个NFS服务器,多个NFS客户端),而是多对多的关系,这样一来,性能大幅提升毫无问题。 到目前为止,有数十种以上的分布式文件系统解决方案可供选择,如lustre,hadoop,Pnfs等等。我尝试了PVFS,hadoop,moosefs这三种应用,参看了lustre、KFS等诸多技术实施方法,最后我选择了moosefs(以下简称MFS)这种分布式文件系统来作为我的共享存储服务器。为什么要选它呢?我来说说我的一些看法: 1、 实施起来简单。MFS的安装、部署、配置相对于其他几种工具来说,要简单和容易得多。看看lustre 700多页的pdf文档,让人头昏吧。 2、

前端性能调优篇

[亡魂溺海] 提交于 2019-12-27 02:09:02
DNS查询也消耗响应时间,如果我们的网页内容来自各个不同的domain (比如嵌入了开放广告,引用了外部图片或脚本),那么客户端首次解析这些domain也需要消耗一定的时间。DNS查询结果缓存在本地系统和浏览器中一段时间,所以DNS查询一般是对首次访问响应速度有所影响。下面是我清空本地dns后访问网页dns的查询请求。 避免页面跳转 当客户端收到服务器的跳转回复时,客户端再次根据服务器回复中的location指定的地址再次发送请求,例如以下跳转回复。 HTTP/1.1 301 Moved Permanently Location: http://example.com/newuri Content-Type: text/html 当客户端遇到这种回复的时候,用户只能等待客户端再次发送请求,有的网站甚至会一直跳n次,跳到他想带你去的地方…当然在这个时候用户看不到任何页面内容,只有浏览器的进度条一直在刷新。 80%的响应时间花在下载网页内容(images, stylesheets, javascripts, scripts, flash等)。减少请求次数是缩短响应时间的关键!可以通过简化页面设计来减少请求次数,但页面内容较多可以采用以下技巧。 1. 捆绑文件: 现在有很多现成的库可以帮你将多个脚本文件捆绑成一个文件,将多个样式表文件捆绑成一个文件,以此来减少文件的下载次数。例如在asp

HTTP协议小记

冷暖自知 提交于 2019-12-26 19:03:13
应用层上的协议非常重要的一个协议是HTTP协议。 这个协议包括了请求和回复两种报文类型。 请求和回复报文的内容形式是 1)起始行 2)首行 3)消息体 请求报文的内容格式是 <version><request-url><method> <headers> <entity-body> 回复报文的内容格式是 <version><status><reason-pharse> <headers> <entity-body> 报文中标签代表的含义是 method:指请求方法,主要的方法为GET和POST。 request-url:指请求路径/地址 version:指协议版本,现在通常是http/1.1   status:指响应状态码,主要的响应状态例如200,404。 reason-pharse:原因短语,200 Ok、404 No Found 这种后面描述的就是原因短语,不必太过关注。 method 请求方法使用频繁的是Get和POST。面试的时候通常被问到这两个方法有什么区别。这里我们来谈一谈。 GET和POST在传输形式上有一些差异。GET请求时,会在request-url地址后拼接参数,格式是url?parm1=ss&parm2=dd。 所以,这样的形式会在地址栏中暴露参数。由于url地址采用ASCII编码,如果参数中有Unicode编码的字符,例如汉字,需要转码后传输。