1、导语目前Go语言已经为大多数人所熟知,越来越多的开发人员选择使用Go语言来进行开发,但是如何使用Go来进行web开发,在其他编程语言中都有对应的开发框架,当然在Go中也有,就是即将要介绍的——iris,它号称为速度最快的Go后端开发框架。在iris的网站文档上,列出该框架具备的一些特点和框架特性,列举如下:1)聚焦高性能 2)健壮的静态路由支持和通配符子域名支持 3)视图系统支持超过5以上模板
转载 2023-12-01 10:16:11
62阅读
1.安装相关包 设置代理set GOPROXY=https://goproxy.cn 安装 golang 的proto工具包go get -u github.com/golang/protobuf/proto安装 goalng 的proto编译支持go get -u github.com/golan ...
转载 2021-07-27 16:45:00
365阅读
2评论
两个进程执行两个goroutine 输出 一个进程执行两个goroutine 输出
转载 2019-01-27 21:03:00
231阅读
2评论
文章篇幅较长,可以先收藏防止迷路~目录zap日志库1. why zap?2. 简单使用3. 自定义logger例子4. Gin项目使用zap6. lumberjack 日志切割组件zap日志库在许多Go语言项目中,我们需要一个好的日志记录器能够提供下面这些功能:能够将事件记录到文件中,而不是应用程序控制台;日志切割-能够根据文件大小、时间或间隔等来切割日志文件;支持不同的日志级别。例如INFO,D
准备工作: 1. 安装protobuf 编译环境 https://github.com/protocolbuffers/protobuf/releases 2. 安装go语言的protobuf代码转换工具protoc-gen-go go get -u github.com/golang/protob ...
转载 2021-11-03 17:19:00
647阅读
2评论
参考文章: 1. https://www.cnblogs.com/kaixinyufeng/p/9651513.html 2. http://jia-shun.cn/2018/08/12/gRPC/ 文章1应该是参考的文章2. 文章1在2的基础上增加了如何安装protobuf软件.一起整理出来 这篇
原创 2021-06-04 14:20:38
308阅读
Golang包管理工具glide简介 前言 Golang是一个十分有趣,简洁而有力的开发语言,用来开发并发/并行程序是一件很愉快的事情。在这里我感受到了其中一些好处:没有少了许多代码格式风格的争论,强制统一的风格多好;编译速度超快,再也不用等待许久,才能编译完工程(测试驱动开发自然更爽);也不会出现同一个项目组中的人,在使用同一个语言的不同子集。但这种情况不论是在C#还是在Java的世界里,都还
以下源码都摘自 golang 1.16.15 版本。1. channel 底层结构Golang 中的 channel 对应的底层结构为 hchan 结构体(channel的源码位置在Golang包的 runtime/chan.go):type hchan struct { qcount uint // buf当前元素的数量 dataqsiz uint
以下 star数截止2023年1月份1.Gin(65.4K) 项目简介:Gin 是一个用 Go (Golang) 编写的 HTTP Web 框架。 它具有类似 Martini 的 API,但性能比 Martini 快 40 倍。仓库地址: https://github.com/gin-gonic/gin https://github.com/gin-gonic/gin官方文档地址: 文档 | Gi
thrift 的原理和使用 Thrift 架构 Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目。Thrift通过IDL(Interface Definition Language,接口定义语言)来定义RPC(Remote Procedure Call,远程过程调用)的接口和数据类型,然后通过thrif
转载 2024-07-10 05:19:21
73阅读
相信很多学go的小伙伴,不清楚go mod的具体用法,这里专门写篇文章备忘。 go mod是在1.11版本以后出现的,所以在1.11版本之前,我们必须将项目建立在 $GOPATH/src 目录下go mod的具体语法 1.module:指明根目录 2.go 后面跟版本号是指定go的版本 3.require是个动作指令,对依赖包起作用,比如require(依赖),还有exclude(排除),repl
协程进程, 线程, 协程概念进程:概念: 资源分配的基本单位通信: 进程之间的通信只能通过进程通信的方式进行多进程: 拷贝,使用fork(),生成子进程。每个进程拥有独立的地址空间(代码段、堆栈段、数据段)线程:概念: 调度运行的最小单位通信: 同一进程中的线程共享数据(比如全局变量,静态变量)多线程: 同一个进程中的线程,它们之间共享大部分数据,使用相同的地址空间。当然线程是拥有自己的局部变量和
转载 2024-07-24 21:58:21
27阅读
首先加入引用go get github.com/Shopify/sarama@latest 消费者,Sarama客户提供了AsyncProducer和SyncProdcer两种类型的生产者,这里以SyncProducer为例package main import ( "fmt" "github.com/Shopify/sarama" ) func main() { config := s
原创 2024-05-15 09:16:11
81阅读
线上介绍了 go 命令的最新 weekly 发布后,我决定写一些关于它的内容。我得承认,在第一次听说统一 go 工具的时候,我满是怀疑并对此非常恐惧。我担心它会像大多数其他语言特定的包管理器一样混乱。个人认为多数这种包管理器都是在重新发明轮子,并且与操作系统的包管理器发生冲突,让系统管理员生活的更加艰辛。另外,我确实喜欢 makefile,它们简单并且直接,工作得也很好。幸运的是,新的 go 工具
Go类型断言demo go package main import ( "bytes" "encoding/json" "fmt" "io" "net/http" "time" "github.com/unknwon/com" ) //空接口 func test1() { a := make(map
原创 2021-08-07 12:21:12
415阅读
Go是Google开发的一种静态、强类型、编译型、并发型,并具有垃圾回收功能的类C编程语言。2009以开源项目的形式发布,2012年发布1.0稳定版本,距今已经十年了,其性能类似于Java和C++,但速度极快,适合搭载于web服务器,用于高性能分布式系统开发。作为热门的编程语言之一,Go语言吸引了很多关注。根据TIOBE编程排行榜,2016年,Go语言成为年度最受欢迎的编程语言;2019年,Go
结合其他博主的一些文章,本文介绍了使用IntelliJ IDEA 14创建基于Maven3的Java Web Project 的步骤。同时也介绍了可能出现的错误以及解决方案。环境介绍:系统:OS X Yosemite (10.10.5)IDE :IntelliJ IDEA 14.1.4Java :Oracle Java 1.8.0_51Maven:3.3.3创建步骤:创建项目:Create New
 软件下载https://golang.google.cn/https://dl.google.com/go/go1.19.3.linux-amd64.tar.gz环境变量设置export GOWKS=/data/wks/tpfexport GOROOT=$GOWKS/app/goexport GOBIN=$GOWKS/binexport GOPATH=$GOWKSexport PATH
转载 2024-04-23 22:16:39
48阅读
上文中实现了在本地导入百度地图导航Demo,那么在此基础上如何实现导航的语音播报呢?一、为该应用申请语音播报(也叫注册)http://developer.baidu.com/map/index.php?title=android-navsdk/guide/voiceSDK内置百度TTS语音播报功能,需要对应用进行授权验证才能够使用,因此需要主动注册应用相关信息。第一步:如果不是LBS开放平台的注册
# Java中Go方法的简单示例 在Java编程中,方法(Method)是一个重要的概念,提供了一种封装代码的机制,使得代码可重用。在这篇文章中,我们将讨论Java中的方法以及如何使用它们。此外,我们还会用到一些可视化工具,如甘特图和饼状图,来帮助我们更好地理解一些相关概念。 ## 方法的基本概念 在Java中,方法是一个具有特定名称的代码块,可以通过调用名称来执行。这些方法可以接受参数并返
原创 2024-10-03 06:52:12
17阅读
  • 1
  • 2
  • 3
  • 4
  • 5