RPC学习:进阶到 gRPC

所有代码详见代码仓库,rpc、grpc 目录 一、RPC 入门 1.1 介绍 RPC 全称叫做远程过程调用,是分布式系统中不同节点通信的一种流行的方式。我在刚开始学习的时候一直有一个误区,就是 RPC 是服务端调用客户端使用的,在实践上手后才恍然大悟,它是服务端与服务端之间的事件。 在刚刚入门的阶段的时候,我还有一个小小的疑问:那就是我直接用 http 传输,然后用 json 格式转换消息不行吗?

- 阅读全文 -

牛腩炖萝卜土豆小记

上个星期是第一次尝试炖牛腩,鉴于自我感觉比较成功,但是料太少了不过瘾,这周再次尝试。 准备的材料也与上次相同。 一、准备工作 1.1 辅助材料 李锦记一招胜 萝卜焖牛腩酱100g 0添加防腐剂 粤菜经典调味酱汁 6.18元 京东购买链接 乐畅肉料王炖卤肉调料28g 内含小袋方便炖卤 天然香辛大料牛羊鸡猪肉 1.81/2=0.9元 京东购买链接 生姜、葱 ... 1.2 主食材料

- 阅读全文 -

GO 代码的一些查漏补缺

一、入门 1. 地址引用错误 1.1 代码 func main() { slice := []int{0,1,2,3} m := make(map[int]*int) for key,val := range slice { m[key] = &val } for k,v := range m { fm

- 阅读全文 -

微服务学习:理念

一、 是什么 一种架构模式,将一个很大的代码库拆分成若干个小模块,一个模块即一个服务,符合单一职责,对外提供服务,服务之间通信基于网络,某一个服务内部的修改不会影响服务调用方的变动。 1.1 优势 编程语言没有限定,不同模块可以使用单独的技术语言; 各个模块独立,升级或者出现问题,不会影响其他模块,不会有扩散性; 易于扩展,可以给某个单独模块提升扩展; 1.2 问题 微服务是基于分布式的系统,

- 阅读全文 -

MySQL查询的执行过程概述

一、MySQL查询时的简要执行过程 连接器 查询缓存 解析器 预处理 优化器 执行器 二、连接器 TCP 三次握手; 校验用户的账号密码; 根据用户分配权限,对用户修改权限不影响当前会话; 三、查询缓存 查询缓存(Query Cache)以 key-value 键值对的形式存储。key 就是 SQL 语句,必须完全对应。同时如果对数据表内的一条数据进行更新,就会导致整张表的查询缓存失效。

- 阅读全文 -

暴力破解到动态规划(一)

题目一 单元测试 package testing import ( "github.com/go-playground/assert/v2" "go_learn/alt/dp/q1/a1" "go_learn/alt/dp/q1/a2" "go_learn/alt/dp/q1/a3" "testing" ) var N = 7 var M = 2 va

- 阅读全文 -