随笔分类 -  golang

1
摘要:以后会开一个板块,摸鱼快报,快速记录这几周开发中雕虫小技。 1. 向开发环境localhost:3000种植cookie 前端使用Create React App脚手架,默认以localhost:3000端口启动; 后端使用golang-gin框架,使用8034端口启动。 登录模块走的是sso,前后 阅读全文
posted @ 2023-01-13 18:20 博客猿马甲哥 阅读(384) 评论(0) 推荐(0) 编辑
摘要:先重温一下什么叫反向代理,正向代理。 鹅厂二面,nginx回忆录 所谓正向/反向代理取决于代理的是出站请求,还是入站请求。 正向代理: 代理的出站请求, 客户端能感知到代理程序,架构上距离客户端更近。 反向代理: 代理的是入站请求,客户端认为代理程序就是服务器,客户端感知不到代理逻辑,架构上距离服务 阅读全文
posted @ 2022-11-07 22:59 博客猿马甲哥 阅读(924) 评论(0) 推荐(1) 编辑
摘要:大家好,我是马甲哥, 学习新知识, 我的策略是模仿-->归纳 >举一反三, 在同程倒腾Go语言一年有余,本次记录《闻道Go语言,6月龄必知必会》,形式是同我的主力语言C#做姿势对比。 1. 宏观预览 1.1 常见结构对比 某些不一定完全对标,实现方式,侧重点略点差异。 go语言 C#语言 modul 阅读全文
posted @ 2022-10-25 16:40 博客猿马甲哥 阅读(570) 评论(1) 推荐(2) 编辑
摘要:先重温一下什么叫反向代理,正向代理。 鹅厂二面,nginx回忆录 所谓正向,反向代理取决于代理的是出站请求,还是入站请求。 正向代理: 代理的出站请求, 客户端能感知到代理程序,架构上距离客户端更近。 反向代理: 代理的是入站请求,客户端认为代理程序就是服务器,客户端感知不到代理逻辑,架构上距离服务 阅读全文
posted @ 2022-08-30 13:40 博客猿马甲哥 阅读(1415) 评论(2) 推荐(2) 编辑
摘要:信道是一个goroutine之间很关键的通信媒介,理解golang的信道很重要,这里记录平时易忘记的、易混淆的点。 ``` func main() { chs := make(chan string, 2) chs 接收;否则,先准备好的一方将会阻塞等待。 - 有缓冲信道 make(chan int 阅读全文
posted @ 2022-07-11 13:37 博客猿马甲哥 阅读(520) 评论(0) 推荐(1) 编辑
摘要:[定义]: golang的方法(Method)是一个带有receiver的函数Function,Receiver是一个特定的struct类型,当你将函数Function附加到该receiver, 这个方法Method就能获取该receiver的属性和其他方法。 [面向对象]: golang方法Met 阅读全文
posted @ 2022-05-31 14:51 博客猿马甲哥 阅读(462) 评论(0) 推荐(0) 编辑
摘要:转一个我在知乎上回答的有关raft election timeout/ heartbeat interval 的回答吧。 答:准确来讲: election是timeout,而heartbeat 是interval, 这样就很容易理解了。 heartbeat interval 是leader 安抚fo 阅读全文
posted @ 2022-05-24 14:53 博客猿马甲哥 阅读(849) 评论(1) 推荐(0) 编辑
摘要:本次将记录[利用etcd选主sdk实践master/slave高可用], 并利用etcdctl原生脚本验证选主sdk的工作原理。 master/slave高可用集群 本文目标 在异地多机房部署节点,slave作为备用实例启动,但不接受业务流量, 监测到master宕机,slave节点自动提升为mas 阅读全文
posted @ 2022-04-19 16:46 博客猿马甲哥 阅读(1234) 评论(0) 推荐(1) 编辑
摘要:传统cpu调度背景 #操作系统原理# 线程切换 行为 时机 代价 go是怎样的思路 将调度维持在用户态 推出用户态runtime代码实现的轻量级线程 go调度策略 常规: 本地队列- 其他队列、全局队列 协作式调度: 基于用户态事件 -- 异步io: 网络: 基于netpoller -- 同步io: 阅读全文
posted @ 2022-03-15 13:58 博客猿马甲哥 阅读(1528) 评论(1) 推荐(3) 编辑
摘要:.NET在这方面,是真的博采众长。 阅读全文
posted @ 2022-03-02 14:09 博客猿马甲哥 阅读(2890) 评论(0) 推荐(0) 编辑
摘要:引经据典 阅读全文
posted @ 2022-02-25 09:52 博客猿马甲哥 阅读(524) 评论(1) 推荐(0) 编辑
摘要:http是请求-响应模型,发起方一直是客户端,connection:keep-alive的初衷是**为客户端后续的请求重用连接**, 如果我们在某次请求--响应模型中,请求定义了connection:close, 那不再重用这个连接的时机就只有在服务端了,不能等到下次请求再关闭连接,因为可能根本就没下次请求,所以我们在请求-响应这个周期的末端关闭连接是合理的。 阅读全文
posted @ 2022-02-08 11:12 博客猿马甲哥 阅读(3958) 评论(8) 推荐(8) 编辑
摘要:上文讲到使用ioutil.ReadAll读取大的Response Body,出现读取Body超时的问题。 前人引路 Stackoverflow的morganbaz的看法是: 使用iotil.ReadAll去读取go语言里大的Response Body,是非常低效的; 另外如果Response Bod 阅读全文
posted @ 2022-01-26 09:00 博客猿马甲哥 阅读(1537) 评论(3) 推荐(2) 编辑
摘要:## 故障现场 ![](https://files.mdnice.com/user/4236/17943a3f-7903-40f4-b9b6-cfcdc6ae8736.png) 本人负责的`主备集群`,发出的 HttpClient 请求有 30%概率超时, 报`context deadline ex 阅读全文
posted @ 2022-01-10 14:03 博客猿马甲哥 阅读(1477) 评论(2) 推荐(0) 编辑
摘要:上文中我的结论是: HTTP Keep-Alive 是在应用层对TCP连接进行滑动续约复用, 如果客户端/服务器稳定续约,就成了名副其实的长连接。 目前所有的Http网络库都默认开启了HTTP Keep-Alive,今天我们从底层TCP连接和排障角度撕碎HTTP持久连接。 使用go语言倒腾一个htt 阅读全文
posted @ 2021-12-03 10:45 博客猿马甲哥 阅读(540) 评论(2) 推荐(1) 编辑
摘要:宝物简介 grpcur是一个与grpc服务器交互的命令行工具,可认为是gRPC的curl工具。 grpcurl用于从命令行调用gRPC服务器支持的RPC方法,gRPC使用二进制编码(protobuf), 不能利用常规的curl工具(早期的curl版本还不支持HTTP/2)。 grpcurl工具接受j 阅读全文
posted @ 2021-11-24 14:30 博客猿马甲哥 阅读(1639) 评论(0) 推荐(1) 编辑
摘要:SignalR 从开发到生产部署避坑指南> 前天倒腾了一份[SignalR在react/go技术栈的实践], 步骤和思路大部分是外围框架的应用, 今天趁热打铁, 给一个我总结的SignalR避坑指南。 ## 1.[SignalR 默认协商](https://docs.microsoft.com/en-us/aspnet/core/sign 阅读全文
posted @ 2021-10-22 10:42 博客猿马甲哥 阅读(1682) 评论(2) 推荐(8) 编辑
摘要:哼哧哼哧半年,优化改进了一个运维开发web平台。 本文记录SignalR在react/golang 技术栈的生产小实践。 一. 背景 有个前后端分离的运维开发web平台, 后端会间隔1分钟同步一次数据,现在需要将最新一次同步的时间推送到web前端。 说到[web服务端推送],立马想到SignalR。 阅读全文
posted @ 2021-10-19 10:12 博客猿马甲哥 阅读(582) 评论(4) 推荐(4) 编辑
摘要:之前有小伙伴问我 async/await语法糖编译后其实是状态机模型,到底什么是状态机? 状态机是一种行为设计模式,它允许对象在其内部状态改变时改变其行为。看起来好像对象改变了它的类。 请仔细理解上面每一个字。 我们以自动售货机为例,为简化演示,我们假设自动售货机只有1种商品, 故自动售货机有ite 阅读全文
posted @ 2021-09-17 12:58 博客猿马甲哥 阅读(953) 评论(3) 推荐(4) 编辑
摘要:打不死我的,只会让我更加强大。 阅读全文
posted @ 2021-07-13 08:45 博客猿马甲哥 阅读(375) 评论(0) 推荐(1) 编辑

1