上一页 1 2 3 4 5 6 ··· 13 下一页
  2021年5月31日
摘要: RPC(Remote Procedure Call),是一个大家既熟悉又陌生的词,只要涉及到通信,必然需要某种网络协议。我们很可能用过HTTP,那么RPC又和HTTP有什么区别呢?RPC还有什么特点,常见的选型有哪些? 1. RPC是什么 RPC可以分为两部分:用户调用接口 + 具体网络协议。前者为 阅读全文
posted @ 2021-05-31 09:35 Kevin Wan 阅读(857) 评论(0) 推荐(4) 编辑
  2021年5月26日
摘要: 前言 群里老有同学问,go-zero 的 数据库 和 redis 库是否有连接池支持。先说结论:有的,可以放心大胆用! 从框架设计来说,对于数据库连接这种资源当然是尽可能减少频繁操作: 为业务减负 提升框架自身的性能 池化技术是一个通用化技术,本身就应该作为一个通用库支撑框架的上层业务 所以不管是 阅读全文
posted @ 2021-05-26 08:35 Kevin Wan 阅读(285) 评论(0) 推荐(0) 编辑
  2021年5月24日
摘要: Previously 前两篇文章(缓存稳定性 和 缓存正确性)跟大家讨论了缓存的『稳定性』和『正确性』,缓存常见问题还剩下『可观测性』和『规范落地&工具建设』 稳定性 正确性 可观测性 规范落地和工具建设 上周文章发完之后,很多同学对我留的问题进行了深入的讨论,我相信经过深度的思考,会让你对缓存一致 阅读全文
posted @ 2021-05-24 08:58 Kevin Wan 阅读(329) 评论(0) 推荐(1) 编辑
  2021年5月19日
摘要: 前言 缓存,设计的初衷是为了减少繁重的IO操作,增加系统并发能力。不管是 CPU多级缓存,page cache,还是我们业务中熟悉的 redis 缓存,本质都是将有限的热点数据存储在一个存取更快的存储介质中。 计算机本身的缓存设计就是 CPU 采取多级缓存。那对我们服务来说,我们是不是也可以采用这种 阅读全文
posted @ 2021-05-19 08:33 Kevin Wan 阅读(452) 评论(2) 推荐(0) 编辑
  2021年5月17日
摘要: Previously 缓存系统涉及的问题和知识点是比较多的,我主要分为以下几个方面来跟大家探讨: 稳定性 正确性 可观测性 规范落地和工具建设 上篇 我们分析了缓存系统的稳定性,介绍了 go-zero 是怎么解决缓存穿透、缓存击穿、缓存雪崩问题的。比较浅显易懂,且具有比较强的实战意义,推荐一读。 本 阅读全文
posted @ 2021-05-17 09:03 Kevin Wan 阅读(339) 评论(4) 推荐(0) 编辑
  2021年5月13日
摘要: 你在使用消息队列的时候关注过吞吐量吗? 思考过吞吐量的影响因素吗? 考虑过怎么提高吗? 总结过最佳实践吗? 本文带你一起探讨下消息队列消费端高吞吐的 Go 框架实现。Let’s go! 关于吞吐量的一些思考 写入消息队列吞吐量取决于以下两个方面 网络带宽 消息队列(比如Kafka)写入速度 最佳吞吐 阅读全文
posted @ 2021-05-13 07:58 Kevin Wan 阅读(719) 评论(0) 推荐(0) 编辑
  2021年5月10日
摘要: 前言 大家好!我是万俊峰,go-zero 作者。感谢 ArchSummit 提供这么好的机会来跟大家分享一下go-zero的缓存最佳实践。 首先,大家可以想一想:我们在流量激增的情况下,服务端哪个部分最有可能会是第一个瓶颈?我相信大部分人遇到的都会是数据库首先扛不住,量一起来,数据库慢查询,甚至卡死 阅读全文
posted @ 2021-05-10 10:34 Kevin Wan 阅读(591) 评论(2) 推荐(3) 编辑
  2021年5月7日
摘要: 最近在看公司的 redis queue 时,发现底层使用的是 go-zero 的 queue 。本篇文章来看看 queue 的设计,也希望可以从里面了解到 mq 的最小型设计实践。 使用 结合其他 mq 的使用经历,基本的使用流程: 创建 producer 或 consumer 启动 mq 生产消息 阅读全文
posted @ 2021-05-07 10:15 Kevin Wan 阅读(62) 评论(0) 推荐(0) 编辑
  2021年4月28日
摘要: 前言 是不是觉得C写个服务太累,但又沉迷于C的真香性能而无法自拔?作为一个老牌C程序员(可以看我 github 上十几年前的C项目:https://github.com/kevwan ),这几天听一个好友跟我聊起他写的C框架,说极简代码即可完成各种C服务的开发,不禁让我心生好奇!于是我去研究了一下, 阅读全文
posted @ 2021-04-28 11:47 Kevin Wan 阅读(769) 评论(9) 推荐(0) 编辑
  2021年4月19日
摘要: 上一篇我们讲了 go-zero 中的并发工具包 core/syncx。 从整体分析来看,并发组件主要通过 channel + mutex 控制程序中协程之间沟通。 Do not communicate by sharing memory; instead, share memory by commu 阅读全文
posted @ 2021-04-19 08:30 Kevin Wan 阅读(114) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 13 下一页