首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
教练我想敲代码
掘友等级
Java开发工程师
Java Mysql
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
高性能应用系统设计-1-概述
应用系统的高性能,类似于如何让一个人一直保持健康,不去找医生。保持健康的方法我们都知道,饮食均衡、按时休息、持续锻炼身体等等,而对于一个应用系统,一般则需要考虑硬件、操作系统(OS)、中间价、程序自身等系列问题。 HTTP协议是无状态的应用层协议,意味着每次HTTP请求都需要建…
中间件系列之Kafka-5-可靠消息传输
对于一个分区来说,它的消息是有序的。如果一个生产者向一个分区先写入消息A,然后写入消息B,那么消费者会先读取消息A再读取消息B。 当消息写入所有in-sync状态的副本后,消息才会认为已提交(committed)。这里的写入有可能只是写入到文件系统的缓存,不一定刷新到磁盘。生产…
中间件系列之Kafka-4-消费者
其中,只有group.id是不同的属性,而它也不是严格必须的,这个参数是消费者的消费组。 获取消费数据也很简单,由于生产者产生的数据消费者是不知道的,KafkaConsumer 采用轮询的方式定期去 Kafka Broker 中进行数据的检索,如果有数据就用来消费,如果没有就再…
中间件系列之Kafka-3-生产者
环境的搭建不再赘述,个人练习的话,基于Docker已经很方便了,比如:在Docker环境下部署Kafka,或者你还是喜欢传统的方式,在Windows上搭建Kafka,在Linux安装Kafka。当然,直接看官网说明那是最靠谱的。 每个 kafka broker 都有一个唯一的标…
中间件系列之Kafka-2-设计与实现
我们首先要知道 Kafka 的消息是存在于文件系统之上的。一般情况下大家认为 “磁盘是缓慢的”,对于Kafka采用这样的设计可能持有怀疑态度。实际上,一个好的磁盘结构设计可以使之跟网络速度一样快。比如,如果是针对磁盘的顺序访问,某些情况下它可能比随机的内存访问都要快,甚至可以和…
中间件系列之Kafka-1-基本概念
Kafak的内部数据单元成为消息,类似与数据库的一条记录。对于Kafka而言,消息只是一个字节数组,每个消息都有一个可选的元数据(metadata),称为键值(key)。当消息被写到分区(partition)时,消息的键值可以控制这个分派的过程,例如哈希。 对于每个消息来说,花…
中间件系列之Netty-12-Protocol Buffer序列化
Protocol Buffer(简称ProtoBuf)是google的一个语言中立,平台中立,可扩展的对结构化的数据进行序列化的一种机制,和XML类似,但是比XML更小,更快,更简单。你只用一次性的定义你的数据结构,我们可以使用特殊的生成的代码读/写到不同的数据流中或者不同的语…
中间件系列之Netty-11-分隔符
上一节我们介绍了LineBasedFrameDecoder,其以换行符\n或者\r\n作为依据,遇到\n或者\r\n都认为是一条完整的消息。 而DelimiterBasedFrameDecoder与LineBasedFrameDecoder类似,只不过更加通用,允许我们指定任意…
中间件系列之Netty-10-按行分割协议
LineBasedFrameDecoder 和LineEncoder采用的通信协议非常简单,即按照行进行分割,遇到一个换行符,则认为是一个完整的报文。在发送方,使用LineEncoder为数据添加换行符;在接受方,使用LineBasedFrameDecoder对换行符进行解码。…
中间件系列之Netty-9-变长协议
大多数的协议(私有或者公有),协议头中会携带长度字段,用于标识消息体或者整包消息的长度,例如SMPP、HTTP协议等。由于基于长度解码需求 的通用性,Netty提供了LengthFieldBasedFrameDecoder/LengthFieldPrepender,自动屏蔽TC…
下一页
个人成就
文章被点赞
50
文章被阅读
52,750
掘力值
1,569
关注了
4
关注者
24
收藏集
6
关注标签
3
加入于
2020-04-27