51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
WOT技术大会
IT证书
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
全部课程
厂商认证
IT技术
24年11月软考
PMP项目管理
免费题库
在线学习
文章
资源
问答
课堂
专栏
直播
51CTO
鸿蒙开发者社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
鸿蒙开发者社区订阅号
51CTO软考
51CTO学堂APP
51CTO学堂企业版APP
鸿蒙开发者社区视频号
51CTO软考题库
鸿蒙开发者社区
首页
帖子
问答
资源
课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
活动
短视频
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
操作系统
OpenHarmony
HarmonyOS
其他
应用开发
卡片开发
三方库
IDE
其他
设备开发
海思开发板
树莓派
其他
框架语言
C/C++
Java
JavaScript
ArkUI / eTS
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
鸿蒙
HarmonyOS
HarmonyOS NEXT
我为Netty贡献源码|且看Netty如何应对TCP连接的正常关闭(六)
6.主动关闭方发起TCP半关闭流程在TCP半关闭的场景下,主动关闭方需要调用shutdownOutput方法向被动关闭方发送FIN开始TCP半关闭流程。在本小节的示例中,客户端可以在自己的ChannelHandler中调用Channel的shutdownOutput方法来发起TCP半关闭流程。SocketChannelsc(SocketChannel)ctx.channel();sc.shutdownOutput();下面我们就来分析下在netty中对于shutdownOutput的实现。publicclassNioSocketChannelextendsAbstractNioByteCha...
lemonvita
0回复
6244浏览
netty
我为Netty贡献源码|且看 Netty 如何应对TCP连接的正常关闭(一)
写在前面.....本文是笔者肉眼盯Bug系列的第三弹,前两弹分别是:•抓到Netty一个Bug,顺带来透彻地聊一下Netty是如何高效接收网络连接的,在这篇文章中盯出了一个在Netty接收网络连接时,影响吞吐量的一个Bug。•抓到Netty一个隐藏很深的内存泄露Bug详解Recycler对象池的精妙设计与实现,在这篇文章中盯出了一个Netty对象池在多线程并发回收对象时可能导致内存泄露的一个Bug。而在本篇文章中笔者又用肉眼盯出了Netty在处...
lemonvita
0回复
5479浏览
Netty
我为Netty贡献源码|且看Netty如何应对TCP连接的正常关闭(四)
3.TCP连接的异常关闭image.png在本文前边的内容中,我们介绍了TCP数据包中的SYN包,FIN包,ACK包的使用场景,它们都是通过TCP首部协议中的8位控制位来标识,不同的控制位代表不同的含义。第二小节介绍的内容均属于TCP在正常情况下进行的连接的建立,发送数据,关闭连接。而现实中情况往往是复杂的,TCP连接不可能总是处于正常的状态,那么当TCP连接出现异常时,就需要有一种机制让我们来强制关闭连接,这个就是本小节要介绍的RS...
lemonvita
0回复
5355浏览
Netty
我为Netty贡献源码|且看Netty如何应对TCP连接的正常关闭(五)
4.Netty对RST包的处理同TCP正常关闭收到FIN包一样,当服务端收到RST包后,OPREAD事件活跃,Reactor线程再次来到了AbstractNioByteChannelread方法处理OPREAD事件。publicabstractclassAbstractNioByteChannelextendsAbstractNioChannel{Overridepublicfinalvoidread(){finalChannelConfigconfigconfig();..........省略连接半关闭处理..................省略获取allocHandle过程.......ByteBufbyteBufnull;booleanclosefalse;tr...
lemonvita
0回复
4958浏览
Netty
【直播回顾】OpenHarmony知识赋能六期第三课—OpenHarmony智能家
【直播回顾】OpenHarmony知识赋能六期第三课—OpenHarmony智能家居项目之控制面板功能实现7月14日晚上19点,知识赋能第六期第三节直播《OpenHarmony智能家居项目之控制面板功能实现》,在OpenHarmony开发者成长计划社群内成功举行。本次直播是“OpenHarmony开源开发者成长计划项目”举办的知识赋能系列直播之一,在开发者中引发了高度关注。此系列直播已经走过了5期,共28节课,23名技术大咖倾囊相授,从开源实战项目总结经验,...
OpenHarmony开发者
0回复
4520浏览
OpenHarmony
直播
干货
使用 Prometheus 进行黑盒(blackbox) 监控
作者阳明来源k8s技术圈(ID:kube100)前面我们主要介绍了Prometheus下如何进行白盒监控,我们监控主机的资源用量、容器的运行状态、数据库中间件的运行数据、自动发现Kubernetes集群中的资源等等,这些都是支持业务和服务的基础设施,通过白盒能够了解其内部的实际运行状态,通过对监控指标的观察能够预判可能出现的问题,从而对潜在的不确定因素进行优化。而从完整的监控逻辑的角度,除了大量的应用白盒监控以外,还应该添加...
xiaxinyj
1回复
2.1w浏览
Prometheus
监控
梅科尔工作室-小熊派开发环境搭建
首先在Gitee上这里下载六个文件https:gitee.combearpibearpihmnanoblobmasterapplicationsBearPiBearPiHMNanodocsquickstartBearPiHMNano%E5%8D%81%E5%88%86%E9%92%9F%E4%B8%8A%E6%89%8B.mdhttps:gitee.comlinktargethttp%3A%2F%2Fwww.wch.cn%2Fsearch%3Fq%3Dch340g%26t%3Ddownloads下载完成后,找到并安装好这三个软件然后,打开VMware,启用虚拟机,账户密码是bearpi,后续涉及到账号和密码的都是这个。右键打开终端,输入ifc...
qq62cfe630f0b33
0回复
4687浏览
小熊派
物联网
小熊派学习(二)-开发板介绍
梅科尔工作室欢1.BearPiHMNano开发板:基于STM32L431RCT6设计的高性能物联网开发板1.1电路连接关系如下:系统由USB5V供电,经过DCDC降压至3.3V给系统大部分器件供电,为系统主要电源;板载STLink与MCU采用SWD接口;8MFlash采用四线QSPI与MCU连接;SD卡采用三线SDMMC协议与MCU交互;E53扩展接口支持SPI、I2C、UART等协议;开发板自带1.44寸LCD,属于SPI4line接口;通信模块扩展接口可接UART和SPI协议通信的通信模组;LED灯、按键...
Sherry辛巳
0回复
9362浏览
小熊派
小熊派之上手开发的第一天(搭建环境)
BearPiHMNano开发板开发板功能介绍按键电路原理图LED灯电路原理图NFC电路原理图E53接口电路原理图E53接口电器标准开发环境搭建十分钟上手教程,链接:https:gitee.combearpibearpihmnanoblobmasterapplicationsBearPiBearPiHMNanodocsquickstartBearPiHMNano%E5%8D%81%E5%88%86%E9%92%9F%E4%B8%8A%E6%89%8B.mdbearpihmnano%E5%8D%81%E5%88%86%E9%92%9F%E4%B8%8A%E6%89%8B%E6%95%99%E7%A8%8B展示我的搭建环境页面mobaxterm展示RaiDrive展示VMwareWorkStation展示启动前启动后
深林遇见鹿
0回复
5505浏览
BearPi-HM Nano
一文搞懂Netty发送数据全流程 | 你想知道的细节全在这里(六)
4.flush从前面Netty对write事件的处理过程中,我们可以看到当用户调用ctx.write(msg)方法之后,Netty只是将用户要发送的数据临时写到channel对应的待发送缓冲队列ChannelOutboundBuffer中,然而并不会将数据写入Socket中。而当一次read事件完成之后,我们会调用ctx.flush()方法将ChannelOutboundBuffer中的待发送数据写入Socket中的发送缓冲区中,从而将数据发送出去。publicclassEchoServerHandlerextendsChannelInboundHandle...
lemonvita
0回复
7821浏览
write
一文搞懂Netty发送数据全流程 | 你想知道的细节全在这里(四)
3.3ChannelOutboundBufferChannelOutboundBuffer其实是一个单链表结构的缓冲队列,链表中的节点类型为Entry,由于ChannelOutboundBuffer在Netty中的作用就是缓存应用程序待发送的网络数据,所以Entry中封装的就是待写入Socket中的网络发送数据相关的信息,以及ChannelHandlerContextwrite方法中返回给用户的ChannelPromise。这样可以在数据写入Socket之后异步通知应用程序。此外ChannelOutboundBuffer中还封装了三个重要的指针...
lemonvita
0回复
7400浏览
Entry
一文搞懂Netty发送数据全流程 | 你想知道的细节全在这里(五)
3.3.5向ChannelOutboundBuffer中缓存待发送数据在介绍完ChannelOutboundBuffer的基本结构之后,下面就来到了Netty处理write事件的最后一步,我们来看下用户的待发送数据是如何被添加进ChannelOutboundBuffer中的。publicvoidaddMessage(Objectmsg,intsize,ChannelPromisepromise){EntryentryEntry.newInstance(msg,size,total(msg),promise);if(tailEntrynull){flushedEntrynull;}else{EntrytailtailEntry;tail.nextentry;}tail...
lemonvita
0回复
6925浏览
write
小熊派学习(一)-开发环境搭建
梅科尔工作室欢1.进行小熊派开发,首先需要软件安装,搭载编译环境具体会用到的软件如下:1.镜像虚拟机:编译时必须打开2.支持创建SSH,Telnet,Rsh,Xdmc,RDP,VNC,FTP,SFTP,串口(SerialCOM),本地Shell,Mosh,Aws,WSL(微软子系统)等超多连接功能。MobaXterm提供了人性化的操作界面,支持与主流的操作系统连接进行控制和管理操作,应用时必须打开虚拟机3.就是把网络上的存储盘(网盘)映射到电脑的本地存储:考录时必须打开4.代码编...
Sherry辛巳
0回复
5822浏览
小熊派
一文搞懂Netty发送数据全流程 | 你想知道的细节全在这里(一)
本系列Netty源码解析文章基于4.1.56.Final版本主从Reactor组完整结构.png在《Netty如何高效接收网络数据》一文中,我们介绍了Netty的SubReactor处理网络数据读取的完整过程,当Netty为我们读取了网络请求数据,并且我们在自己的业务线程中完成了业务处理后,就需要将业务处理结果返回给客户端了,那么本文我们就来介绍下SubReactor如何处理网络数据发送的整个过程。我们都知道Netty是一款高性能的异步事件驱动的网络通讯框架,...
lemonvita
0回复
7936浏览
Netty
“中国芯”再添猛将,字节或将自研芯片!
据曝料,字节跳动或准备自研芯片,大招芯片工程师,不惜从华为海思、ARM重金挖人。目前互联网三巨头BAT都在造芯,而字节跳动的加入,势必会带来国内芯片研发的又一波浪潮。01字节跳动重金挖人加码芯片研发据《科创板日报》报道,字节跳动正招聘大量芯片相关工程师岗位,包括SoC和Core的前端设计,模型性能分析,验证,底层软件和驱动开发,低功耗设计、芯片安全等。据了解,字节芯片研发团队已组建1年多,目前主攻方向分为服务...
开源news
0回复
6403浏览
字节
芯片
自研芯片
BearPi-HM Nano开发板介绍
1物联网常见通讯协议不同协议之间侧重点不同2物联网设备接入方式3鸿蒙设备开发3.1环境搭建3.2内核开发3.3驱动子系统开发4通信扩展板案例集
wx62cfebb440d85
0回复
4967浏览
新手学习
梅科尔工作室-#14天鸿蒙设备开发实战#开营直播笔记
原创
[toc](目录)开营直播笔记直播回放链接:[鸿蒙设备如何从0到1联网上云云视界Live直播云社区华为云(huaweicloud.com)](https:bbs.huaweicloud.comlivecloudlive202207111930.html)物联网开发概述物联网典型层级架构端,信息收集和信号处理边,本地数据自治、低时延管,接入和传输网络云,多协议多网络设备连接数据分析和处理行业应用,数据呈现及客户交互物联网常见通信协议CoAP是受限制的应用协议(ConstrainedApplicationProtoc...
zzuliGjq
0回复
6790浏览
小熊派
华为云
HarmonyOS
物联网
一文搞懂Netty发送数据全流程 | 你想知道的细节全在这里(二)
3.write方法发送数据write事件传播流程.pngabstractclassAbstractChannelHandlerContextimplementsChannelHandlerContext,ResourceLeakHint{OverridepublicChannelFuturewrite(Objectmsg){returnwrite(msg,newPromise());}OverridepublicChannelFuturewrite(finalObjectmsg,finalChannelPromisepromise){write(msg,false,promise);returnpromise;}}这里我们看到Netty的写操作是一个异步操作,当我们在业务线程中调用channelHand...
lemonvita
0回复
7501浏览
Netty
一文聊透Netty IO事件的编排利器pipeline |详解所有IO事件(三)
3.pipeline中的事件分类在前边的系列文章中,笔者多次介绍过,Netty中的IO事件一共分为两大类:inbound类事件和outbound类事件。其实如果严格来分的话应该分为三类。第三种事件类型为exceptionCaught异常事件类型。而exceptionCaught事件在事件传播角度上来说和inbound类事件一样,都是从pipeline的HeadContext开始一直向后传递或者从当前ChannelHandler开始一直向后传递直到TailContext。所以一般也会将exceptionCaught事件统...
lemonvita
0回复
6195浏览
netty
一文聊透Netty IO事件的编排利器pipeline |详解所有IO事件(一)
1.前文回顾在前边的系列文章中,笔者为大家详细剖析了Reactor模型在netty中的创建,启动,运行,接收连接,接收数据,发送数据的完整流程,在详细剖析整个Reactor模型如何在netty中实现的过程里,我们或多或少的见到了pipeline的身影。Reactor启动后的结构.png比如在Reactor启动的过程中首先需要创建NioServerSocketChannel,在创建的过程中会为NioServerSocketChannel创建分配一个pipeline,用于对OPACCEPT事件的编排。当NioSe...
lemonvita
0回复
6134浏览
Netty
暂无内容
1
356
357
358
359
360
361
362
363
364
484
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅