腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
IT架构圈
公众号:IT架构圈
专栏作者
举报
831
文章
739553
阅读量
132
订阅数
订阅专栏
申请加入专栏
全部文章(831)
容器镜像服务(182)
java(122)
容器(120)
其他(81)
http(77)
https(73)
微服务(65)
编程算法(63)
spring(55)
git(54)
github(49)
python(48)
数据库(46)
网络安全(42)
小程序(39)
云数据库 Redis(38)
api(38)
云数据库 SQL Server(36)
spring boot(35)
kubernetes(34)
sql(33)
linux(29)
开源(29)
ios(28)
分布式(28)
dubbo(28)
nginx(27)
缓存(27)
微信(26)
xml(25)
html(25)
android(24)
node.js(23)
jar(23)
tomcat(23)
ps(23)
apache(20)
安全(20)
存储(19)
爬虫(19)
maven(18)
人工智能(18)
运维(18)
jvm(17)
windows(17)
bash(16)
网站(16)
jdk(16)
zookeeper(16)
tcp/ip(16)
负载均衡(15)
javascript(15)
wordpress(13)
it(13)
react(12)
bash 指令(12)
jenkins(12)
自动驾驶(11)
打包(11)
socket编程(11)
游戏(10)
rpc(10)
mvc(9)
负载均衡缓存(9)
jdbc(9)
spring cloud(9)
数据结构(9)
json(8)
文件存储(8)
yum(8)
程序员(8)
ide(7)
mybatis(6)
大数据(6)
架构设计(6)
nat(6)
虚拟化(6)
go(5)
servlet(5)
arm(5)
reactnative(5)
压力测试(5)
shell(5)
hashmap(5)
网站建设(5)
Elasticsearch Service(5)
php(4)
jsp(4)
unix(4)
centos(4)
腾讯云测试服务(4)
电商(4)
自动化(4)
数据迁移(4)
面向对象编程(4)
dns(4)
aop(4)
bug(4)
bootstrap(3)
jquery(3)
ajax(3)
ubuntu(3)
渲染(3)
黑客(3)
ssh(3)
正则表达式(3)
单元测试(3)
udp(3)
敏捷开发(3)
机器人(3)
数据分析(3)
kafka(3)
image(3)
项目经理(3)
费用中心(2)
对象存储(2)
c++(2)
.net(2)
nosql(2)
django(2)
eclipse(2)
日志服务(2)
云数据库 MongoDB(2)
NAT 网关(2)
消息队列 CMQ 版(2)
SSL 证书(2)
云推荐引擎(2)
mongodb(2)
npm(2)
cdn(2)
selenium(2)
数据处理(2)
系统架构(2)
腾讯云开发者社区(2)
迁移(2)
产品经理(2)
计算机(2)
云服务器(1)
官方文档(1)
区块链(1)
机器学习(1)
tensorflow(1)
iphone(1)
xcode(1)
ruby(1)
scala(1)
angularjs(1)
css(1)
ecmascript(1)
webview(1)
硬件开发(1)
flask(1)
web.py(1)
svn(1)
struts(1)
搜索引擎(1)
神经网络(1)
批量计算(1)
云直播(1)
命令行工具(1)
图片标签(1)
企业(1)
svg(1)
xslt & xpath(1)
html5(1)
无人驾驶(1)
erp(1)
numpy(1)
asp(1)
ftp(1)
grep(1)
自动化测试(1)
二叉树(1)
flash(1)
scrapy(1)
rabbitmq(1)
安全漏洞(1)
云计算(1)
fiddler(1)
es(1)
实时监控(1)
学习方法(1)
bat(1)
class(1)
com(1)
key(1)
push(1)
tm(1)
treemap(1)
编译(1)
产品(1)
代理(1)
函数(1)
行业(1)
源码(1)
搜索文章
搜索
搜索
关闭
软件架构-RPC网络传输原理与实现
自动驾驶
rpc
http
dubbo
1.客户端调度线程:用于发起远程方法调用的线程。2.客户端结果Exchange线程:当远程方法返回response后由该线程填充至指定ResponseFuture,并叫醒等待的调度线程。3.客户端IO线程:由传输框架实现,用于request 消息流发送、response 消息流读取与解码等操作。4.服务端IO线程:由传输框架实现,用于request消息流读取与解码 和response编码与发送。5.业务执行线程:服务端具体执行业务方法的线程
IT架构圈
2021-09-17
929
0
软件架构-tomcat之线程源码熟悉通信方式(上)
自动驾驶
java
tomcat
apache
linux
PS:NIO就是用最少的线程干最多的事情,BIO是找更多的人来干。都是要进行堵塞的,尤其是selector.select()方法上,跟bio的accept()一样,其实都在阻塞。比较单线程和多线程的处理方式,一般情况下无论哪种,nio模式都要比bio更优。
IT架构圈
2021-08-24
277
0
搭建百万连接服务,使用netty完成websocke的推送
自动驾驶
java
android
http
PS:最好是通过代码,自己试一下,了解下百万连接的思路,按照正常是分布式的架构,单机始终是有瓶颈的,100万用户的连接的话单机8g4核轻轻松松,分布式系统就要设计到分布式消息队列,负载均衡,注册中心的概念,推送使用netty方便系统的开发,沾包和拆包的问题方法去解决,而不是自己写一个socket程序很复杂,netty是通过责任链的方式,通过pipline控制之后的步骤。netty的底层是基于NIO,NIO的底层是基于多路复用的机制,多路复用机制是依托于操作系统的,百万连接这个是拼操作系统参数的,java代码是使用的NIO,如果不是使用的NIO,不好意思你达不到,设置到一些系统操作的配置。
IT架构圈
2021-01-04
2.7K
0
JAVA服务器推送功能设计,消息方法总结
java
api
负载均衡
socket编程
自动驾驶
结合实际的场景来把netty这个框架运行起来,一起去梳理这个过程,里面用到了nio和Reactor,nio实现了对应的API,但是它没有对多线程进行结合,大牛才设计出来reactor这个模式,来实现高性能的nio的编程,经过梳理才到了netty,reactor一定要搞懂。推送系统先别管是什么推送系统,先理解成一个客户端和服务端的一个程序,也先别管具体的业务场景,功能的属性比较弱,推送系统本身就是比较简单一个推送系统,里面也没有增删查改复杂。默认大家都理解长连接和短连接,网络请求的基本概念。 (一)设计和思路
IT架构圈
2021-01-04
2.1K
0
Netty线程模型
socket编程
react
自动驾驶
编程算法
java
1.Reactor 线程模型:一种高性能的多线程设计思路。 2.Netty中自定义的channel概念,增强版的通道概念。 3.ChannelPipline职责链设计模式:事件处理机制。 4.内存管理:增强的ByteBuf缓冲区。
IT架构圈
2020-12-02
385
0
NIO非阻塞网络编程三大核心理念
自动驾驶
socket编程
api
jdk
缓存
1.capacity 容量:作为一个内存块,Buffer具有一定的固定大小,也称为【容量】。 2.position 位置:写入模式时代表写数据的位置。读取模式时代表读取数据的位置。 3.limit 限制:写入模式,限制等于buffer的容量,读取模式下,limit等于写入的数据量。
IT架构圈
2020-12-02
360
0
『互联网架构』软件架构-netty高性能序列化协议protobuf(56)
数据结构
自动驾驶
github
https
git
1.码流的大小,也就是解析后的二进制的大小,很明显原生的jdk序列化,字符长度很长,下面的滚动条都很长。数据越多,传输的带宽越大。在项目开发中内网通信的带宽都是固定的,你占的多了,就影响其他人使用带宽。 2.编解码性能,编解码速度越快,肯定就越好。
IT架构圈
2019-05-31
602
0
『互联网架构』软件架构-netty线程模型源码(55)
java
rpc
自动驾驶
1.bootstrap Netty服务端及客户端启动类 2.buffer 缓冲相关,对NIO Buffer做了一些优化、封装 3.channel 处理客户端与服务端之间的连接通道 4.container 连接其他容器的代码,例如Spring 5.handler 实现协议编解码等附加功能 6.logging 日志 7.util工具类
IT架构圈
2019-05-30
546
0
『互联网架构』软件架构-io与nio线程模型reactor模型(下)(54)
react
自动驾驶
android
编程算法
nio就是解决了传统bio的多线程的问题,而且整个nio代码里面没有一句多线程的代码的,nio的服务端就是一个线程。源码:https://github.com/limingios/netFuture/
IT架构圈
2019-05-30
527
0
『互联网架构』软件架构-io与nio线程模型reactor模型(上)(53)
socket编程
自动驾驶
编程算法
PS:NIO不需要的代码里面根本没有多线程,实际上nio只有一个工作线程,一个线程可以为多个客人服务。
IT架构圈
2019-05-30
502
0
『互联网架构』软件架构-RPC网络传输原理与实现(45)
自动驾驶
rpc
http
dubbo
回顾下:普通RPC框架需要做的:服务的注册,发现,暴露。服务注册包括:调用模块(负载均衡,容错,透明)。RPC协议包括(序列化,编码,传输),其实透明化的远程调用。RPC报文的格式:请求行,请求头和请求体。RPC协议相比HTTP要更加精简,传输的量要更少。今天主要说说传输这块,其实也是最复杂的,说这个意义,感觉只是使用dubbo,其实对开发者的意义不是很大,大家不需要了解底层的业务传输,但是如果要设计一个消息服务器,这可是一般的开发人员可以搞定的。必须有过一定的经验,参考过别人的一个远程实现。了解了这些对d
IT架构圈
2019-05-14
896
0
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
立即学习
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档