自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 基于 Hertz 和 Kitex 的 Go 微服务项目 | 开源项目推荐

目录介绍Server项目核心部分Shared可复用代码Static前端静态文件这个项目还是花费的不少时间,欢迎大家学习,如果 Star 是对我们最大的鼓励!

2023-01-23 22:06:03 133 2

原创 负载均衡拓展从 0 到 1 —— Hertz 负载均衡实现

在 Hertz 的服务发现中可以进行配置使用负载均衡来实现服务高可用性与流量均衡。

2022-12-22 14:58:05 17

原创 再也不用花时间在找封面上了!—— 基于 Go 实现的文章封面生成器

我相信很多人和我一样,每次写文章的时候都会在封面选择上犯难,不想网上搜索,又不想使用之前已经用过的封面。终于,今天我写了一个文章封面自动生成器来帮助大家解决这个难题。先把项目地址贴出来,欢迎大家 Star、Fork ,有问题也可以直接提 issue。如果大家有什么需要优化的地方请提 issue ,或者愿意参与开发可以直接提 PR。如果喜欢这个项目希望大家能够点个 Star ,这是对我最大的鼓励!

2022-12-22 14:46:12 38

原创 原来防御 CSRF 攻击这么简单? —— Hertz CSRF 中间件实战

Hertz 是一个超大规模的企业级微服务 HTTP 框架,具有高易用性、易扩展、低时延等特点。Hertz 默认使用自研的高性能网络库 Netpoll,在一些特殊场景中,相较于 go net,Hertz 在 QPS、时延上均具有一定优势。

2022-12-04 15:14:50 34

原创 Go HTTP 框架之 Hertz —— 通过 reverseproxy 进行反向代理实战

当然,拓展不只是能够实现简单的反向代理,在 reverseproxy 拓展中提供了许多可以自定义的可选项。方法描述用于指定 protocol.RequestSetClient用于指定转发的客户端用于指定响应修改方法用于指定处理到达后台的错误或来自 modifyResponse 的错误。

2022-11-25 13:13:36 94

原创 如何实现一个优雅的服务发现拓展 | Hertz 源码解读

在上一篇文章中已经解读了 Hertz 中服务注册的实现,在这一篇文章中我们会重点解读 Hertz 的服务发现部分。

2022-11-20 09:06:04 92

原创 解读开源 Go HTTP 框架 Hertz | 服务注册拓展实现

在参与 Hertz 框架的开发迭代过程中,对 Hertz 的主库也越来越熟悉。接下来的几篇文章我将分别解析 Hertz 的服务注册、服务发现和负载均衡拓展,最后会使用适配于 Hertz 的 etcd 拓展进行实战,欢迎大家关注。

2022-11-13 13:56:56 102

原创 使用 gRPC-gateway 代替 HTTP 框架在Go语言中进行开发 | gRPC + gRPC-gateway 开发实践

在给一个微信小程序写接口的时候使用了 gRPC 来开发微服务。若按照我以前的写法,我会在上面用类似 gin 的相关 HTTP 框架再封装一层,但我又想到如果直接使用 gRPC 自带的 gRPC-gateway 效果会不会更好?

2022-11-05 09:27:03 106

原创 从 Netpoll 中寻找 BIO/NIO 编程模型的对比 | Netpoll 源码解读

最近在阅读《Go 组件设计与实现》这本小册,其中让我很感兴趣的一点是为什么在字节开源中间件团队CloudWeGo所开发的网络库 Netpoll 中使用了 NIO 模型,而没有使用 Go 标准库中所使用到的 BIO 编程模型。

2022-11-03 12:04:48 55

原创 Go 语言测试在开发中的最佳实践 | 使用 Docker 容器进行测试

最近看到很多Go语言测试的教程都非常水,只讲了测试最基本的用法,几乎没有涉及到在开发中如何去设计一个很出色的测试。这篇博客将会带领大家一步一步完成一个出色的Go-Test。

2022-08-08 15:45:00 141

原创 解读字节开源 HTTP 框架 Hertz | 核心结构与入口的实现

作为一个接触开源社区快要一年的准大二生,对开源社区进行贡献的同时自己也想要造一个属于自己的框架——goffee,在边学边写的过程中发现了很多自己不足,正巧CSG正在举行解析Hertz源码的活动,就趁着这个机会学习一下企业级的框架内部的实现并给我自己的框架提供一点思路。

2022-08-07 12:00:00 321

原创 使用 Docker 容器部署 MongoDB 并支持远程访问(超多坑)

由于使用宝塔面板来配置MongoDB的BUG太多,实在受不了,今天心血来潮想要使用Docker容器来进行部署。本来以为也就二三十分钟的事情结果踩坑踩了将近两个小时,不过万幸还是成功部署上。

2022-08-06 17:05:37 1039

原创 Go 语言爬虫最佳实践 | 通过正则表达式实现爬虫

可能很多人都觉得爬虫是Python的专属技能,但其实使用Go语言可能会实现更加好的效果在开始实现爬虫之前我们必须明白一件事,那就是爬虫是什么。

2022-07-10 18:45:13 198

原创 Go 语言实现 GitHub 第三方登录(基于 Gin 框架实现)

在我们制作网站或者制作APP的时候,经常就会想到去实现一个第三方登录,因为GitHub的相关接口已经非常完善,所以这次用GitHub进行演示说到第三方登录,那不得不谈的就是OAuth2.0。OAuth2.0是OAuth协议的延续版本,但不向前兼容OAuth 1.0(即完全废止了OAuth1.0)。

2022-06-30 18:31:29 567

原创 gRPC 在 Go 语言中的安装与简单实践

大家都知道现在流行微服务嘛,而分布式是微服务中不可或缺的一环,GRPC一个非常出色的RPC框架,所以借此机会来记录一下gRPC在Go语言中的安装使用以及运用。

2022-06-01 09:19:30 214

原创 使用 WSL 环境在 Goland 中开发 Go 项目

在了解字节的开源RPC框架Kitex的过程中一直使用的云服务器进行运行,但碍于服务器性能不足和JB Getaway功能还并不完善,所以想到使用WSL进行开发而使用WSL开发的优势并不止这些,例如Redis在WSL中可以使用最新版本,增加很多功能,还有其他的优势等待你的探索。

2022-05-29 09:58:17 1047

原创 Git 基础入门与最佳实践

Git相信大家都有所了解,在听完字节青训营老师的课程之后对Git又有了进一步的理解,遂在此记录,但若只是记录进阶内容我觉得欠妥,所以这里会将Git从入门开始

2022-05-21 20:25:49 134

原创 GORM 快速入门最佳实践(含有样例数据库)

在听完JINZHU老师对GORM的讲解后,我对于GORM的理解更深一层,有回忆到学习GORM时网络上基本没有带样例数据库的教程,所以在今天带着样例数据库写一篇GORM的简单入门教程(基础使用)我所展示的实现效果与代码可能会有一定出入,这是因为我展示中的数据库模型更加完善但不适合教程使用,但是不妨碍学习。

2022-05-18 21:19:01 3650 1

原创 使用 Go 语言实现单词翻译功能 | simpledict 命令行词典

如果我们想实现一个命令行词典,自己手写接口肯定非常困难,于是我们想到使用浏览器中的开发者工具进行抓包。拿到接口后再在 IDE 中进行实现。

2022-05-07 17:24:41 686 7

空空如也

空空如也

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

TA关注的人

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