修改用户服务代码前面我们已经安装好了微服务的一些基础设施,现在我们需要开始编写微服务代码,构建容器,启动服务并将其注册到注册中心中。更正引用错误打开micro生成的用户服务代码模板的入口文件main.go,我们发现因为我们修改了go.mod文件所以导致一些引用失效,所以我们需要将这些文件的引用更正修改main.gopackage main import ......
373
0
0
2022-10-09
单体最佳实践的由来对于很多初创公司来说,业务的早期我们更应该关注于业务价值的交付,并且此时用户体量也很小,QPS 也非常低,我们应该使用更简单的技术架构来加速业务价值的交付,此时单体的优势就体现出来了。正如我直播分享时经常提到,我们在使用单体快速交付业务价值的同时,也需要为业务的发展预留可能性,我们可以在单体里面清晰的拆分业务模块。go-zero 社区里也有 ......
398
0
0
2022-10-09
介绍本文主要介绍RPC是什么, 为什么要使用RPC,使用RPC需要解决问题及RPC使用实例RPC是什么RPC(Remote Procedure Call)远程过程调用协议,一种通过网络从远程计算机上请求服务,而不需要了解底层网络技术的协议。RPC它假定某些协议的存在,例如TPC/UDP等,为通信程序之间携带信息数据。在OSI网络七层模型中,RPC跨越了传输层 ......
416
0
0
2022-10-07
GlideIM 是一款真正的完全开源, Golang 实现的高性能分布式 IM 服务, 有完整的安卓 APP 示例, JAVA SDK, Web 端示例, 持续更新迭代中.GlideIM 支持单实例, 分布式部署. 支持 WebSocket, TCP 两种连接协议, 内置 JSON, ProtoBuff 两种消息交换协议, 并支持添加其他协议, 消息加密等. ......
375
0
0
2022-10-06
用Go来实现链表、栈、队列、散列表、树、二叉树、堆、图算法基础概念时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。空间维度:是指执行当前算法需要占用多少内存空间,我们通常用「空间复杂度」来描述。两者(时间和空间复杂度)经常不可兼得数组是几乎主流都有的数据结构就不去实现了,实现第一个链表链表认识链表由一系列结点(每一个元素称为结点)组成 ......
353
0
0
2022-10-05
关于adalancheLadalancheL是一款功能强大的活动目录ACL可视化查看器,可以直接提供实时结果,并显示用户和组在一个活动目录中的权限。该工具可以通过可视化的形式,更好地帮助广大研究人员查看谁可以接管账号、设备或整个域,并识别和显示错误配置信息。众所周知,活动目录的安全问题一直都是一件麻烦事。小型组织通常不知道他们在做什么,而且太多的人只是被添加 ......
466
0
0
2022-10-03
carbon 是一个轻量级、语义化、对开发者友好的golang时间处理库,支持链式调用。目前已被 awesome-go 收录,如果您觉得不错,请给个star吧安装使用Golang 版本小于1.16// 使用 github 库 go get -u github.com/golang-module/carbon import ( "github.co ......
288
0
0
2022-10-02
转载自:benchmark 基准测试1 稳定的测试环境当我们尝试去优化代码的性能时,首先得知道当前的性能怎么样。Go 语言标准库内置的 testing 测试框架提供了基准测试(benchmark)的能力,能让我们很容易地对某一段代码进行性能测试。性能测试受环境的影响很大,为了保证测试的可重复性,在进行性能测试时,尽可能地保持测试环境的稳定。机器处于闲置状态, ......
470
0
0
2022-09-28
一、下载与安装环境依赖Golang:用于下载和安装 Go 编译运行环境,请前往 Golang 官网进行下载。安装SDK执行以下命令COS GO SDKgo get -u github.com/tencentyun/cos-go-sdk-v5 二、开始使用在本文章中我们将为您介绍如何使用COS GO SDK完成一些基本操作,如初始化客户端、创建存储桶、查询存 ......
379
0
0
2022-09-28
环境准备:linux系统(windows可以安装wsl2),go1.17+,vscode(需安装go插件)查看go配置go env修改go env的指定配置,推荐写入在$HOME/.profile永久生效环境变量,没写入.profile的话可以通过以下命令临时修改:go env -w GOPATH=/home/nd/go go env -w GOPROX ......
307
0
0
2022-09-26
修炼背景我夜以继日,加班加点开发了一个最简单的 Go Hello world 应用,虽然只是跑了打印一下就退出了,但是老板也要求我上线这个我能写出的唯一应用。项目结构如下:. ├── go.mod └── hello.go hello.go 代码如下:package main func main() { println("hello w ......
360
0
0
2022-09-21
locust+boomer 压测下载1.5.3镜像docker pull locustio/locust:1.5.3创建容器docker run -d –name locust1.5.3 -p 8089:8089 -p 5557:5557 -v /tmp/locust:/app -w /app b16e447fbd6b -f dummy.py –master ......
514
0
0
2022-09-20
golang的错误捕获 使用panic 和 defer 联合使用可以很棒的捕获错误信息并进行自己想要的处理recover 只能捕获函数本身的错误信息,不能跨函数进行捕获错误信息panic 的错误进行捕获并处理不会导致主函数的终止,否则会导致主函数的错误退出package main import ( "fmt" "os" ......
545
0
0
2022-09-18
在yaml文件中设置配置#链路追踪 Telemetry: Name: travel-rpc Endpoint: http://127.0.0.1:14268//api/traces #因为本地调试所以是采用的这个 # Endpoint: http://jaeger:14268/api/traces Sampler: 1.0 ......
413
0
0
2022-09-15
我们在开发应用的时候,有时会遇到需要使用静态资源文件的情况。对于Go语言来讲,编码,编译,生成一个单一的可执行文件,感觉特别干净清爽。但是有了静态资源文件,还得一同发布相应的文件,也给程序的部署增添了麻烦。既然发布单独一个可执行文件是非常简单的操作,就有人会想办法把静态资源文件打包进 Go 的程序文件中。以太坊的编码者就用这种方式嵌入了2套javascrip ......
546
0
0
2022-09-15