叉叉哥的BLOG

Python毁一生,Java穷三代,两者皆不沾,必成高富帅!

    • 主页
    • 归档
    • GitHub
    • 关于

Strophe.js连接XMPP服务器Openfire、Tigase实现Web私聊、群聊(MUC)

XMPP(Extensible Messaging and Presence Protocol)是一种网络即时通讯协议,它基于XML,具有很强的扩展性,被广泛使用在即时通讯软件、网络游戏聊天、Web聊天及Web消息推送、移动设备的消息推送等场景,例如Google的GTalk、《英

2015-01-13

Linux搭建XMPP服务器Tigase(Spark客户端测试)

Tigase是一个基于Java开发的XMPP服务器,类似于Openfire,可用于搭建一个即时通讯(Instant Messaging,简称IM)的平台。 准备在安装Tigase之前,首先需要准备Java环境以及数据库(本文使用MySQL)。 Tigase下载:https://p

2014-11-07

MINA、Netty、Twisted一起学(十):线程模型

要想开发一个高性能的TCP服务器,熟悉所使用框架的线程模型非常重要。MINA、Netty、Twisted本身都是高性能的网络框架,如果再搭配上高效率的代码,才能实现一个高大上的服务器。但是如果不了解它们的线程模型,就很难写出高性能的代码。框架本身效率再高,程序写的太差,那么服务器

2014-10-16

MINA、Netty、Twisted一起学(九):异步IO和回调函数

用过JavaScript或者jQuery的同学都知道,JavaScript特别是jQuery中存在大量的回调函数,例如Ajax、jQuery的动画等。1234$.get(url, function() { doSomething1(); // (3)}); /

2014-10-12

MINA、Netty、Twisted一起学(八):HTTP服务器

HTTP协议应该是目前使用最多的应用层协议了,用浏览器打开一个网站就是使用HTTP协议进行数据传输。 HTTP协议也是基于TCP协议,所以也有服务器和客户端。HTTP客户端一般是浏览器,当然还有可能是其他东西。HTTP服务器,也就是Web服务器,目前已经有很多成熟的产品,例如Ap

2014-09-23

MINA、Netty、Twisted一起学(七):发布/订阅(Publish/Subscribe)

消息传递有很多种方式,请求/响应(Request/Reply)是最常用的。在前面的博文的例子中,很多都是采用请求/响应的方式,当服务器接收到消息后,会立即write回写一条消息到客户端。HTTP协议也是基于请求/响应的方式。 但是请求/响应并不能满足所有的消息传递的需求,有些需求

2014-09-19

MINA、Netty、Twisted一起学(六):session

开发过Web应用的同学应该都会使用session。由于HTTP协议本身是无状态的,所以一个客户端多次访问这个web应用的多个页面,服务器无法判断多次访问的客户端是否是同一个客户端。有了session就可以设置一些和客户端相关的属性,用于保持这种连接状态。例如用户登录系统后,设置s

2014-09-10

MINA、Netty、Twisted一起学(五):整合protobuf

protobuf是谷歌的Protocol Buffers的简称,用于结构化数据和字节码之间互相转换(序列化、反序列化),一般应用于网络传输,可支持多种编程语言。 protobuf如何使用这里不再介绍,本文主要介绍在MINA、Netty、Twisted中如何使用protobuf,不

2014-08-27

MINA、Netty、Twisted一起学(四):定制自己的协议

在前面的博文中,介绍一些消息分割的方案,以及MINA、Netty、Twisted针对这些方案提供的相关API。例如MINA的TextLineCodecFactory、PrefixedStringCodecFactory,Netty的LineBasedFrameDecoder、Le

2014-08-25

MINA、Netty、Twisted一起学(三):TCP消息固定大小的前缀(Header)

在上一篇博文中,有介绍到用换行符分割消息的方法。但是这种方法有个小问题,如果消息中本身就包含换行符,那将会将这条消息分割成两条,结果就不对了。 本文介绍另外一种消息分割方式,即上一篇博文中讲的第2条:use a fixed length header that indicates

2014-08-22
Prev1…34567Next

微信公众号

分类

  • Android2
  • Jaeger1
  • Java22
  • Jetty2
  • Maven6
  • MyBatis1
  • Nginx5
  • Node.js1
  • Redis1
  • Spring Cloud1
  • Spring Framework6
  • Struts 22
  • XMPP2
  • 异步网络编程13
  • 架构1

标签

  • Java51
  • Netty13
  • MINA12
  • Twisted12
  • TCP12
  • Python12
  • Spring Framework8
  • Maven8
  • 线程5
  • Nginx5
  • protobuf3
  • Jetty3
  • JavaScript3
  • Redis3
  • Android2
  • AES2
  • WebSocket2
  • MySQL2
  • XMPP2
  • Tigase2

友情链接

  • 朱晔的博客
  • 杨灿的博客
  • 石尧的博客
  • 倪升武的博客
  • 王根深的博客
  • 蒋宇的博客
  • 曾勇的博客
RSS 订阅

、 皖ICP备15002890号-2

Powered by hexo and Theme by Jacman © 2023 wucao