- 博客(16)
- 收藏
- 关注
原创 Docker学习笔记
Docker1.简介Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 项目后来还加入了 Linux 基金会,并成立推动 开放容器联盟(OCI)。Docker 自开源后受到广泛的关注和讨论,至今其 GitHub 项目 已经超过 5 万 7 千个星标和一万多个 fo
2020-09-11 14:36:34 200
原创 redis基本数据类型
在Redis中有五种数据类型String 字符串Hash 字典List 列表Set 集合Sorted Set 有序集合一 数据类型String—字符串string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。string类型是Redis最基本的数据类型,一个键最大能存储512MB。String 数据结构是简单的 key-
2020-09-11 14:10:11 157
原创 beego学习笔记
beego架构积木式集合cache 缓存模块config 配置模块context 上下文模块logs 日志模块orm 和数据库操作相关模块session 会话httplib 网络相关模块beego执行逻辑页面(V) — 控制© — 数据库(M)beego项目结构|_____config| |---app.config|_____controllers(C)| |---admin| |---default.go|_____main.go|____
2020-09-11 14:01:21 348
原创 MySql学习笔记
MySql笔记基本使用DDL语句1. 创建databasemysql> create database test1;Query OK, 1 row affected (0.00 sec)2. 查看datebasemysql> show databases;+--------------------+| Database |+--------------------+| information_schema || cluster || mysql || test |
2020-09-11 13:48:26 172
原创 Beego-学习笔记
beego架构积木式集合cache 缓存模块config 配置模块context 上下文模块logs 日志模块orm 和数据库操作相关模块session 会话httplib 网络相关模块beego执行逻辑页面(V) — 控制© — 数据库(M)beego项目结构|_____config| |---app.config|_____controllers(C)| ...
2020-03-18 17:12:57 205
原创 进程同步
1.进程同步之信号量机制(PV操作)1.1.信号量机制信号量机制即利用pv操作对信号量进行处理.什么是信号量?信号量(semaphore)的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程.信号量的值与相应资源的使用情况有关.当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数.注意,信号量的值仅能由pv操作来改变.一般来说,信...
2020-03-18 17:10:14 158
原创 go socket
1.server.gopackage mainimport ( "fmt" "net")func main() { //指定服务器 通信协议,ip地址,port listener, err := net.Listen("tcp", "127.0.0.1:8000") if err != nil { fmt.Println("net.Listen err:", err) ...
2020-03-18 17:09:17 77
原创 Go单元测试
GO单元测试1.使用testing框架 :1.1. go test : 如果运行正确,无日志. 错误时,会输出日志1.2. go test -v : 运行正确或错误都会输出日志1.3. 当出现错误时,可以使用t.Fatalf 来格式化输出错误信息,并退出日志1.4. t.Logf 方法可以输出相应的日志1.5. 测试用例函数没有放在main函数中也可运行,这是testing框架的功能...
2020-03-18 17:08:36 110
原创 go语言Json
Json序列化package mainimport( "fmt" "encoding/json")// 定义一个结构体type Monster struct{ Name string `json:"name"` //指定反序列化后的名字 Age int `json:"age"` Birthday string Sal float64...
2020-03-18 17:07:50 103
原创 sync.WaitGroup的用法
1.介绍经常会看到以下代码:package mainimport ( "fmt" "time")func main(){ for i := 0; i < 100 ; i++{ go fmt.Println(i) } time.Sleep(time.Second)}主线程为了等待goroutine都运行完毕,不得不在程...
2020-03-18 17:06:52 366
原创 Go笔记-goroutine
1.goroutine特点:1.有独立的栈空间2.共享程序堆空间3.调度由用户控制4.协程是轻量级线程goroutine 是一个轻量级的执行单元,相比线程开销更小,完全由 Go 语言负责调度,是 Go 支持并发的核心。开启一个 goroutine 非常简单:package mainimport ( "fmt" "time")func main() { go fmt.Pr...
2020-03-18 17:05:43 138
原创 Go Rpc
Go Rpcrpc_server.gopackage main import ( "errors" "fmt" "net/http" "net/rpc") type Args struct { A, B int} type Quotient struct { Quo, Rem int} type Arith int fu...
2020-03-18 17:01:08 270
原创 KMP算法go语言
1.1 Next数组:最大公共前后缀next数组:算法:func NextArray(needle string) []int { l := len(needle) next := make([]int, l) next[0] = -1 k := -1 i := 0 for i < l-1 { if k == -1 ...
2020-03-18 16:59:16 354
原创 字符串匹配算法
Manacher算法由于回文分为偶回文(比如 bccb)和奇回文(比如 bcacb),而在处理奇偶问题上会比较繁琐,所以这里我们使用一个技巧,具体做法是:在字符串首尾,及各字符间各插入一个字符(前提这个字符未出现在串里)。举个例子:s="abbahopxpo",转换为s_new="$#a#b#b#a#h#o#p#x#p#o#"(这里的字符 $ 只是为了防止越界,下面代码会有说明),如此,s 里...
2020-03-18 16:56:23 102
原创 动态规划算法
DP算法动态规划1.1 最长回文字符串1.2 零钱兑换动态规划动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。算法分为:自底向上:动态规划(划分小问题)自顶向下:记忆化搜索(递归基础上记忆已计算的结果)1.1 最长回文字符串1.动态规划算法func longestPalindrome(s st...
2020-03-18 16:51:36 95
原创 Golang使用MySql的一些问题
Golang操作数据库遇到的问题记录1.dial tcp 127.0.0.1:3306: connect: connection refused1.dial tcp 127.0.0.1:3306: connect: connection refused确认mysql是否打开移除/etc/my.cnf中的skip-networking#2.register db Ping default...
2020-03-17 23:16:49 13452
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人