分类归档:技术尝鲜

Red5性能测试

最近一直在做Red5的直播与视频开发,虽然Red5提供了与FMS趋同的功能,但对于Red5的性能我们一直不太清楚,如果想大规模使用Red5作为我们的生产服务器,那么还需要对它进行一些性能测试,以此来验证它是否能满足我们的需求.

测试概要

对Red5进行压力测试与性能测试,其中Red5版本为1.0.0-RC1.

测试环境

硬件环境:CPU:Intel i3-2100@3.10GHz,内存8G
软件环境:Red5,CentOS
网络环境:1000M
阅读全文…

java nio详解

游戏服务端核心是socket服务,而java提供了传统的bio与nio,而要满足服务端的高性能与高并发无疑要选择nio作为开发首选.

什么是nio

nio即non-blocking io,nio是基于事件驱动思想的,实现上通常采用Reactor模式.当程序发起io的读或者写操作时是非阻塞的,当socket有流可读入或者可写入时,操作系统会通知应用程序进行处理,处理完后再将流再写回缓冲区或者操作系统.对于网络io来说,主要是连接建立,流读取与流写入三种事件.需要注意的是,linux 2.6以后的版本采用epoll方式实现nio.

什么是aio

aio即async io,同样aio也是基于事件驱动思想的,但实现上通常采用Proactor模式.当程序发起io的读或者写操作时是异步的,只需要调用相应的read或者write方法.当socket有流可读入时,操作系统会将流传入read方法缓冲区,并通知应用程序,而当流有可写入时,操作系统会将流写入完毕后通知应用程序.相比nio,aio不仅简化了开发,而且省去了遍历Selector的代价.但aio只在java 7中提供,而我们目前还是先研究java 6中的nio.
阅读全文…

Red5基础概念

最近产品提了一个在线音视频直播的需求,技术这边主要是java开发,这让我想起了3年前使用的一款red5的开源流媒体服务器,下面会对开发中使用内容进行说明.

red5介绍

Red5是使用java写的开源的Flash流媒体服务器,它支持以下内容:

  1. 将视频/音频文件转化为播放流(支持FLV和MP3)
  2. 录制客户端播放流(仅支持 FLV)
  3. 共享对象
  4. 现场直播流发布
  5. 远程调用(AMF)

阅读全文…

Jersey+Spring构建RESTful Web服务

Jersey介绍

  1. Jersey是JAX-RS的参考实现,它包含三个主要部分,它可以帮助您实现RESTful Web服务.
  2. 核心服务器(Core Server):通过提供JSR 311中标准化的注释和API标准化,可以用直观的方式开发RESTful Web服务.
  3. 核心客户端(Core Client):Jersey客户端API可以让我们与REST服务轻松通信.
  4. 集成(Integration):Jersey还提供可以轻松集成Spring,Guice,Apache Abdera的库.

阅读全文…

第 2 页,共 3 页123