GO
文章平均质量分 61
zhang-jianqiang
这个作者很懒,什么都没留下…
展开
-
go-micro系列(番外二)go module使用私库
由于众所周知的原因,在大陆地区我们无法直接通过go get命令或git clone获取到一些第三方包,这其中最常见的就是golang.org/x下面的各种优秀的包。在Go 1.13以上的版本中,我们可以通过GOPROXY来控制代理,以及通过GOPRIVATE控制私有库不走代理。设置GOPROXY代理:// 代理方式一:七牛云代理(推荐)go env -w GOPROXY=https://goproxy.cn,direct// 代理方式二:GOPROXY.IO(自我感觉没有七牛的稳定)go原创 2022-04-05 00:02:16 · 477 阅读 · 0 评论 -
go-mciro系列(五)使用nacos作为注册中心
编写注册中心代码config/register.gopackage configimport ( "github.com/micro/go-micro/v2/registry" "github.com/micro/go-plugins/registry/nacos/v2")func NewRegistry() registry.Registry { r := nacos.NewRegistry(func(options *registry.Options) { // nacos注册中原创 2022-01-09 20:11:56 · 876 阅读 · 1 评论 -
go-mciro系列(四)使用nacos作为配置中心
go语言中常用的配置中心有etcd,nacos,consul等,这里以nacos作为配置和注册中心,本节先讲nacos作为配置中心。安装nacos使用nacos作为配置中心首先必须启动一个nacos服务,这里直接用docker启动一个nacos服务docker pull nacos/nacos-serverdocker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server此时访问localhost:88原创 2022-01-09 00:14:34 · 1664 阅读 · 0 评论 -
go-mciro系列(三)使用micro创建服务模板
第二篇文章通过手写一个micro微服务初步体验了一下micro微服务的基本流程,从本章开始我们使用micro工具生成服务模板,不用每次都手写重复的代码了。micro工具想使用micro我们先要安装micro,在go-mciro系列(一)中安装micro 介绍了micro的安装,这里再简单列举一下docker安装micro官方dockerdocker pull micro/micro:v2.9.3我修改后的docker,本系列文章后面用到的项目模板都在这个docker的基础上进行修改并发布新的版原创 2022-01-08 00:03:28 · 782 阅读 · 0 评论 -
go-micro系列(番外一)docker封装自己的micro工具
这里假设我们已经根据自己的需求修改好了micro源码,并打包成linux环境下的二进制文件micro创建Dockerfile文件目录结构如下:dockertest micro DockerfileDockerfile内容如下:FROM alpineADD micro /microENTRYPOINT [ "/micro" ]构建docker镜像以下命令在Dockerfile所在的文件夹内执行docker build -t gift0526/gift-micro:v0.原创 2022-01-04 15:03:26 · 819 阅读 · 0 评论 -
go-mciro系列(二) 手写第一个微服务
本文先手写一个proto文件,初步感受一下micro微服务。创建目录创建项目目录microdemo,目录结构如下:microdemo proto user.protomain.goclient.gogo mod初始化目录go mod init microdemo编写user.protoproto3基础语法不做单独介绍,不清楚的话自己行百度一下。下面以一个简单user服务提供一个注册方法为例syntax = "proto3";option go_packag原创 2021-12-25 21:52:25 · 607 阅读 · 2 评论 -
go-mciro系列(一) micro工具安装
go-mciro系列(一) micro工具安装go-micro版本较多,而且每个版本都不兼容,因此使用go-micro选择哪个版本是一件很头疼的事。目前用的最多还是go-micro v2版本,因此本系列文章都是基本go-micro v2版本从零开始构建go-micro微服务。go-micro v2可以在go1.17版本下运行,但是micro v2的工具只能在go1.13或go1.14版本运行,因此本文有一些micro工具是基于docker构建的。go-micro v2文档:https://learn原创 2021-12-24 00:14:16 · 1556 阅读 · 3 评论 -
GO语言打包ICO图标
1、下载rsrc文档https://github.com/akavel/rsrc安装命令go install github.com/akavel/rsrc@latest2、创建清单文件main.manifest在main.go的同级目录下创建main.manifest,没有特殊情况直接复制下面的内容,如果有修改需求,可以单独了解一下清单文件的相关知识然后修改。文件内容:<?xml version="1.0" encoding="UTF-8" standalone="yes原创 2021-12-23 21:10:37 · 1204 阅读 · 0 评论 -
Golang:函数命名返回值
可以给一个函数的返回值指定名字。如果指定了一个返回值的名字,则可以视为在该函数的第一行中定义了该名字的变量。让我们写一个函数 rectProps,它接受一个矩形的长和宽,并返回该矩形的面积和周长。package mainimport ( "fmt")func rectProps(length, width float64) (area, perimeter float64) ...转载 2020-01-15 11:12:19 · 1338 阅读 · 0 评论 -
Go语言的类型系统
Go语言允许用户定义类型。当用户声明一个类型时,这个声明就给编译器提供了一个框架,告知必要的内存大小和信息。声明结构类型type user struct { name string email string}上述代码声明的结构类型有2个字段,每个字段都基于一个内置类型。一旦声明了类型,就可以使用这个类型创建值。使用结构类型声明变量var zuckjet user...转载 2019-09-18 10:00:28 · 106 阅读 · 0 评论 -
Golang的Tag语法
我们可以通过Tag来增强结构体的定义,Tag会带上一些meta信息,在本文中我们将通过几个例子来深入了解Tag的用法。结构Struct是由一组field组成,每个field包括了名字(可选)和字段类型package mainimport "fmt"type T1 struct { f1 string}type T2 struct { T1 f2 int...转载 2019-08-29 11:00:31 · 429 阅读 · 0 评论 -
Go语言入门教程
1.概述Go 是一个开源的编程语言,它能让构造简单、可靠且开发高效的软件变得容易。Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。2...转载 2019-08-28 11:38:18 · 2012 阅读 · 0 评论 -
使用gocron实现系统定时任务管理
由于我对go语目前了解不多,所以这里以安装包为例,进行一些简单的运行与配置。以后对go有了更深的了解后,会对源码开发做更多的介绍。1.安装Go使用go程序必须先有go,因此这里以最简单的方式进行安装介绍。1.1 windows安装下载链接https://studygolang.com/dl/golang/go1.12.5.windows-amd64.msi安装直接下一步下一步,直到完...原创 2019-06-04 13:51:05 · 3613 阅读 · 1 评论