CPU缓存架构 现代处理器一般是多核架构,并且为了平衡CPU和内存的速度差距,还引入了多级Cache。 CPU Cache 是由很多个 Cache Line 组成,每个Cache Line大小为64KB。Cache Line 是 CPU从内存读写数据的基本单位,每次从Cache中读取一个完整的Cache Line进行操作。(空间局部性原理) 我们期望 CPU 读取数据时
引言 马蜂窝消息总线于 2017 年 11 月份上线,截至目前,已经被电商、酒店、大交通、社区等多个技术团队投入到生产环境的使用中。 近一年时间里,消息总线经历过几次比较重要的功能迭代,承担了 PHP 在线服务异步、削峰、解耦的大部分任务。 这篇文章的目的主要是和大家交流下马蜂窝消息总线的设计原因、实现原理以及未来规划,希望能和有潜在需求的研发同学一起探讨。 我们为什么需要消息总线
前言: Golang nats mq是一个基于golang实现的高性能消息队列,nats也被cncf纳入到云原生计算基金会。据我所知,nats mq貌似在gopher里很有名气,但别的语言系的朋友不关注这个。 我用nats也有段时间了,你问我这个nats好用否? 我只能说比我以前用的go nsq性能高且可用性强,加入stream后,可信赖数据可靠性。如果再详细的介绍
前言 本人曾在简书上发表过本文,由于简书对公式支持不好,现已搬迁至CSDN,将简书上的文章在CSDN上集中发布。 1. MQTT简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是基于“订阅/发布”模式的轻量级通信协议,该协议基于TCP/IP,能以极低的带宽为海量(百万级)跨域设备提供可靠的消息服务,因此在物联网、小型移动终端
本文是总结Go语言的低延迟垃圾回收机制GC突出之处。Pusher是一个简单的托管API,通过WebSockets集成到网络和移动应用程序或任何其他互联网连接的设备上,实现快速,轻松,安全地将实时双向功能。每天,Pusher实时发送数十亿条消息:从源发送信息到目标只需要100ms。我们如何实现这一目标? 一个关键因素是Go的低延迟垃圾回收器。垃圾收集器是实时系统的缓慢的元凶,因为他们会暂停程序运行
自打 Centos 升级到版本7以后,无论是爱还是恨,每个人都不得不面对systemd。systemd由Lennart Poettering和freedesktoporg开发,立足于一款方便,快捷的服务项初始化工具管理工具。虽然systemd提高了初学者的使用复杂性,让熟悉service和/etc/init.d等System V init的人会感觉有点繁琐和不适应。但是相比较System V
引言马蜂窝消息总线于 2017 年 11 月份上线,截至目前,已经被电商、酒店、大交通、社区等多个技术团队投入到生产环境的使用中。近一年时间里,消息总线经历过几次比较重要的功能迭代,承担了 PHP 在线服务异步、削峰、解耦的大部分任务。这篇文章的目的主要是和大家交流下马蜂窝消息总线的设计原因、实现原理以及未来规划,希望能和有潜在需求的研发同学一起探讨。我们为什么需要消息总线?在消息总线上线前
Go语言打造高并发web即时聊天(IM-Instant Messaging)应用-支持10万人同时在线 1.技术栈 1.1.前端技术 h5 ajax 发送文字- 上传文字 发送图片-上传图片使用h5获取音频使用h5发送WebSocket消息 Vue制作单页appmui、css 1.2. 后端技术 WebSocket组件 http协议握手升级成WebSocket协议
该版本声明也包括了 0.3.1 与 0.3.2 版本的内容 日期:2020/5/7 Kuiper 团队宣布发布 Kuiper 0.4.0 Kuiper 0.4.0 下载地址:https://github.com/emqx/kuiper/releases/tag/0.4.0 源 (Source)SQL (业务逻辑处理)目标 (Sink) 网址:https://www.emqx
缘起 最近阅读> (刘金亮, 2021.1) 本系列笔记拟采用golang练习之 Saga模式 saga模式将分布式长事务切分为一系列独立短事务 每个短事务是可通过补偿动作进行撤销的 事务动作和补动作偿都是幂等的, 允许重复执行而不会有副作用 Saga由一系列的子事务“Ti”组成, 每个Ti都有对应的补偿“Ci”, 当Ti出现问题时Ci用于处理Ti执行带来的问题。