五分钟给你的 gRPC 服务加上 HTTP 接口

gRPC 服务要加 HTTP 接口? go-zero 给大家带来极简的 RESTful 和 gRPC 服务开发体验的同时,社区又给我们提出了新的期望: 我想只写一次代码 既要 gRPC 接口 也要 HTTP 接口

标签: go go-zero
发表于:2022-7-20 / 阅读(464) / 评论(0) 分类 Go语言
这是一篇测试cherry-markdown的文章

Cherry Markdown Editor 介绍 Cherry Markdown Editor 是一款 Javascript Markdown 编辑器,具有开箱即用、轻量简洁、易于扩展等特点. 它可以运行在浏览器或服务端(NodeJs). 开箱即用 开发者可以使用非常简单的方式调用并实例化Cher...

标签: 前端
发表于:2022-7-18 / 阅读(694) / 评论(0) 分类 前端开发
Leaf—Segment分布式ID生成系统(Golang实现版本)

简介:今天直接开门见山,先来介绍一下我今天所带来的东西。没错,看标题想必大家已经想到了 —— Leaf-segment数据库获取 ID 方案。这个方案已经喜闻乐见了,美团早就进行了开源,不过他是由 java 来实现的,所以最近为了学习这一方面知识,我用 go 自己实现了一下,目前自己验证是没有发现...

发表于:2022-7-9 / 阅读(760) / 评论(0) 分类 Go语言
React组件的State

组件 state 必须能代表一个组件UI呈现的完整状态集,即组件的任何UI改变都可以从 state 的变化中反映出来;同时, state 还必须代表一个组件UI呈现的最小状态集,即 state 中的所有状态都用于反映组件UI的变化,没有任何多余的状态,也不应该存在通过其他状态计算而来的中间状态。 ...

发表于:2022-6-30 / 阅读(634) / 评论(0) 分类 WEB相关
golang 复制对象的正确做法

golang 复制对象的正确做法 需求   实际运用中,传参是一对象指针,现在如何最简便地复制一对象? 实现   坑:&* 先拿到值再指针?

发表于:2022-6-29 / 阅读(426) / 评论(0) 分类 Go语言
基于DDD的golang实践案例

Check the github repo for the updated code: https://github.com/victorsteven/food-app-server 领域驱动设计模式算是比较热门的话题了。 领域驱动设计(DDD)是一种软件开发方法,通过将实现与不断演变的模型相连接...

发表于:2022-5-31 / 阅读(1212) / 评论(0) 分类 Go语言
golang搜索引擎

https://github.com/newpanjing/gofound https://github.com/zinclabs/zinc https://github.com/blevesearch/bleve

发表于:2022-5-8 / 阅读(693) / 评论(0) 分类 Go语言
go语言string、int、int64互相转换

string到int int,err:=strconv.Atoi(string) string到int64 int64, err := strconv.ParseInt(string, 10, 64) int到string string:=strconv.Itoa(int) int64到string...

发表于:2022-4-1 / 阅读(835) / 评论(0) 分类 Go语言
golang-使用 go test 输出单元测试覆盖率

一、背景 单元测试覆盖率是衡量代码质量的一个重要指标,重要的代码文件覆盖率应该至少达到80%以上。Java 可以通过JaCoCo 统计覆盖率,那么go 项目如何进行代码覆盖率测试呢? 二、统计方式 1、生成覆盖率报告(go test 指令) 我们知道直接执行测试代码的指令: go test 指定文件...

发表于:2022-3-29 / 阅读(922) / 评论(0) 分类 Go语言
统计 Golang 项目的测试覆盖率

我们的项目主要基于 Golang 开发,公司要求统计测试覆盖率。所以,我们摸索了一下在 Golang 下如何统计整个项目得测试覆盖率

发表于:2022-3-29 / 阅读(863) / 评论(0) 分类 Go语言
golang goquery selector(选择器) 使用

最近研究Go爬虫相关的知识,使用到goquery这个库比较多,尤其是对爬取到的HTML进行选择和查找匹配的内容时,goquery的选择器使用尤其多,而且还有很多不常用但又很有用的选择器,这里总结下,以供参考。 如果大家以前做过前端开发,对jquery不会陌生,goquery类似jquery,它是jq...

标签: goquery
发表于:2021-12-9 / 阅读(1427) / 评论(0) 分类 Go语言
golang中设置Host Header的小Tips

最近在使用go的http包的时候遇到的问题: client := &http.Client{} req, _ := http.NewRequest("GET", url, nil) //这样设置无效 res.Header.Set("Host", "xxx.xxx") res, e...

发表于:2021-11-24 / 阅读(653) / 评论(0) 分类 Go语言
Linux抓包工具Tcpdump使用示例教程

tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有。熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将通过一个个具体的示例来介绍它在不同场景下的使用方法。不管你是系统管理员,程序员,云原生工程师还...

标签: 抓包
发表于:2021-11-24 / 阅读(1211) / 评论(0) 分类 Linux命令
腾讯云挂载初始化云硬盘

操作场景 本文档介绍如何初始化已挂载至云服务器的空云硬盘,在云硬盘上创建文件系统并向其中写入一个名为 qcloud.txt 的文件。 说明 关于初始化云硬盘的更多信息,请参考 初始化场景介绍。

发表于:2021-11-24 / 阅读(668) / 评论(0) 分类 Linux命令
如何在 CentOS 上修改主机名

通常主机名在操作系统安装过程中设置或者在创建虚拟机的过程中动态指定的。 有很多原因,你需要去改变主机名。最常见的原因就是,当自动创建实例的时候,需要自动设置主机名。 这篇指南解释了如何在 CentOS 8 上修改主机名,而不需要重启系统。 想要修改 CentOS 系统的主机名,使用 hostname...

标签: hostname
发表于:2021-11-22 / 阅读(770) / 评论(0) 分类 Linux命令
漫谈非加密哈希算法(MurMurHash,CRC32,FNV,SipHash,xxHash)

HASH算法介绍 Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从...

标签: 算法
发表于:2021-11-22 / 阅读(4375) / 评论(0) 分类 经典算法
Go 每日一库之 goquery

简介 goquery是用 Go 语言编写的一个类似于 jQuery 的库。它基于 HTML 解析库net/html和 CSS 库cascadia,提供与 jQuery 相近的接口。Go 著名的爬虫框架colly就是基于 goquery 的。 快速使用 本文代码使用 Go Modules。

标签: goquery
发表于:2021-11-19 / 阅读(674) / 评论(0) 分类 Go语言
python程序在命令行执行提示ModuleNotFoundError: No module named 'XXX' 解决方法

今天遇到一个问题,在Python中,引入其他人写的模块,这个模块是内网的一个模块,不能发布到外网,就产生从本地引入模块的问题,折腾很急才解决问题。 还是引入的路径问题。 首先 git clone 下来要引入的模块。 在引入的模块中写自己的逻辑:

标签: Python
发表于:2021-11-17 / 阅读(712) / 评论(0) 分类 编程
Golang 短网址服务核心代码

Golang 短网址服务核心代码 在一些应用的分享文案中,经常需要包含一个打开实际页面的链接,而这个链接可能会非常的长(因为可能会有很多很多参数。。)这样的分享文案不仅不够美观,而且在一些平台会受到限制,比如weibo的140字。这时候我们就需要采用一个短链接服务了。 短链服务实际上是对长链接的一个...

标签: 短网址
发表于:2021-11-16 / 阅读(1088) / 评论(0) 分类 Go语言
使用Golang的官方mock工具--gomock、mockgen

在Golang的官方Repo(https://github.com/golang/)中有一个单独的工程叫"mock"(https://github.com/golang/mock),虽然star不是特别多,但它却是Golang官方放出来的mock工具,充这这点我们也需要使用下,虽...

标签: gomock mockgen
发表于:2021-11-15 / 阅读(5533) / 评论(0) 分类 Go语言
golang中validator参数校验器自定义规则及提示

在golang中自定义错误信息的展示

标签: validator
发表于:2021-11-12 / 阅读(707) / 评论(0) 分类 Go语言
Golang中validator库参数校验若干实用技巧

本文介绍了使用validator库做参数校验的一些十分实用的使用技巧,包括翻译校验错误提示信息、自定义提示信息的字段名称、自定义校验方法等。 validator库参数校验若干实用技巧 在web开发中一个不可避免的环节就是对请求参数进行校验,通常我们会在代码中定义与请求参数相对应的模型(结构体),借助...

标签: validator
发表于:2021-11-12 / 阅读(579) / 评论(0) 分类 Go语言
使用go-playground/validator实现请求参数验证并输出中文错误信息

实现目标 go-playground/validator 原始的参数验证错误信息为英文字符串,很不友好。 在网上找到了这篇文章,解决了大部分问题。但是返回的错误信息没有分字段,且没有真实字段名,对前端来说不友好。 最后自己动手稍作改造,先看看最后实现的结果:

标签: validator
发表于:2021-11-12 / 阅读(940) / 评论(0) 分类 Go语言
Golang urlencode与urldecode编码解码

为什么需要编码和解码 1.是因为当字符串数据以url的形式传递给web服务器时,字符串中是不允许出现空格和特殊字符的; 2.因为 url 对字符有限制,比如把一个邮箱放入 url,就需要使用 urlencode 函数,因为 url 中不能包含 @ 字符; 3.url转义其实也只是为了符合url的规范...

发表于:2021-11-8 / 阅读(1738) / 评论(0) 分类 Go语言
Google:12 条 Golang 最佳实践

这是直接总结好的 12 条,详细的再继续往下看: 先处理错误避免嵌套 尽量避免重复 先写最重要的代码 给代码写文档注释 命名尽可能简洁 使用多文件包 使用 go get 可获取你的包 了解自己的需求 保持包的独立性 避免在内部使用并发 使用 Goroutine 管理状态 避免 Goroutin...

标签: golang
发表于:2021-11-4 / 阅读(576) / 评论(0) 分类 Go语言
GO爬虫必备之HTTP请求

本文以 Python 的 requests 文档为指导方向,整理了 requests 快速入门文档中的案例在 GO 的是如何实现的。要说明的是, GO 其实也提供了对应于 requests 的克隆版本,github如下: https://github.com/levigross/grequests​...

标签: 爬虫
发表于:2021-10-20 / 阅读(609) / 评论(0) 分类 Go语言
VIM CHEATSHEET (中文速查表)

VIM CHEATSHEET (中文速查表),记录vim快捷键

标签: vim
发表于:2021-10-15 / 阅读(465) / 评论(0) 分类 开发工具
面试之后了解面试公司的问题

工作是怎么组织的? 团队内 / 团队间的交流通常是怎样的? 你们使用什么工具来做项目组织?你的实际体会是什么? 如果遇到不同的意见怎样处理? 谁来设定优先级 / 计划? 如果团队没能赶上预期发布日期怎么办? 每周都会开什么类型的会议? 会有定期的和上级的一对一谈话吗? 产品 服务的规划是什么样的?...

标签: 面试
发表于:2021-9-29 / 阅读(531) / 评论(0) 分类 心情杂记
golang 获取重定向信息

golang 获取重定向信息 原因 爬虫获取百度查询结果的时候,为了获取网页真实地址,而百度跳转页面的其中一种方式就是302重定向(redirect),那么针对这种方式,go语言默认自动执行redirect的,所以没办法使用get请求获取真实地址 对于第一条描述的,在302重定向的时候,真实地址在...

标签: redirect
发表于:2021-9-28 / 阅读(525) / 评论(0) 分类 Go语言
最强 Linux 命令总结

今天,带来一篇 Linux 命令总结的非常全的文章,也是我们平时工作中使用率非常高的操作命令,命令有点多,建议小伙伴们可以先收藏后阅读。` 1. 基本命令 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件...

标签: 命令
发表于:2021-9-27 / 阅读(497) / 评论(0) 分类 Linux命令