随笔分类 -  协议类

阅读各协议,收集的地方
摘要:分布式系统的三大理论CAP就不说了,但是作为分布式消息系统的rocketmq, 主从功能是最最基础的保证可用性的手段了。也许该功能现在已经不是很常用了,但是对于我们理解一些分布式系统的常用工作原理还是有些积极意义的。 今天就一起来挖挖rocketmq是如何实现主从数据同步的吧。 1. 主从同步概述 阅读全文
posted @ 2020-12-27 21:02 阿牛20 阅读(3930) 评论(0) 推荐(0) 编辑
摘要:RocketMQ作为消息中间件,经常会被用来和其他消息中间件做比较,比对rabbitmq, kafka... 但个人觉得它一直对标的,都是kafka。因为它们面对的场景往往都是超高并发,超高性能要求的场景。 所以,有必要深挖下其实现高性能,高并发的原因。实际上,这是非常大的话题,我这里也不打算一口吃 阅读全文
posted @ 2020-12-21 10:10 阿牛20 阅读(1664) 评论(0) 推荐(0) 编辑
摘要:在rocketmq中,nameserver充当了一个配置管理者的角色,看起来好似不太重要。然而它是一个不或缺的角色,没有了它的存在,各个broker就是一盘散沙,各自为战。 所以,实际上,在rocketmq中,nameserver也是一个领导者的角色。它可以决定哪个消息存储到哪里,哪个broker干 阅读全文
posted @ 2020-12-13 15:53 阿牛20 阅读(996) 评论(0) 推荐(0) 编辑
摘要:rocketmq作为一个高性能的消息中间件,咱们光停留在使用层面,总感觉缺点什么。虽然rocketmq的官方设计文档讲得还是比较详细的,但纸上得来终觉浅!今天我们就来亲自挖一挖rocketmq的实现细节:server端处理框架以及如果进行消费消息。 说白了,就是先走马观花一下,然后就消费消息这个细节 阅读全文
posted @ 2020-12-06 11:11 阿牛20 阅读(933) 评论(0) 推荐(1) 编辑
摘要:之前写过一篇博客,是关于如何解析类似sql之类的解析器实现参考:https://www.cnblogs.com/yougewe/p/13774289.html 之前的解析器,更多的是是做语言的翻译转换工作,并不涉及具体的数据运算。而且抛弃了许多上下文关联语法处理,所以相对还是简单的。 那么,如果我们 阅读全文
posted @ 2020-11-28 13:59 阿牛20 阅读(695) 评论(0) 推荐(0) 编辑
摘要:最近搞一个文件上传功能,由于文件太大,或者说其中包含了比较多的内容,需要大量逻辑处理。为了优化用户体验,自然想到使用异步来做这件事。也就是说,用户上传完文件后,我就开启另一个线程来处理具体逻辑,主线程就直接返回用户成功信息了。这样就显得非常快了,要看具体结果可以到结果页进行查看。看起来很棒! 然后, 阅读全文
posted @ 2020-11-22 17:25 阿牛20 阅读(2792) 评论(1) 推荐(2) 编辑
摘要:用hive来做数仓类操作,或者大数据的运算,是没有疑问的,至少在你没有更多选择之前。 当我们要hive来做类似于大批量数据的select时,也许问题就会发生了变化。 1. 通用解决方案:分页拉取 首先,我们要基于一个事实,就是没有哪个数据库可以无限制的提供我们select任意数据量的数据。比如常用的 阅读全文
posted @ 2020-11-01 15:17 阿牛20 阅读(3601) 评论(1) 推荐(2) 编辑
摘要:上一篇nginx的文章中,我们理解了整个http正向代理的运行流程原理,主要就是事件机制接入,header解析,body解析,然后遍历各种checker,以及详细讲解了其正向代理的具体实现过程。这已经让我们对整个nginx有了较深入的了解,但nginx核心固然重要,但其扩展功能才是其吸引大家的地方。 阅读全文
posted @ 2020-10-08 20:05 阿牛20 阅读(3145) 评论(0) 推荐(1) 编辑
摘要:上一篇nginx的文章中,我们理解了整个http正向代理的运行流程原理,主要就是事件机制接入,header解析,body解析,然后遍历各种checker,直到处理成功为止。 我们以访问一个普通文件为例,nginx到底是如何找到这个文件并返回信息的呢?它会不会有些什么限制呢? 按我们自己的理解,它应该 阅读全文
posted @ 2020-10-07 17:25 阿牛20 阅读(1448) 评论(0) 推荐(0) 编辑
摘要:有时候,我们为了屏蔽一些底层的差异,我们会要求上游系统按照某种约定进行传参。而在我们自己的系统层则会按照具体的底层协议进行适配,这是通用的做法。但当我们要求上游系统传入的参数非常复杂时,也许我们会有一套自己的语法定义,用以减轻所有参数的不停变化。比如sql协议,就是一个一级棒的语法,同样是调用底层功 阅读全文
posted @ 2020-10-06 19:28 阿牛20 阅读(1862) 评论(0) 推荐(3) 编辑
摘要:Nginx 启动起来之后,会有几个进程运行:1. master 进程接收用户命令并做出响应; 2. worker 进程负责处理各网络事件,并同时接收来自master的处理协调命令; master 主要是一控制命令,我们后面再说,而worker则是处理的nginx的核心任务,请求转发、反向代理、负载均 阅读全文
posted @ 2020-09-13 07:51 阿牛20 阅读(1582) 评论(0) 推荐(1) 编辑
摘要:我们现在用得非常多互联网下载文件,非常直观。有一个下载按钮,然后我点击了下载,然后文件慢慢就下载到本地了。就好像是一个复制的过程。 而既然是互联网,那么必然会是使用网络进行传输的。那么到底是怎样传输的呢? 当然,下载文件有两种方式:一是直接针对某个文件资源进行下载,无需应用开发代码;二是应用代码临时 阅读全文
posted @ 2020-05-19 12:18 阿牛20 阅读(20783) 评论(0) 推荐(2) 编辑
摘要:本文所说的session是单机版本的session, 事实上在当前的互联网实践中已经不太存在这种定义了。我们主要讨论的是其安全共享的实现,只从理论上来讨论,不必太过在意实用性问题。 1. session 的意义简说 大概就是一个会话的的定义,客户端有cookie记录,服务端session定义。用于确 阅读全文
posted @ 2020-05-16 22:16 阿牛20 阅读(1264) 评论(1) 推荐(0) 编辑
摘要:如今,我们想要开发一个网络应用,那是相当地方便。不过就是引入一个框架,然后设置些参数,然后写写业务代码就搞定了。 写业务代码自然很重要,但是你知道: 你的数据是怎么来的吗?通过网络传输过来的呗。 你知道网络是通过什么方式传输过来的吗?光纤呗,TCP/IP协议呗。 看起来都难不住我们的同学们,但是,以 阅读全文
posted @ 2019-09-12 21:59 阿牛20 阅读(1778) 评论(0) 推荐(1) 编辑
摘要:一般地,像kafka之类的消息中间件,作为一个可以保持历史消息的组件,其消费模型一般是主动拉取方式。这是为了给消费者足够的自由,回滚或者前进。 然而,也正是由于将消费消息的权力交给了消费者,所以,消费者往往需要承担更多的责任。比如:需要自行保存消费偏移量,以便后续可以知道从哪里继续。而当这一点处理不 阅读全文
posted @ 2019-07-01 15:50 阿牛20 阅读(1941) 评论(1) 推荐(1) 编辑
摘要:zk用处如此之多,以至于每个地方都要你理解zk原理! 请按如下操作姿势打开: 1. 打开zk的git仓库地址: https://github.com/apache/zookeeper , 确认过眼神,它就是你要找有人! 2. 下载源码到本地,下载 ant 工具到本地,(如果还没下载的话: http: 阅读全文
posted @ 2019-03-24 16:16 阿牛20 阅读(5490) 评论(0) 推荐(0) 编辑
摘要:Kafka作为大数据时代的产物,自有其生存之道。让我们跟随扫盲班的培训,进行大致了解与使用kafka吧。(平时工作有使用不代表就知道kafka了哟) 1. kafka介绍 1.1. 拥有的能力(能干什么?) 根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能: 1. 发 阅读全文
posted @ 2018-09-28 21:37 阿牛20 阅读(1031) 评论(0) 推荐(0) 编辑
摘要:全局变量就是不管你在哪里,都能够直接引用的变量,还不用担心各种问题。每个语言都有自己的全局变量,我想! 一般地,面向过程的语言当中,可能就是一个声明在最前面的变量,后面的代码直接引用,就成了全局变量!(最经典的C就是这样的) 如:js 中: 但是也有的语言是不允许直接引用的,如PHP:(以下代码是会 阅读全文
posted @ 2018-05-06 15:28 阿牛20 阅读(32935) 评论(0) 推荐(0) 编辑
摘要:我们听过无数的道理,却仍旧过不好这一生。额,我说的是技术! 《分布式服务框架原理与实践》这本书,一直在讲一些大道理,和具体的业务和我本身的工作已经没多大关系了。但是,不管怎么样,还得总结下吧。别人的道理,并不是自己的道理!自己的的道理才是硬道理,哪怕是烂道理! 个人觉得这本书讲得太宽泛,或者说讲得不 阅读全文
posted @ 2018-01-14 21:48 阿牛20 阅读(5737) 评论(0) 推荐(2) 编辑
摘要:https是当下的网站的主流趋势,甚至像苹果这样的大公司,则完全要求用户必须使用https地址。 然而对于以前http链接来说,我们往往就存在一个兼容性问题,因为你不可能一下就全部切换过去,应该在很长一段时间内,https与http将共存。 https与http共存的场景有如: 1. app已经发布 阅读全文
posted @ 2017-08-27 12:07 阿牛20 阅读(95632) 评论(5) 推荐(3) 编辑

点击右上角即可分享
微信分享提示