自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 收藏
  • 关注

原创 linux -- 学习笔记启动设置

如果linux使用图形界面, 显然会占用更多的资源如果安装linux的时候, 安装上了图形界面, 可以通过如下方式设置默认启动linux的默认启动不尽相同centos6修改配置文件(/etc/inittab)的启动级别centos7可使用命令也是打开 /etc/inittab这个文件, 根据说明, 使用红色命令设置[root@localhost ~]# system...

2020-01-22 11:36:27 203

原创 linux -- 学习笔记root密码重置

redhat7重置root密码1.开机启动, 按e键,进行编辑2.编辑修改两处:ro改为rw, 然后在LANG=en_US.UFT-8后面添加init=/bin/sh (行末)3.按ctrl+x启动进入单用户模式4.在单用户模式下, chroot /sysroot 命令, 表示将对root设置5.随后输入passwd root命令, 表示对root进入密码设置6设置虚roo...

2020-01-22 11:16:28 233

原创 linux -- 学习笔记系统安装与网络

linux学习时, 环境都会使用虚拟机本文使用VMware + RedHat7.1首先下载这两个软件: (VMware用于虚拟硬件环境)准备linux系统安装环境:安装VMware后, 点击打开VMware , 准备linux安装前的环境:文件 -> 新建虚拟机 --> 重复下一步:最主要是注意这一步: 选择稍后安装操作系统有一步是让你填写系统名...

2019-11-17 12:33:05 271

原创 linux -- 学习笔记yum配置

本文介绍yum的网络源配置yum源就是提供软件包的来源,来源可以是本地, 也可以是网络本地yum源的配置相对比较简单(省略)要配置网络源, 首先肯定是需要能上外网如果你还没有配置网络连接, 可以快速配置一下 # nmtui命令(省略)选择一个网络源, 比如163的1.下载163网络源配置文件: # wgethttp://mirrors.163.com/.help/Cent...

2019-11-04 17:41:09 288

原创 linux -- 学习笔记MariaDB

MariaDB是Mysql的分支产品,是一款全新的数据库管理系统但是几乎完全兼容Mysql, 可以认为MariaDB与Mysql, 在性能是基本保持相同安装MariaDB:# yum -y install mariadb mariadb-server# systemctl enable mariadb -- 开机启动初始化MariaDB:在使用Maria...

2019-10-24 20:55:48 256

原创 linux -- 学习笔记Apache

web服务 通过浏览器向用户提供各种资源的服务它是一种被动的服务, 由用户发起访问, 才响应服务能够提供这种服务的程序, 称为web服务程序或者web服务器, 目前的web服务程序有IIS, Nginx, ApacheIIS是windows中默认的web服务程序, 只能在windows中使用, 而本文全部内容为Apache相关本文主要内容:Apache安装介绍 Apac...

2019-10-19 21:53:12 173

原创 linux -- 学习笔记 hosts文件与DNS

为了更方便管理, 每台主机都应该有一个易读的名称, 一般可能会根据用途命名主机名, 指已安装的操作系统的名称1.查看本地linux系统主机名如上所示, 使用hostname命令可查询主机名其实不用查询, [sun@new_hostname Desktop]$ 中蓝色部分就是主机名2.修改本地linux系统主机名 。临时修改主机名 如上...

2019-10-12 17:23:24 760

原创 linux -- 学习笔记 分区

linux分区相对是比较难理解的先来看看linux目录:安装好系统以后, 预设的目录情况大概就是这样:linux中没有c盘d盘等盘符, 只有一个根目录, 所有文件都从根目录开始 /root, /home, /boot, /etc/sysconfig根下面的每一个目录具有一定含义, 比如/etc 一般用于存放各种配置文件/boot 存放系统启动相关的引导文件/...

2019-10-11 13:49:09 299

原创 linux -- 学习笔记iptables

防火墙, 是一种位于内部网络与外部网络之间的网络安全系统可以将内部网络与外部网络隔离, 如果没有防火墙, 内网与外网之间则是盲目传递流量防火墙 能监控 和过滤未经允许的流量, 是一种分离内网与外网的技术iptables 是一款防火墙工具, 所有发行版都能使用在redhat7/centos7中默认的防火墙工具是firewalld, 当然也可以使用iptablesiptable...

2019-10-09 13:29:59 151

原创 linux -- 学习笔记ssh

ssh (secure shell) 是一种以 安全方式 提供远程登陆的协议在此之前, 一般使用的是 FTP 或 Telnet 来进行远程登陆FTP与Telnet 以明文的方式, 在网络中发送账户密码和数据, 很不安全因此, 首选使用ssh协议来远程登陆linux系统安装sshd服务程序sshd是基于SSH协议开发的远程登陆服务程序sshd提供两种安全验证方法...

2019-09-29 01:04:30 140

原创 linux -- 学习笔记dhcp

dhcp 动态主机配置协议 dynamic host configuration protocol作用: 集中分配管理 Ip, Gateway,DNS相关信息(通常用于局域网中)模型: server / client原理: 网络主机(局域网中的主机)向DHCP服务器申请地址信息后, DHCP服务器向其返回地址配置信息 从而实现网络内主机地址信息的动态分配...

2019-09-27 10:14:19 128

原创 linux -- 学习笔记NTP

NTP即网络时间协议(Network Time Protocol)用于同步网络中各个计算机的时间它是一个c/s构架的应用, 使用UDP协议, 端口123安装ntp服务器: yum install ntp它即是 服务器 也是 客户端例: 给局域网中的3台主机同步时间先给每台主机安装ntp, 再选主机1作为ntp服务器, 主机2,主机3 作为ntp客户端ntp服...

2019-09-23 13:06:38 163

原创 linux -- 多网卡绑定

本文记录多个网卡合并操作网卡和硬盘一样都支持合并操作, 即将单个的网卡绑定成一个网卡这样可以提高网卡速度, 以及安全性(一个网卡损坏仍可正常工作)1.首先在在虚拟机上模拟一个新网卡设备, 这样就有两个网卡设备(如图所示)需要注意的两个网卡都使用一种模式(保证两网卡之间通信), 这里使用桥连模式2.编辑配置文件 ifcfg-eno16777736其中的字段MASTER指...

2019-09-07 17:05:20 148

原创 linux -- nmcli命令管理网络配置

本文简要记录nmcli命令本人在书上看到nmcli命令介绍, 是用于配置网络当时有点疑惑, 因为我才刚刚配置了 /etc/sysconfig/network-scripts/ifcfg-eno16777736ifcfg-eno16777736是网卡配置文件, 因此认为配置网络, 应该是直接修改此文件然后在查询得知,ifcfg-eno16777736只是单个的配置网络, nmcli也...

2019-09-07 13:40:59 495

原创 linux -- ping通外网

本文记录在虚拟机中使用linux连接网络都知道可使用ping 域名或ip 来测试是否连通对方网络百度或淘宝等,其网络肯定是没问题(因为随时都能访问)所以,如果你能ping通百度或淘宝, 则反过来能说明自己网络也没问题本人自己弄了很久, 一直没有ping通外网(百度)因为是业余研究, 在网上也找了大半天, 各种方法都试过了, 不能成功最后成功了, 总结:不能ping能外网的主...

2019-09-06 14:43:11 1213

原创 linux -- 用户与用户组

对一个linux系统, 可以有不同的用户操作每个用户某些有不同的权限1.查看系统中有哪些用户其实就是查看/etc/passwd ,你可以选择使用命令现在使用cut:# cut -d':' -f 1 /etc/passwd2.创建用户创建用户, 其实可以去编辑passwd文件, 也可以使用命令# adduser username 或 # useradd user...

2019-08-14 13:44:59 271

原创 linux -- 关机与重启命令

shutdown命令它是安全的关机与重启命令之一, 建议使用此命令进行关机与重启但是它只有root用户才有权限执行shutdown 没有参数,直接关机, 默认是1分钟后关机shutdown -c 取消已执行的shutdown命令shutdown -h 时间 在规定时间后关机shutdown -r 时间 在规定的时...

2019-08-12 13:26:15 84

原创 linux -- cat命令

功能 1:显示 文件内容cat filename功能 2:合并多个文件内容(配合重定向符)cat filename1 filename2 ... > newfilename提示:abc.txt本身是不存在的(cat a.txt b.txt c.txt > abc.txt )这'>' 是重定向符,表示将合并的内容,重定向到指定的文件(abc.t...

2019-08-11 12:00:40 119

原创 go etcd

etcd 是由Go语言编写的key-value 存储,主要用途是共享配置和服务发现分布式系统之间必然要做到数据共享,需要依赖一个可靠的共享存储服务,而etcd能够提供这样的服务etcd类似的项目: zookeeper和consuletcd常见的两个版本v2和v3, 它们是两个独立的应用文档建议使用v3版本, 下载:https://github.com/coreos/etc...

2019-03-12 13:53:48 939

原创 go 继承

go里面严格来说是没有继承的所谓的继承是通过匿名字段的组合来实现的在使用其多态的时候可能会出问题它不像java那种, 根据实际传入的类型来选择方法type A struct {}type B struct { A // 只写出类型, 没有变量名 -- > 匿名字段}func (p *A) Show() { fmt.Println("start ....

2019-03-05 17:44:23 455

原创 go 协程等待

sync包提供了基本的同步基元,如互斥锁但是这里不是讨论线程通信的问题(而线程通信应使用Channel)以前使用time.Sleep(...)来保证线程执行完成, 显然线程执行所需要的时间不确定sync里面有一个WaitGroup, 它是一个结构体, 可以用于等待线程执行这样不用去估算线程需要执行多久原理:创建一个WaitGroup实例 添加要控制的线程数量 执行完一个...

2019-03-05 17:01:52 827

原创 go beego框架

beego是go的一个MVC的web开发框架, 基于net/http的封装如, 对路由的封装, 增加缓存, 日志库beego web开发:规划url 添加路由 开发controller(继承beego.Controller) 测试安装beego:C:\Windows\System32>go get github.com/astaxie/beego创建目录:...

2019-03-04 21:55:15 265

原创 go mysql事务

事务: 多个任务合起来称为一个事务比如转账, 一个账户要增加钱, 另一个帐户要减少钱, 可能还有其它的关联任务无论怎样, 至少是两个sql任务, 所以要保证这两个任务同时成功或同时失败, 则必须用到事务事务最重要的就是原子性, 即多个任务同时成功或同时失败事务操作:开启事务 -- 执行多个任务(若失败, 则回滚) -- 提交事务在go里面可使用第三方的库sqlx, 非常简便...

2019-03-04 15:57:05 918

原创 go mysql操作

数据库驱动是不同数据库开发商(比如oracle mysql等)为计算机语言能够实现数据库访问而开发的程序它将计算机语言对数据库的操作翻译成自身的数据库语言使用go语言操作mysql, 需要的驱动: github.com/go-sql-driver/mysql使用命令:go get安装第三方mysql驱动:C:\Windows\System32>go get gith...

2019-02-28 15:56:42 482

原创 go 模板

go可以不需要第三方的模板, 它自己具有模板功能首先需要模板文件(作为渲染页面):index.html:<html> <head> <title>this is a template</title> </head> <body> <h1> nam

2019-02-28 11:00:32 338

原创 go http

http包提供了HTTP客户端和服务端的实现*http.Request 获取客户端提交的数据http.ResponseWriter向客户端响应数据http_server.go:/* 自定义http的业务逻辑函数*/// response是一个io.Writer, 相当于一个打开了的文件(浏览器窗口)func login(response http.ResponseW...

2019-02-27 13:36:03 387

原创 go 单元测试

testing包提供对 Go 包的自动化测试的支通过 `go test` 命令,能够自动执行如下形式的任何函数:func TestXxx(te *testing.T) Test是固定的, *testing.T也是固定的参数类型calc.go中 里面是目标函数, 没有任何要求package test// 加法计算函数func CalcAdd(a, b int)...

2019-02-22 17:14:31 95

原创 go 定时器

time包中的方法NewTicker可以创建一个*Ticker Ticker是一个结构体, 其中的字段C是一个channel创建Ticker时, 根据参数表示的间隔, 向C中存入当前的时间(背后有一个协程执行这个动作)func main() { t := time.NewTicker(time.Second) for v:= range t.C { ...

2019-02-22 13:07:02 1716

原创 go 线程与channel

线程, 程序运行的分支go中的线程是轻量级的线程, 不需要使用线程池管理开启线程: go func()import ( "fmt" "runtime")func main() { maxCpu := runtime.NumCPU() // 获取cpu核数 fmt.Println(maxCpu) runtime.GOMAXPRO...

2019-02-21 17:06:28 452

原创 go 错误处理

type error interface { Error() string}内建error接口 类型用于表示错误信息,nil值表示无错误, 不属于哪一个包, 能直接使用errors包中的New函数可以构建error变量func main() { var err = errors.New(" has error") fmt.Println(err.Error...

2019-02-19 23:28:52 144

原创 go json协议

json协议是一个数据互通桥梁, 和语言无关, 它起的作用相当于翻译官比如要go里面的数据 转换为 java的数据直接把go数据给java, 肯定是不行的, 比如java根本就不认识结构体此时需要中间桥梁json , 因为json是java和go都能处理的先将go的数据转换为json, 这样java再将json转换为自己语言的数据golang  --> 序列化为json字...

2019-02-19 12:29:20 199

原创 go 命令行参数

os.Agrs 是一个string型的切片, 用于储存所有的命令行参数如果不传入命令行参数, 则os.Args中只有一个参数 -- 程序本身func main() { fmt.Println(len(os.Args)) // 1 for k, v := range os.Args { fmt.Printf("%d --- %s\n", k, v) // ...

2019-02-18 22:33:50 731

原创 go 标准输入输出 与 文件读写

平常使用的输入输出操作:func main() { fmt.Println("输入输出测试") var a int var b string fmt.Scanln(&a, &b) // 从终端读取字符串(输入时以空格分隔) fmt.Scanf("%d %s", &a, &b) // 格式化从终端读取(输入时以空格分隔)...

2019-02-18 21:32:53 5311

原创 go 接口使用(适配器模式)

接口就是一种规范, 只要遵循规范就可以使用其方法做多态操作使用步骤:1.在接口中定义方法2.需要不同的实现3.统一管理这些实现以一个负载均衡为例创建实例(主机)instance.go:package balanceimport "strconv"/*用于表示主机实例*/type Instance struct { host string //...

2019-02-17 12:57:32 412

原创 go反射

反射: 在运行时动态地获取变量的相关信息func test(data interface{}) {...}对于这个test函数而言, 它并不知道参数data的信息在运行时, 可以根据一种方式获取data的实际信息 -- 反射反射有两个常用函数:func TypeOf(i interface{}) Type -- TypeOf返回接口i中保存的值的类型func Value...

2019-02-14 22:57:54 83

原创 go接口

go里面的接口使用interface定义接口就是提供一种规范, 不需要关注它的实现, 都按照相同的操作使用它接口是一种类型 type Test interface {...}接口中包含未实现的方法, 不可包含变量 结构体的方法中, 如果有方法签名与接口中的方法签名相同, 则称结构体实现了该方法结构体需要全部实现接口中的方法, 才称为实现了接口, 才可以将结构体变量赋给接口变...

2019-02-14 21:14:01 141 1

原创 go链表(头指针和尾指针)

要求: 创建一个空链表, 可以从头部插入任意数据, 也可以从尾部插入, 再遍历出来分析: 首先肯定是需要一个链表型的结构体         再用一个结构体分别指向链表的头和尾两个节点         向链表添加元素时, 动态修改两个指针的指向         主要弄清楚二者的关系就好理解了, 关系如下图:上面是结构体链表/*创建链表结构体, 用于表示实际链表上的节点*...

2019-02-14 11:28:53 2775

原创 go结构体链表二叉树

链表就是 一个元素 通过指针连结 另一个元素, 元素之间在内存中不是连续的定义结构体:type Student struct { Name string Age int32 Score float32 next *Student}如上这种结构体, 有一个属性是指针类型的这种结构体的多个变量, 就可以构成链表现有三个Student变量ABC, ...

2019-02-12 10:09:14 239

原创 go函数

go语言中的函数是一个引用类型的变量, 变量名就是函数名func main() { println(add)}func add(a,b int) int { return a+b}输出:0x473550声明多个相同的函数(函数体不同), 那么这些函数就是相同类型的可以使用type声明出这种函数类型:type func_AB func(a ,b int)...

2019-02-01 22:19:56 132

原创 go流程控制

if用于判断, 一般有如下三种形式1.if 条件 {...}2.if 条件 {} else {                            // else不能写在下一行}3.if 条件 {                       // 只会执行一个代码块(即各代码块互斥)} else if  条件 {} else if  条件 {} else {}...

2019-02-01 11:08:52 87

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除