- 博客(70)
- 资源 (3)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 GO写的一份加密包,对称加密AES非对称加密RSA
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/sgsgy5 前言:小弟今日闲暇时间用GO语言简单的封装了几个加密函数,包括对称加密函数DES(虽然被破解很少用,但是可以作为了解),三重DES加密,AES的CBC和CTR模式(对称加密中常使用,推荐使用),非对称加密中的RSA加密解密函数,后期有时间更新椭圆曲线加密的一些内容,还...
2018-11-04 14:24:06
1156
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 一份GO语言和区块链超详细学习资料,包含视频链接,源码例题问题讲解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5 一份GO语言和区块链超详细学习资料,包含视频链接,源码例题问题讲解花了一些时间整理收集了go语言的比较详细的学习资料,包含了视频链接,都是不加密的,还有源码例题讲解,一些笔记,以及一些计算机编程的一些基本操作的学习,由于go的高并发的处理机制是实现区块链技术的一门较好的语...
2018-10-10 11:36:16
1155
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
转载 高并发下map和chan实现的链接池的线程安全及效率
1.背景上一次blog写着写着崩掉了,这次一定写完一节保存一节。目前从事go语言的后台开发,在集群通信时需要用到thrift的rpc。由于集群间通信非常频繁且并发需求很高,所以只能采用连接池的形式。由于集群规模是有限的,每个节点都需要保存平行节点的连接,所以链接池的实现方式应该是map[host]chan conn。在go语言中,我们知道channel是线程安全的,但map却不是线程安全的。所...
2018-10-05 14:23:03
847
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 一条简单区块链的实现
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5在上一章中我们讲解了一个简单的区块创建,那么我们今天来讲解一下一条简单区块链的实现思路分析: 创建一个创世块,就是区块链的头 //上一章节中讲解了如果实现一个区块的简单实现 定义一个结构体,用来保存区块链中的区块,结构体里面的元素可以就是那条链 用方法来实现区块的添...
2018-09-10 15:02:38
689
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 go的几种死锁情况分析
在go语言中用channel通信稍不注意就会发生死锁情况,下面我们来看一下几种常见的死锁情况第一种:同一个goroutine中,使用同一个 channel 读写。package mainfunc main(){ ch:=make(chan int) //这就是在main程里面发生的死锁情况 ch<-6 // 这里会发生一直阻塞的情况,执行不到下面一句 ...
2018-08-27 20:30:17
5740
4
原创 Shell语法例子详细介绍使用01篇
一、Shell简介(了解)1、什么是Shell概念:Shell 既是一种命令语言,也是一个用 C 语言编写的程序 (命令解释器->“翻译官”) 作用:主要提供一个接口使用户与内核交互操作。 流程:接收用户输入的命令并且进行解释(转换为计算机可以理解的机械码),然 后将命令送入内核去执行 -> 最后将结果返回给用户。Shell的种类含义:不同的命令解析器(程序不断升级)...
2018-12-07 19:15:45
312
转载 在go modules里使用go get进行包管理
上一篇文章里我们介绍了go modules的初步使用,现在我们来更深入的了解一下如何使用go get在module中管理依赖。module下的包管理首先我们介绍过go mod edit修改go.mod,然而它有两点缺陷:首先是它的-require必须接受“package@version”这种形式,缺一不可,而且不能识别文档规定的master和latest标志。其次是edit只适合用于修改...
2018-11-08 20:35:15
864
转载 golang包管理解决之道——go modules初探
golang的包管理是一直是为人诟病之处,从golang1.5引入的vendor机制,到准官方工具dep,目前为止还没一个简便的解决方案。不过现在go modules随着golang1.11的发布而和我们见面了,这是官方提倡的新的包管理,乃至项目管理机制,可以不再需要GOPATH的存在。go modules的初始化现在modules机制仍在早期阶段,所以golang提供了一个环境变量“GO1...
2018-11-08 20:27:18
350
原创 从零构建以太坊智能合约到项目实战,区块链开发的学习视频,买的比较全面
前言:现在区块链开发主流语言GO语言开发,如果想学习区块链开发的的话,这里有一份比较全面的视频分享给想学习的朋友们,后期如果有视频教程的话还会继续分享 https://pan.baidu.com/s/11hxFCo98w3vaBdV2hha-kA 密码:23kd还有go的全面学资料和学习视频链接,如果想要可以自取:github地址:https://github.com/wumansgy如果想一...
2018-11-07 11:52:55
346
原创 GO语言AES加密的CTR模式加密解密详解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/sgsgy5 具体封装的所有函数的加密包github地址:https://github.com/wumansgy/goEncryptCTR 模式CTR模式的全称是CounTeR模式(计数器模式)。CTR摸式是一种通过将逐次累加的计数器进行加密来生成密钥流的流密码(下图)。CT...
2018-11-06 19:13:20
4320
转载 Ubuntu设置GOPATH环境变量
1、Ubuntu保存环境变量的几个文件/etc/profile在用户登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。/etc /environment在用户登录时,操作系统使用的第二个文件, 系统在读取用户个人的profile前,设置环境文件的环境变量。~/.profile在用户登录时,用到的第三个文件 是.prof...
2018-11-06 13:05:45
760
1
原创 Go语言中操作三重DES加密详解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/sgsgy5 1.三重DES现在DES已经可以在现实的时间内被暴力破解,因此我们需要一种用来替代DES的分组密码,三重DES就是出于这个目的被开发出来的。三重DES(triple-DES)是为了增加DES的强度,将DES重复3次所得到的一种密码算法,通常缩写为3DES。...
2018-11-03 18:43:41
1276
转载 解决办法:error: failed to push some refs to 'https://github.com/xxxx.git'
在github远程创建仓库后, 利用gitbash进行提交本地文件的时候出现如下错误:[root@foundation38 demo]# git push -u origin masterUsername for 'https://github.com': xuefeilongPassword for 'https://xuefeilong@github.com': To https://...
2018-11-03 18:38:36
20680
1
原创 Go语言中操作DES加密详解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/sgsgy5 今天来讲解一下加密函数中对称加密的DES加密函数,利用go语言实现DES加密解密操作。加解密思路分析:加密CBC分组模式1:创建并返回一个使用DES算法的cipher.block的接口密钥长度为64bit,即64/8字节2:对最后一个明文分组进行数据填充...
2018-10-31 14:52:58
2128
原创 区块链概念学习资料
搜集了一些区块链概念方面的博客文章,博主用了比较稍微通俗易懂的方式讲解了一些概念,如有需要可以看一下:github学习资料地址:https://github.com/wumansgy/GoAndBlockChainStudy区块链100篇之第一篇–序(比特币)区块链100篇之第二篇–P2P与比特币的支付与交易区块链100篇之第三篇–数字签名区块链100篇之第四篇–矿工及挖矿 区块链10...
2018-10-23 13:27:31
350
转载 高并发map&chan连接池bug1
1.背景对于上一次的map连接池实现,其效率与线程安全是没有问题的。但是在实际的使用中,当并发量很大的时候,其依然会出现问题。2 .出现的问题仔细查看get代码,不难发现在获取连接时,由于没有设置连接上限,我们默认总会获取到连接(无论是从连接池获取还是新建连接)。本人使用的是rpc连接,做压力测试时,连接池大小为100,但每秒的并发请求数为10000,连接的使用时间为1s。导致大部分的连接无...
2018-10-22 16:32:32
210
原创 缓存型数据库redis基本数据操作
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/sgsgy5 redis基本操作今天我们来讲一下redis的几种基本数据操作1. 启动数据库服务.服务器端的命令为redis-server可以使用help查看帮助文档redis-server --help启动以服务端启动sudo service redis start...
2018-10-20 13:45:48
270
原创 beego框架图文简介五分钟讲解05-小Demo讲解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5小Demo讲解我们今天以注册和登陆作为我们今天的demo讲解,把前面讲到的内容都串起来。先注册,然后登陆。在开始具体的业务之前我们要做数据库设计,在正式开发中这一步是非常重要,也比较复杂的,但是今天我们只实现登陆和注册,就简单有个用户名和密码即可,model.go内容如下...
2018-10-19 15:47:15
1979
原创 缓存型数据库redis搭建主从详解
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5 1.1搭建主从主从概念a) 一个master可以拥有多个slave,一个slave可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构b) master用来写数据,slave用来读数据,经统计:网站的读写比率是10:1c) 通过主从配置可以实现读写分离...
2018-10-18 13:52:18
319
原创 beego框架图文简介五分钟讲解04-ORM框架操作数据库
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5 2.10 ORM框架Beego中内嵌了ORM框架,用来操作数据库。那么ORM框架是什么呢?ORM框架是Object-RelationShip-Mapping的缩写,中文叫对象关系映射,他们之间的关系,我们用图来表示:2.10.1 ORM初始化首先要导包impo...
2018-10-17 11:01:21
765
原创 Beego框架开发之常见错误01-设置session时候的几种错误-invalid memory address or nil pointer dereference
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5 1. Session今天我们来讲解一下beego框架开发里面的第一种常见的错误,而且有时候这些错误隐藏的不好找,有些地方语法根本没有错误,所有找错误的时候如果没有注意到,那么 就会很不好找bug,特别对于新手来说,如果这些错误不注意那么很容易犯错。先来看一下介绍wha...
2018-10-16 12:56:40
5985
原创 beego框架图文简介五分钟讲解03-go语言简单方式操作MySQL数据库
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy5 2.8Go操作MySQL数据库(简单方法)安装go操作MySQL的驱动go get -u -v github.com/go-sql-driver/mysqlgo简单操作MySQL数据库导包import "github.com/go-sql-drive...
2018-10-14 12:55:12
709
原创 beego框架图文简介五分钟讲解02
|版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址:https://blog.csdn.net/sgsgy52.5Beego运行流程分析浏览器发出请求路由拿到请求,并给相应的请求指定相应的控制器找到指定的控制器之后,控制器看是否需要查询数据库如果需要查询数据库就找model取数据如果不需要数据库,直接找view要视图控制器拿到视图页面之后,把页...
2018-10-12 18:14:03
3386
原创 Go语言beego框架快速搭建体验五分钟讲解01
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy5beego框架1.Beego框架了解2.beego框架快速入门1.1beego框架了解Beego作者:谢孟军Beego框架是go语言开发的web框架。那什么是框架呢? 就是别人写好的代码,我们可以直接使用!这个代码是专门针对某一个开发方向定制的...
2018-10-10 18:56:05
2398
1
原创 SQL图文讲解操作16-简单函数处理
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.7 函数1.7.1 数字类mysql> select rand(); # 生成随机数+---------------------+| rand() |+---------------------+| 0....
2018-10-08 12:55:05
220
原创 SQL图文讲解操作15-事务及索引讲解
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.5 事务【transaction】事务是一个不可分割的执行单元事务作为一个整体要么一起执行,要么一起回滚插入测试数据mysql> create table bank( -> cardid char(4) primary k...
2018-10-04 22:50:46
182
原创 SQL图文讲解操作14-视图及视图算法
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.4 视图【view】1、 视图是一张虚拟表,它表示一张表的部分或多张表的综合的结构。2、 视图仅仅是表结构,没有表数据。视图的结构和数据建立在表的基础上。1.4.1 创建视图语法create [or replace] view 视图的名称as...
2018-10-01 21:07:32
1674
转载 Golang开发支持平滑升级(优雅重启)的HTTP服务
Golang开发支持平滑升级(优雅重启)的HTTP服务前段时间用Golang在做一个HTTP的接口,因编译型语言的特性,修改了代码需要重新编译可执行文件,关闭正在运行的老程序,并启动新程序。对于访问量较大的面向用户的产品,关闭、重启的过程中势必会出现无法访问的情况,从而影响用户体验。使用Golang的系统包开发HTTP服务,是无法支持平滑升级(优雅重启)的,本文将探讨如何解决该问题。一、平滑...
2018-09-28 19:20:59
1901
原创 SQL图文讲解操作13-子查询
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.3 子查询语法语法:select 语句 where 条件 (select … from 表)外面的查询称为父查询,括号中的查询称为子查询子查询为父查询提供查询条件1.3.1 例题1、查找笔试80分的学生mysql> se...
2018-09-28 18:50:35
212
原创 SQL图文讲解操作12-多表查询
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy5 ## 1.1 目标理解多表查询理解子查询能够创建视图能够删除视图能够查看创建视图的SQL语句能够理解事务的作用能够操作事务理解索引的作用能够创建索引能够删除索引知道常用的函数了解预处...
2018-09-26 18:12:16
280
原创 例题SQL语句详解-数据库基本操作11-排序分组联合
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.6.11 order by排序asc:升序【默认】desc:降序mysql> select * from stu order by ch desc; # 语文成绩降序排列mysql> select * from stu order...
2018-09-22 12:42:59
609
原创 例题SQL语句详解-数据库基本操作10-查询语句
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.6 查询语句语法:select [选项] 列名 [from 表名] [where 条件] [group by 分组] [order by 排序][having 条件] [limit 限制]1.6.1 字段表达式mysql> selec...
2018-09-20 12:35:39
797
原创 例题SQL语句详解-数据库基本操作9-完整性介绍
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.15 数据完整性介绍1.15.1 保证实体完整性1、 主键约束2、 唯一约束3、 自动增长列1.15.2 保证域完整性1、 数据类型约束2、 非空约束3、 默认值约束1.15.3 ...
2018-09-19 12:38:29
268
原创 例题SQL语句详解-数据库基本操作7-数据类型拓展
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.6 数据类型——booleanMySQL不支持boolean类型,true和false在数据库中对应1和0。mysql> create table t15( -> field boolean -> );Query ...
2018-09-19 12:34:04
247
原创 例题SQL语句详解-数据库基本操作8-组合键唯一键
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.6 数据类型——booleanMySQL不支持boolean类型,true和false在数据库中对应1和0。mysql> create table t15( -> field boolean -> );Qu...
2018-09-17 14:24:56
3498
原创 例题SQL语句详解-数据库基本操作6-数据类型拓展
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.3 数据类型——枚举(enum)1、从集合中选择一个数据(单选)mysql> create table t8( -> name varchar(20), -> sex enum('男','女','保密') ...
2018-09-16 13:28:15
336
原创 例题SQL语句详解-数据库基本操作5-数据类型
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.1 数据类型——值类型1.1.1 整型 类型 字节 范围 tinyint 1 -128~127 smallint 2 -32768~32767 mediumint 3 -8...
2018-09-15 13:12:12
426
原创 例题SQL语句详解-数据库基本操作4
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.6 SQL分类DDL(data definition language)数据库定义语言create、alter、drop、shopDML(data manipulation language)数据操纵语言select、update、ins...
2018-09-14 12:36:38
361
原创 例题SQL语句详解-数据库基本操作3
1.5 数据操作创建测试表mysql> create table stu( -> id int auto_increment primary key comment '主键', -> name varchar(20) not null, -> addr varchar(50) default '地址不详', -> score...
2018-09-13 19:47:45
802
原创 例题SQL语句详解-数据库基本操作2
|版权声明:本文为博主原创文章,未经博主允许不得转载。转载请附上原链接,博客地址:https://blog.csdn.net/sgsgy51.4 表的操作1.4.1 显示所有表语法:show tables1.4.2 创建表语法:create table [if not exists] 表名( 字段名 数据类型 [null|not null] [auto_in...
2018-09-13 12:46:22
361
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人