douyu小记
其实douyu这个web容器的小项目比较早前就接触过,今天无意中再次看到这位作者的介绍
,对这位作者还是很敬佩的,不仅仅是技术方面,更多的是那份毅力呀。
douyu这个项目目前主要包括下面几块
<li> douyu- ajp </li>
<span> 这块是很多web容器都支持的一种协议,通常和apache进行通信来使用</span>
<li> douyu- api </li>
<span>作为框架,不免会对外提供一些api规范,类如servlet-2.5/3.0等之类</span>
<li> douyu- core </li>
<span>该框架集成其他几个模块,比较核心的一些类</span>
<li> douyu- examples</li>
<span> 这个是好东西,尤其对于一些想了解一个框架的同学来说</span>
<li> douyu- http </li>
<span>同上ajp</span>
<li> douyu- javac</li>
<span>与其他web容器能够表现出自己独特的魅力,这块是功臣啊</span>
<li> douyu- logging</li>
<span>简易日志包</span>
<li> douyu- mvc </li>
<span>简易的MVC模式的实现</span>
<li> douyu- netty</li>
<span>集成了netty处理用户请求</span>
<li> douyu-plugins</li>
<span>支持一些常见的页面渲染技术的插件,适合扩展</span>
<li> douyu-startup</li>
<span>启动类</span>
以上这些模块,可能很多web容器都是基于这些实现的,但很多不一样的地方,我在这里就不啰嗦了,
大家直接看作者的想法吧,<a href="">http://zhh2009.iteye.com/</a>
作者已是大牛,但没什么,我们还得努力一下,希冀自己有一天也能超越呢?不废话了,我们来简要剖析一下这个
小项目吧,
douyu-startup模块中的Server类,init方法是一些初始化参数,start()方法作为启动方法,可以注入不同connector
包括如http,ajp等不同实现,其中大家可以发现作者有一个抽象类:
<class>Connector</class>
<detail>
<field>host</field>
<field>port</field>
<method abstract>
protected abstract ChannelPipelineFactory getChannelPipelineFactory();
<desc>
抽象方法
</desc>
</method>
<method>
this.config = config;
// Configure the server.
ServerBootstrap bootstrap = new ServerBootstrap(new NioServerSocketChannelFactory(Executors
.newCachedThreadPool(), Executors.newCachedThreadPool()));
// Set up the event pipeline factory.
bootstrap.setPipelineFactory(getChannelPipelineFactory());
// Bind and start to accept incoming connections.
bootstrap.bind(new InetSocketAddress(host, port));
<desc>
看到上面这段代码很好的运用了模版模式,对于可以通用的代码可以提到抽象类提前实现,且在其中调用上面这个抽象方法
</desc>
</method>
</detail>
下面我们再来来看看如何使用netty,设计代码都比较优雅,给了用户一个很好的扩展API
<class>httpConnector</class>
public ChannelPipelineFactory getChannelPipelineFactory() {
return new HttpServerPipelineFactory();
}
今天就到这里,下面再慢慢来和大家分享,学习。
相关推荐
本话题聚焦于如何获取斗鱼直播源数据。首先,我们来理解"斗鱼直播源数据"这一概念。斗鱼直播源数据指的是直播平台上的实时信息,如直播间ID、主播名、观众数量、礼物数据等,这些数据对于分析直播热度、用户行为和...
在C#编程环境中,开发一个实时获取斗鱼直播弹幕的应用涉及到多个技术点,包括网络通信、协议解析以及用户界面的交互。以下是对这个主题的详细解析: 首先,"c#斗鱼直播弹幕实时获取"是核心目标,斗鱼直播平台提供了...
【斗鱼直播间增强插件(Tampermonkey).zip】是一个使用JavaScript编写的浏览器扩展,主要针对斗鱼直播平台进行功能增强。Tampermonkey是一款非常流行的浏览器插件,它允许用户自定义添加JavaScript脚本来修改网页的...
欢迎来到斗鱼直播礼物大全!这份精心整理的文件集合了斗鱼平台上所有可用礼物的详细信息,包括价格和高清图片。无论您是斗鱼的新手用户还是资深粉丝,本汇总都将为您提供有价值的参考,帮助您在直播互动中更加...
斗鱼第三方开放平台API文档v2.11是武汉斗鱼网络科技有限公司提供的一个接口文档,主要服务于开发者,以便他们能够获取斗鱼直播平台的相关信息。这个文档包含了获取直播房间列表和详情、游戏分类等关键接口。 1. **...
斗鱼是中国知名的直播平台,其主页作为用户与平台交互的核心界面,承载了丰富的功能和精美的特效。在分析“斗鱼主页源代码”时,我们可以深入理解网页开发、前端技术、用户体验设计等多个IT领域的关键知识点。 1. ...
【斗鱼弹幕数据分析】 斗鱼弹幕数据分析是一种利用编程技术、统计方法和自然语言处理技术,对在线直播平台斗鱼上的用户产生的弹幕进行深入探究的过程。这种分析旨在揭示观众的行为模式、情感倾向以及对直播内容的...
微信小程序源码-仿斗鱼直播小程序.zip微信小程序源码-仿斗鱼直播小程序.zip微信小程序源码-仿斗鱼直播小程序.zip微信小程序源码-仿斗鱼直播小程序.zip微信小程序源码-仿斗鱼直播小程序.zip微信小程序源码-仿斗鱼直播...
斗鱼Html5播放器Chrome插件,可自动取代斗鱼页面的Flash播放插件,使用html5进行播放。
首先,斗鱼直播作为一个大型的在线直播平台,提供了API接口供开发者进行第三方应用的集成。这里的PHP demo案例是用于演示如何通过编程方式获取和处理斗鱼直播的房间信息,包括房间的状态、主播信息、观众数据等。...
"斗鱼自动发送弹幕 图像匹配"这个项目是利用Python的图像识别和自动化功能来实现的一个具体应用。斗鱼是一个知名的直播平台,用户可以通过发送弹幕与主播和其他观众互动。在这个项目中,开发者创建了一个自动脚本来...
在本文中,我们将深入探讨如何使用Java编程语言来实现斗鱼直播平台的实时弹幕获取功能。斗鱼是一个流行的在线游戏直播平台,它允许观众发送弹幕与其他观众互动。为了实时获取这些弹幕,我们需要利用斗鱼提供的API...
斗鱼弹幕服务器第三方接入协议v1.6.21是武汉斗鱼网络科技有限公司为开发者提供的一个详尽的文档,旨在帮助第三方平台接入斗鱼的弹幕系统,从而获取并展示斗鱼直播间的实时弹幕信息。这个协议基于TCP服务,确保了数据...
【斗鱼直播弹幕助手】是一款专为Windows操作系统设计的Java开发控制台应用程序,它的主要功能是实时获取并显示斗鱼直播平台上的观众发送的弹幕。作为一个专业的IT知识讲解,我们将深入探讨这款工具的工作原理、Java...
【手机斗鱼图片爬虫】项目是基于Python的Scrapy框架设计的一个专门用于抓取斗鱼直播平台上美女主播图片的工具。Scrapy是一个强大的、高效的Web爬虫框架,它允许开发者方便地构建和管理网络爬虫项目。在这个项目中,...
英雄联盟lol直播、穿越火线cf直播、dota2直播、激战2等各类热门游戏赛事直播随时观看,“斗鱼直播”打造全民游戏直播热潮! 【更新说明】 【注意】如遇到版本升级失败,请到斗鱼官网下载最新版本安装。 【优化】...
【斗鱼直播demo】是一个基于斗鱼直播框架的示例项目,主要面向iOS开发者,用于展示如何在Xcode 8及更高版本中集成并实现斗鱼直播功能。这个压缩包包含了一个名为"DouYuZB-master"的源代码仓库,里面应该包含了完整的...
微信小程序 视频直播 仿斗鱼直播小程序 (源代码+截图)微信小程序 视频直播 仿斗鱼直播小程序 (源代码+截图)微信小程序 视频直播 仿斗鱼直播小程序 (源代码+截图)微信小程序 视频直播 仿斗鱼直播小程序 (源...
特别是斗鱼这类知名直播平台,它提供了一个多元化的互动环境,让观众可以一边观看直播,一边通过弹幕进行实时交流。然而,在庞大的用户基数和热闹非凡的互动背后,不时出现的弹幕过载问题也给许多用户的观看体验带来...