自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MiixTimer的博客

白日不到处,青春恰自来;苔花如米小,也学牡丹开。

  • 博客(17)
  • 收藏
  • 关注

原创 协程、延迟函数调用、以及恐慌和恢复

协程(goroutine)Go不支持创建系统线程,所以协程是一个Go程序内部唯一的并发实现方式。每个Go程序启动的时候只有一个对用户可见的协程,我们称之为主协程。一个协程可以开启更多其它新的协程。在Go中,开启一个新的协程是非常简单的,我们只需要在一个函数调用之前使用一个go关键字,即可让此函数调用运行在一个新的协程之中。当此函数调用退出后,这个新的协程也随之结束。(不管其本身是否执行结束)我...

2019-12-19 09:48:25 443

原创 MongoDB基础操作之CRUD:Read

读取文档db.collection.find()匹配查询查询操作符游标查询操作返回:结果游标游标的迭代与操作投射只返回部分字段内嵌文档的投射数组的投射实践使用mongo shell读取文档全文档查询:db.collection.find()## <projection>文档定义了对读取结果进行的投射db.<collection>...

2019-12-18 19:02:26 159

原创 MongoDB基础操作之CRUD:Create

一:创建MongoDB文档的简单介绍文档主键_id每个MongoDB文档必备的字段文档主键具有唯一性文档主键支持所有数据类型(数组除外)文档主键可以是复合主键:例如可以用其他文档来做文档主键对象主键ObjectId默认的文档主键由客户端驱动程序快速生成的12字id前4个字节为创建时间,精确到秒,除多文档同时被创建和各客户端的系统时间不同这两种情况之外,可以借此区分创建的先后...

2019-12-17 12:48:13 203

原创 mongodb的安装

一:MongoDB的安装使用docker安装mongodb拉取mongodb4的docker镜像:docker pull mongo:4生成容器并挂载目录:docker run --name mymongo -v /docker/mongodb/data:/data/db -d mongo:4使用docker安装mongo express拉取mongo-express的docker...

2019-12-17 10:06:33 126

转载 无闻Web3.进阶模板用法

在模板中定义变量变量不仅是Go语言中程序代码的重要组成部分,同样也是模板引擎中的主要元素。因为只有通过定义和操作变量,才能使得模板引擎在逻辑和用法上更加灵活和便利。text/template包提供的文本模板引擎支持使用字母数字(Alphanumeric)作为变量的名称,并使用一个美元符号($)作为前缀,例如:$name、$age和$round2。在模板中定义语法和程序代码中类似,即使用:=链接...

2019-11-15 17:21:11 106

转载 无闻Web2.基础模板用法

在上一节中,我们学习了如何使用Go语言编写HTTP服务器的N种写法。但是,总是响应固定的字符串对用户和开发者而言都会显得非常无趣。因此,这节我们来学习如何使用Go语言标准库的text/template包来向客户端(即浏览器或终端)响应动态的内容。初识文本模板引擎标准库中的text/template包是Go语言内置的文本模板引擎,虽然在灵活性上不如其它语言中第三方框架自带的模板引擎(如Djang...

2019-11-14 11:17:06 117

转载 无闻Web1.初窥HTTP服务器

初窥HTTP服务器想要学习Go语言的Web开发,就必须知道如何在Go语言中启动一个HTTP服务器用于接受和响应来自客户端的HTTP请求。虽然Web应用协议不止于HTTP(HyperText Transfer Protocol),还包括常见的Socket、WebSocket和SPDY等等,但是HTTP是当下最简单和最常见的交换形式。Hello World!先创建一个名为http_server....

2019-11-13 11:47:58 131

原创 关键字和标识符

关键字和标识符关键字关键字是一些特殊的用来帮助编译器理解和解析源码的单词。截止目前(Go1.13),Go中共有25个关键字break default func interface selectcase defer go map structchan else goto package switchconst fallthrough if range ty...

2019-11-11 11:58:19 219

原创 golang中的iota

golang中的iotaiota是golang语言的常量计数器,只能在常量的表达式中使用。特性:iota只能在常量的表达式中使用每次const出现时,都会让iota初始化为0【自增长】const a = iota const ( b = iota // b=0 c // c=1)自定义类型自增长常量经常包含一个自定义枚举类型,允许你依靠编译器完成自增设置。type ...

2019-11-11 10:33:32 289

原创 容器的基本操作

docker容器的基本操作启动容器docker run [OPTIONS] IMAGE [COMMAND] [ARG...]示例:docker run alpine echo ‘hello world’启动交互式容器:docker run -i -t IMAGE /bin/bash-i :–interactive=true | false 默认是false-t:–tty=true...

2019-11-01 15:44:13 125

原创 gRPC(二)gRPC Client and Server

前言本章节将使用Go来编写gRPC Server和Client,让其互相通讯。在此之上会使用到如下库:google.golang.org/grpcgithub.com/golang/protobuf/protoc-gen-go安装Protocol Buffers v3wget https://github.com/protocolbuffers/protobuf/releases/...

2019-10-29 11:16:50 378

原创 gRPC(一)相关介绍

gRPC相关介绍一、RPC什么是RPC实际场景RPC框架常见RPC框架为什么要RPCRPC可以基于HTTP吗二、Protobuf介绍语法数据类型v2和v3主要区别相较Protobuf,为什么不使用XML?三、gRPC介绍特点概念讲解示例构建和启动服务端创建客户端一、RPC什么是RPCRPC是指远程过程调用(Remote Procedure Call),它的调用包含了传输协议和编码(对象序列号...

2019-10-28 15:49:52 286

原创 Docker简介

什么是容器?一种虚拟化的方案操作系统级别的虚拟化依赖于Linux内核特性:Namespace和Cgroups(Control Group)什么是Docker?将应用程序自动部署到容器Go语言开源引擎 Github地址Docker的目标提供简单轻量的建模方式职责的逻辑分离快速高效的开发生命周期鼓励使用面向服务的架构Docker的使用场景使用Docker容器开...

2019-10-25 15:22:03 106

原创 Go类型系统概述

Go基本类型概述概念:基本类型(basic type)概念:组合类型(composite type)语法:类型定义(type definition declaration)概念:基本类型(basic type)内置字符串类型:string内置布尔类型:bool内置数值类型:int8、uint8(byte)、int16、uint16、int32(rune)、uint32、int64、i...

2019-10-25 15:03:43 378

原创 Golang之defer延迟函数调用

文章目录1.什么是defer?2.defer进阶2.1. defer的底层原理是什么2.2.defer命令拆解3.更多知识点3.1.很多有返回值的内置函数是不能被延迟调用的3.2.延迟调用的函数值的估值时刻1.什么是defer?defer是Go语言提供的一种用于注册延迟调用的机制;让函数或语句可以在当前函数执行完毕后(包括通过return正常结束或者panic导致的异常结束)执行。de...

2019-10-24 15:03:56 242

原创 Go代码断行规则

Go代码断行规则1.分号插入规则2.逗号`,`从不会被自动插入1.分号插入规则自动插入分号的规则是什么呢?Go白皮书是这样描述的:1.在Go代码中,注释除外,如果一个代码行的最后一个语法词段(token)为下列所示之一,则一个分号将自动插入在此字段后(即行尾):一个标识符;一个整数、浮点数、虚部、码点或者字符串字面量表示形式;这几个跳转关键字之一:break、continue、fa...

2019-10-24 09:54:40 1483 1

原创 Go语言简介

Go语言简介Go是一门编译型的、静态的编程语言。Go诞生于谷歌研究院。Go有很多特性,有一些是独特的,有一些借鉴于一些其它编程语言。内置并发编程支持:使用协程(goroutine)作为基本的计算单元,轻松的创建协程。使用通道(channel)来实现协程间的同步和通信。内置了映射(map)和切片(slice)类型支持多态(polymorphism)使用接口(interface...

2019-10-23 14:24:47 151

空空如也

空空如也

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

TA关注的人

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