junedayday_社区达人页
产品
解决方案
文档与社区
权益中心
定价
云市场
合作伙伴
支持与服务
了解阿里云
AI 助理
备案
控制台
开发者社区
首页
探索云世界
探索云世界
云上快速入门,热门云上应用快速查找
了解更多
问产品
动手实践
官方博客
考认证
TIANCHI大赛
活动广场
活动广场
丰富的线上&线下活动,深入探索云世界
任务中心
做任务,得社区积分和周边
高校计划
让每位学生受益于普惠算力
训练营
资深技术专家手把手带教
话题
畅聊无限,分享你的技术见解
开发者评测
最真实的开发者用云体验
乘风者计划
让创作激发创新
阿里云MVP
遇见技术追梦人
直播
技术交流,直击现场
下载
下载
海量开发者使用工具、手册,免费下载
镜像站
极速、全面、稳定、安全的开源镜像
技术资料
开发手册、白皮书、案例集等实战精华
插件
为开发者定制的Chrome浏览器插件
探索云世界
新手上云
云上应用构建
云上数据管理
云上探索人工智能
云计算
弹性计算
无影
存储
网络
倚天
云原生
容器
serverless
中间件
微服务
可观测
消息队列
数据库
关系型数据库
NoSQL数据库
数据仓库
数据管理工具
PolarDB开源
向量数据库
热门
百炼大模型
Modelscope模型即服务
弹性计算
云原生
数据库
云效DevOps
龙蜥操作系统
平头哥
钉钉开放平台
物联网
大数据
大数据计算
实时数仓Hologres
实时计算Flink
E-MapReduce
DataWorks
Elasticsearch
机器学习平台PAI
智能搜索推荐
数据可视化DataV
人工智能
机器学习平台PAI
视觉智能开放平台
智能语音交互
自然语言处理
多模态模型
pythonsdk
通用模型
开发与运维
云效DevOps
钉钉宜搭
支持服务
镜像站
码上公益
junedayday
已加入开发者社区
1917
天
勋章
更多
专家博主
专家博主
星级博主
星级博主
技术博主
技术博主
江湖新秀
江湖新秀
成就
已发布61篇文章
0条评论
已回答0个问题
0条评论
已发布0个视频
github地址
我关注的人
更多
粉丝
更多
琰kdha
琰kdha
浮城~
浮城~
游客5ypymgaou64d2
游客5ypymgaou64d2
哦吼der
哦吼der
河北稳控科技
河北稳控科技
1983133556302731
1983133556302731
eii
eii
xkjd3kau2lbyi
xkjd3kau2lbyi
x2v2qav4nao5m
x2v2qav4nao5m
martin_xiao
martin_xiao
nvrcrxouoig6s
nvrcrxouoig6s
游客qkqmv3q4xnwau
游客qkqmv3q4xnwau
技术能力
兴趣领域
前端开发
容器
Linux
数据库
擅长领域
技术认证
Apsara Clouder云计算专项技能认证:云服务器ECS入门
获得于2023-02-01 20:17:22
暂无个人介绍
精选
高分内容
最新动态
文章
问答
视频
暂无精选文章
暂无更多信息
2023年10月
10.30
13:15:16
发表了文章
2023-10-30 13:15:16
技术阅读摘要 - 2.OpenTelemetry技术概览
本系列的第二讲,我原先计划聊一下OpenTracing这个技术,但计划赶不上变化,我发现OpenTracing的官网上已经声明:这部分的技术将迁移到OpenTelemetry。
10.30
13:13:18
发表了文章
2023-10-30 13:13:18
技术阅读摘要 - 1.十二要素应用原则
十二要素应用原则(The Twelve-Factor App) 在如今的微服务领域非常流行,相信大家或多或少有所耳闻,但了解其中细节的并不多。 今天,我将对这12个原则做一个概要分析,结合Go语言中的相关例子,根据开源与大厂的具体实践,和大家一起看看个中究竟。
10.30
13:12:23
发表了文章
2023-10-30 13:12:23
【K8s源码品读】013:Phase 1 - kubelet - 节点上控制容器生命周期的管理者
理解 kubelet 的运行机制
10.30
13:11:54
发表了文章
2023-10-30 13:11:54
【K8s源码品读】012:Phase 1 - kube-controller-manager - 了解控制管理中心
理解 kube-controller-manager 的运行机制
10.30
13:11:29
发表了文章
2023-10-30 13:11:29
【K8s源码品读】011:Phase 1 - kube-scheduler - 了解分配pod的大致流程
理解一个pod的被调度的大致流程
10.30
13:10:47
发表了文章
2023-10-30 13:10:47
【K8s源码品读】010:Phase 1 - kube-scheduler - Informer是如何保存数据的
了解Informer在发现资源变化后,是怎么处理的
10.30
13:10:13
发表了文章
2023-10-30 13:10:13
【K8s源码品读】009:Phase 1 - kube-scheduler - Informer监听资源变化
了解Informer是如何从kube-apiserver监听资源变化的情况
10.30
13:09:45
发表了文章
2023-10-30 13:09:45
【K8s源码品读】008:Phase 1 - kube-scheduler - 初探调度的启动流程与算法
理解kube-scheduler启动的流程
10.30
13:08:54
发表了文章
2023-10-30 13:08:54
【K8s源码品读】007:Phase 1 - kube-apiserver - Pod数据的保存
理解Pod发送到kube-apiserver后是怎么保存的
10.30
13:08:29
发表了文章
2023-10-30 13:08:29
【K8s源码品读】006:Phase 1 - kube-apiserver - GenericAPIServer的初始化
理解kube-apiserver是中的管理核心资源的KubeAPIServer是怎么启动的
10.30
13:07:59
发表了文章
2023-10-30 13:07:59
【K8s源码品读】005:Phase 1 - kube-apiserver 权限相关的三个核心概念
理解启动kube-apiserver的权限相关的三个核心概念 Authentication/Authorization/Admission
10.30
13:07:28
发表了文章
2023-10-30 13:07:28
【K8s源码品读】004:Phase 1 - kubectl - 发送创建Pod请求的实现细节
理解kubectl是怎么向kube-apiserver发送请求的
10.30
13:07:02
发表了文章
2023-10-30 13:07:02
【K8s源码品读】003:Phase 1 - kubectl - 设计模式中Visitor的实现
理解kubectl的核心实现之一:Visitor Design Pattern 访问者模式
10.30
13:06:26
发表了文章
2023-10-30 13:06:26
【K8s源码品读】002:Phase 1 - kubectl - create的调用逻辑
我们的目标是查看`kubectl create -f nginx_pod.yaml` 这个命令是怎么运行的。
10.30
13:05:40
发表了文章
2023-10-30 13:05:40
【K8s源码品读】001:Phase 1 - 掌握k8s创建pod的基本流程
部署Kubernetes集群的方法(建议用kubeadm),详细可参考我的博客,或者可直接参考[官方文档]
10.30
13:03:34
发表了文章
2023-10-30 13:03:34
gRPC源码分析(四):剖析Proto序列化
首先,针对读源码是先看源代码还是测试代码,因人而异。个人建议在对源码毫无头绪时,先从测试入手,了解大致功能;如果有一定基础,那么也可以直接入手源代码。我认为优秀的Go源码可读性是非常高的,所以一般情况下,我都直接从源文件入手,遇到问题才会去对应的测试里阅读。
10.30
13:03:07
发表了文章
2023-10-30 13:03:07
gRPC源码分析(三):从Github文档了解gRPC的项目细节
从这里可以看出,gRPC虽然是支持多语言,但原生的实现并不多。如果想在一些小众语言里引入gRPC,还是有很大风险的,有兴趣的可以搜索下TiDB在探索rust的gRPC的经验分享。
10.30
13:02:33
发表了文章
2023-10-30 13:02:33
gRPC源码分析(二):从官网文档看gRPC的特性
在第一部分,我们学习了gRPC的基本调用过程,这样我们对全局层面有了一定了解。接下来,我们将结合官方文档,继续深入学习、探索下去。
10.30
13:02:04
发表了文章
2023-10-30 13:02:04
gRPC源码分析(一):gRPC的系统调用过程
- 分析PB生成的对应文件 - 运行server - 运行client
10.30
13:00:15
发表了文章
2023-10-30 13:00:15
Go编程模式 - 8-装饰、管道和访问者模式
装饰、管道和访问者模式的使用频率不高,但在特定场景下会显得很酷
10.30
12:59:02
发表了文章
2023-10-30 12:59:02
Go编程模式 - 7-代码生成
良好的命名能体现出其价值。尤其是在错误码的处理上,无需再去查询错误码对应的错误内容,直接可以通过命名了解。
10.30
12:58:10
发表了文章
2023-10-30 12:58:10
Go编程模式 - 6-映射、归约与过滤
但是,我不建议大家在实际项目中直接使用这一块代码,毕竟其中大量的反射操作是比较耗时的,尤其是在延迟非常敏感的web服务器中。 如果我们多花点时间、直接编写指定类型的代码,那么就能在编译期发现错误,运行时也可以跳过反射的耗时。
10.30
12:57:31
发表了文章
2023-10-30 12:57:31
Go编程模式 - 5.函数式选项
编程的一大重点,就是要 `分离变化点和不变点`。这里,我们可以将必填项认为是不变点,而非必填则是变化点。
10.30
12:56:26
发表了文章
2023-10-30 12:56:26
Go编程模式 - 4.错误处理
如何Wrap Error,在多人协同开发、多模块开发过程中,很难统一。而一旦不统一,容易出现示例中的过度Unwrap的情况。
10.30
12:55:39
发表了文章
2023-10-30 12:55:39
Go编程模式 - 3.继承与嵌入
业务逻辑依赖控制逻辑,才能保证在复杂业务逻辑变化场景下,代码更健壮!
10.30
12:54:57
发表了文章
2023-10-30 12:54:57
Go编程模式 - 2.基础编码下
尽量用`time.Time`和`time.Duration`,如果必须用string,尽量用`time.RFC3339`
10.30
12:53:34
发表了文章
2023-10-30 12:53:34
Go编程模式 - 1.基础编码上
Program to an interface, not an implementation
10.20
21:02:01
发表了文章
2023-10-20 21:02:01
Go语言微服务框架 - 13.监控组件Prometheus的引入
今天我们专注于自定义服务中的Prometheus的监控,在框架中引入Prometheus相关的组件。关于更细致的使用方式,我会给出相关的链接,有兴趣进一步学习Prometheus的同学可以边参考资料边实践。
10.20
21:01:24
发表了文章
2023-10-20 21:01:24
Go语言微服务框架 - 12.ORM层的自动抽象与自定义方法的扩展
随着接口参数校验功能的完善,我们能快速定位到接口层面的参数问题;而应用服务的分层代码,也可以通过log的trace-id发现常见的业务逻辑问题。 但在最底层与数据库的操作,也就是对GORM的使用,经常会因为我们不了解ORM的一些细节,导致对数据的CRUD失败,或者没有达到预期效果。这时,我们希望能在ORM这一层也有一个通用的解决方案,来加速问题的排查。
10.20
20:59:55
发表了文章
2023-10-20 20:59:55
Go语言微服务框架 - 11.接口的参数校验功能-buf中引入PGV
大量开发接口的朋友会经常遇到**接口参数校验**的问题。举个例子,我们希望将某个字段是必填的,如`name`,我们经常会需要做两步: 1. 在程序中加一个**判断逻辑**,当这个字段为空时返回错误给调用方 2. 在接口文档中加上**注释**,告诉调用方这个参数必填 一旦某项工作被拆分为两步,就很容易出现**不一致性**:对应到参数检查,我们会经常遇到文档和具体实现不一致,从而导致双方研发的沟通成本增加。那么,今天我将引入一个方案,实现两者的一致性。
10.20
20:57:33
发表了文章
2023-10-20 20:57:33
Go语言微服务框架 - 10.接口文档-openapiv2的在线文档方案
随着项目的迭代,一个服务会开放出越来越多的接口供第三方调用。 虽然`protobuf`已经是通用性很广的IDL文件了,但对于未接触过这块的程序员来说,还是有很大的学习成本。在综合可读性和维护性之后,我个人比较倾向于使用oepnapiv2的方案,提供在线接口文档。
10.20
20:56:47
发表了文章
2023-10-20 20:56:47
Go语言微服务框架 - 9.分布式链路追踪-OpenTracing的初步引入
我们从API层到数据库层的链路已经打通,简单的CRUD功能已经可以快速实现。 随着模块的增加,我们会越发感受到系统的复杂性,开始关注系统的可维护性。这时,有个名词会进入我们的视野:**分布式链路追踪**
10.20
20:55:54
发表了文章
2023-10-20 20:55:54
Go语言微服务框架 - 8.Gormer迭代-定制专属的ORM代码生成工具
我们对比一下GORM库提供的`gorm.Model`,它在新增、修改时,会自动修改对应的时间,这个可以帮我们减少很多重复性的代码编写。这里,我就针对现有的gormer工具做一个示例性的迭代。
10.20
20:54:14
发表了文章
2023-10-20 20:54:14
Go语言微服务框架 - 7.Gormer-自动生成代码的初体验
作为一名程序员,我们总是希望能有更简单的开发方式来解决重复性的工作问题。在这个小版本中,我将结合自己的工作,来给出一套自动生成代码的完整方案,供大家借鉴。
10.20
20:51:43
发表了文章
2023-10-20 20:51:43
Go语言微服务框架 - 6.用Google风格的API接口打通MySQL操作
随着RPC与MySQL的打通,整个框架已经开始打通了数据的出入口。 接下来,我们就尝试着实现通过RPC请求操作MySQL数据库,打通整个链路,真正地让这个平台实现可用。
10.20
20:49:30
发表了文章
2023-10-20 20:49:30
Go语言微服务框架 - 5.GORM库的适配sqlmock的单元测试
与此同时,我们也缺乏一个有效的手段来验证自己编写的相关代码。如果依靠连接到真实的MySQL去验证功能,那成本实在太高。那么,这里我们就引入一个经典的sqlmock框架,并配合对数据库相关代码的修改,来实现相关代码的可测试性。
10.20
20:48:23
发表了文章
2023-10-20 20:48:23
Go语言微服务框架 - 4.初识GORM库
GORM库是一个很强大、但同时也是一个非常复杂的工具。为了支持复杂的SQL语言,它比之前的配置文件加载工具github.com/spf13/viper要复杂不少。今天,我们不会全量地引入GORM里的所有特性,而是从一个最简单的场景入手,对它的基本特性有所了解。而后续随着框架的完善,我们会逐渐细化功能。
10.20
20:42:45
发表了文章
2023-10-20 20:42:45
Go语言微服务框架 - 3.日志库的选型与引入
衡量日志库有多个指标,我们今天重点关注两点:简单易用 与 高性能。简单易用是一个日志库能被广泛使用的必要条件,而高性能则是企业级的日志库非常重要的衡量点,也能在源码层面对我们有一定的启发。
10.20
20:41:04
发表了文章
2023-10-20 20:41:04
Go语言微服务框架 - 2.实现加载静态配置文件
今天,我们先将重点放到加载配置文件库的技术选型,顺便分享一些常见的问题。
10.20
20:40:09
发表了文章
2023-10-20 20:40:09
Go语言微服务框架 - 1.搭建gRPC+HTTP的双重网关服务
大家好,我是六月天天。如题所述,从今天开始,我将和大家一起逐步完成一个微服务框架。
10.20
13:25:30
发表了文章
2023-10-20 13:25:30
etcd源码分析 - 5.【打通核心流程】EtcdServer消息的处理函数
在上一讲,我们梳理了`EtcdServer`的关键函数`processInternalRaftRequestOnce`里的四个细节。 其中,`wait.Wait`组件使用里,我们还遗留了一个细节实现,也就是请求的处理结果是怎么通过channel返回的。
10.20
13:24:43
发表了文章
2023-10-20 13:24:43
etcd源码分析 - 4.【打通核心流程】processInternalRaftRequestOnce四个细节
在上一讲,我们继续梳理了`PUT`请求到`EtcdServer`这一层的逻辑,并大概阅读了其中的关键函数`processInternalRaftRequestOnce`。
10.20
13:23:47
发表了文章
2023-10-20 13:23:47
etcd源码分析 - 3.【打通核心流程】PUT键值对的执行链路
在上一讲,我们一起看了etcd server是怎么匹配到对应的处理函数的,如果忘记了请回顾一下。 今天,我们再进一步,看看`PUT`操作接下来是怎么执行的。
10.20
13:22:59
发表了文章
2023-10-20 13:22:59
etcd源码分析 - 2.【打通核心流程】PUT键值对匹配处理函数
在阅读了etcd server的启动流程后,我们对很多关键性函数的入口都有了初步印象。 那么,接下来我们一起看看对键值对的修改,在etcd server内部是怎么流转的。
10.20
13:22:13
发表了文章
2023-10-20 13:22:13
etcd源码分析 - 1.【打通核心流程】etcd server的启动流程
在第一阶段,我将从主流程出发,讲述一个`PUT`指令是怎么将数据更新到`etcd server`中的。今天,我们先来看看server是怎么启动的。
10.20
13:20:39
发表了文章
2023-10-20 13:20:39
etcd源码分析 - 0.搭建学习etcd的环境
如果要更深入地研究etcd,就需要我们涉及到源码、并结合实践进行学习。那么,接下来,我将基于`v3.4`这个版本,做一期深入的环境搭建。
10.19
15:55:10
发表了文章
2023-10-19 15:55:10
Go语言学习路线 - 8.高级篇:从五个问题来畅想Go工程师的未来发展
有人常说,编程语言对软件工程师来说并不重要,更重要的是软件工程思想、架构设计能力等更高层面的内容。 这个观点本身没有问题,但它更多的是针对有相当工作经验的程序员。对于绝大多数的人,编程语言依然是最重要、最核心的技能,也是通往更高层面的敲门砖。所以,精通一门编程语言,不仅仅要熟悉其语法与原理,更要了解其周边的生态,包括框架、开源库、中间件等,以及掌握它适用的业务场景。
10.19
15:54:14
发表了文章
2023-10-19 15:54:14
Go语言学习路线 - 7.进阶篇:一名软件工程师的价值沉淀
通过前面几讲的分享,相信大家已经能清楚地看到一名普通软件工程师的发展路线:不断学习技能,提高研发效能,实现业务功能。 如果我们尝试回头看,可能会对自己的定位存在疑问:这些日常CRUD的开发工作,很多不具备太高的技术难度,可以靠人力堆积来实现。那么,如何在研发团队里打造自己的技术壁垒、体现个人价值呢?
10.19
15:53:28
发表了文章
2023-10-19 15:53:28
Go语言学习路线 - 6.提效篇:不懈地追求提升研发效率
在入门篇与基础篇之后,我选择做了这一讲提效篇。而在提效篇的推出之前,我也开启[Go语言技巧系列](https://junedayday.github.io/tags/Go-Tip/)的更新,着重分享一些具体的工程化实例,包括错误处理、Go Module等。
10.19
15:52:44
发表了文章
2023-10-19 15:52:44
Go语言学习路线 - 5.基础篇:从一个web项目来谈Go语言的技能点
经过了 入门篇 的学习,大家已经初步了解Go语言的语法,也能写常见的代码了。接下来,我们就从一个Web项目入手,看看一些常见的技能与知识吧。 我们先简单地聊一下这个Web项目的背景:我们要做的是一个简单的web系统 ,有前端同学负责界面的开发,后端不会考虑高并发等复杂情况。
1
2
跳转至:
发表了文章
2023-10-30
技术阅读摘要 - 2.OpenTelemetry技术概览
发表了文章
2023-10-30
技术阅读摘要 - 1.十二要素应用原则
发表了文章
2023-10-30
【K8s源码品读】013:Phase 1 - kubelet - 节点上控制容器生命周期的管理者
发表了文章
2023-10-30
【K8s源码品读】012:Phase 1 - kube-controller-manager - 了解控制管理中心
发表了文章
2023-10-30
【K8s源码品读】011:Phase 1 - kube-scheduler - 了解分配pod的大致流程
发表了文章
2023-10-30
【K8s源码品读】010:Phase 1 - kube-scheduler - Informer是如何保存数据的
发表了文章
2023-10-30
【K8s源码品读】009:Phase 1 - kube-scheduler - Informer监听资源变化
发表了文章
2023-10-30
【K8s源码品读】008:Phase 1 - kube-scheduler - 初探调度的启动流程与算法
发表了文章
2023-10-30
【K8s源码品读】007:Phase 1 - kube-apiserver - Pod数据的保存
发表了文章
2023-10-30
【K8s源码品读】006:Phase 1 - kube-apiserver - GenericAPIServer的初始化
发表了文章
2023-10-30
【K8s源码品读】005:Phase 1 - kube-apiserver 权限相关的三个核心概念
发表了文章
2023-10-30
【K8s源码品读】004:Phase 1 - kubectl - 发送创建Pod请求的实现细节
发表了文章
2023-10-30
【K8s源码品读】003:Phase 1 - kubectl - 设计模式中Visitor的实现
发表了文章
2023-10-30
【K8s源码品读】002:Phase 1 - kubectl - create的调用逻辑
发表了文章
2023-10-30
【K8s源码品读】001:Phase 1 - 掌握k8s创建pod的基本流程
发表了文章
2023-10-30
gRPC源码分析(四):剖析Proto序列化
发表了文章
2023-10-30
gRPC源码分析(三):从Github文档了解gRPC的项目细节
发表了文章
2023-10-30
gRPC源码分析(二):从官网文档看gRPC的特性
发表了文章
2023-10-30
gRPC源码分析(一):gRPC的系统调用过程
发表了文章
2023-10-30
Go编程模式 - 8-装饰、管道和访问者模式
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息
勋章
关注
粉丝