`
yjl49
  • 浏览: 109989 次
社区版块
存档分类
最新评论
文章列表
ejabberd的启动从ejabberd:start() 开始。   application:start(ejabberd). application用来表示一个可以单独启动和停止、并被复用的程序单元。通常一个application都有一个同名的app文件来定义。   对于系统工具(systool)直接调用的app文件必须包含以下几项: description , vsn , modules , registered , applications 我们查看ejabberd.app可以看到以下内容:   {application, ejabberd, ...
自己整了个java项目,里面实现了一些数据库访问、配置文件读取、日志记录的功能,在eclipse上调试运行都OK,但需要发布到服务器上就没辙了。 项目的目录如下:   查了下资料终于搞定,过程如下: 1.将项目调试通过,保证项目本身没有error。 2.在项目上右击export --->选java下的JAR file 点next。 3.全选整个项目,并在复选框中选"export all output folders for check projects" ,export destination中填要生成的jar名,点next。 4.pakeging o ...
%%server1.erl: -module(server1) -export([start/2,rpc/2]) start(Name,Mod)-> register(Name,spawn(fun()->loop(Name,Mod,Mod:init())end)). rpc(Name,Request)-> Name!{self(),Request}, receive {Name,Response}->Response end. loop(Name,Mod,State)-> receive {From,Re ...
1.客户端连接服务器,并发送消息给服务器的处理在ejabberd_c2s中。 ejabberd_c2s 是一个gen_fsm 状态机,在 ejabberd启动时装载。 初始状态为 wait_for_stream,接受形为 {xmlstreamstart, _Name, Attrs} 的消息,其他任何消息都会导致stop。 接受到连接请求,发送feature 请求后状态改为wait_for_feature_request 。 接受到feature 再发送challenge 后,状态改为 wait_for_sasl_response。 经过sasl鉴权后,状态改为 wait_fo ...
Openfire中有一个CacheFactory 工厂类,负责创建各种类型的Cache。 从控制台的Server -> System Propertys 里面可以设置各个Cache的大小,格式为 cache.XXXX.size 1024byte 具体对应的XXXX 为CacheFactory 下 cacheNames.put(Type,Name) 中Name对应的值。
Connection 对于openfire的消息是透传的,只是在原有的消息外面包上一层<route/> 假如openfire 所在ip 为192.168.1.11 服务器上设置的域为 myserver ConnectionManager 所在ip为192.168.1.12 则ConnectionManager 的配置中 <jive> <xmpp> <domain> </domain> 里面填写IP地址会出现问题 填写IP则最终发送到openfire的消息里的to的值为ip,而不是域。所以出现server. ...
  如图Openfire一般启动之后如果有收到客户端发送的数据则会在控制台打印出来。 根据这些信息我们可以很清晰地了解到服务器的数据交互情况,再结合内部的代码和注释,整个Openfire就比较容易搞懂了。 这些信息是由一个叫xmldebugger的插件提供的。 RawPrintFilter这个类负责处理指定内容的信息,可通过在数据库表ofproperty中添加plugin.xmldebugger.c2s 的属性设置,来控制打印信息的开关。 默认情况下为开启。 第二种方法就是直接通过管理控制台来操作: 服务器-->服务器设置-->Debugger Properti ...
客户端A向B 发送文件的过程: 两个XMPP节点之间传输文件一般有三种方式: Out-of-Band Data 具体见XEP-0066:点击打开链接 in-band bytestream 适合传输较小的数据,通过直接携带在XML中进行传输 具体见:XEP-0047:点击打开链接 socks5 通过服务器代理的方式,实现两个节点之间的直接传输   以下为通过socks5 方式传输文件的过程:   1.A向B发送请求查询B是否支持字节流。     2.B返回应答 3.A向服务器发送请求,查询可用的代理 4.服务器应答,返回目 ...
  OfflineMessagetrategy: 离线消息的处理策略类。 1.静态成员变量type 用来设置消息的处理类型,主要包括: 打回 丢弃 存储,在超限情况下打回 存储,在超限情况下丢弃 2.静态成员变量quota 标识最大所能存储的message总和大小默认为100k。 3.支持OfflineMessageListener事件监听器,只要实现此接口并加入到监听器列表,则在消息被打回或存储时可扑捉到相应消息。 4.所有离线消息都存储在表ofoffline中。 OfflineMessageStore: 用来具体处理离线消息的类。 1.用addMessa ...
下载了OpenFire 的源码导入后SSLSocketFactory 可能出现编译出错的情况。 解决方法:将JVM由JRE改为JDK下的JRE。
要在sql server 中批量插入10W条相同的数据。。。。最简单的方法就是找一表已有10W条数据的表然后select 一把。 insert into tableA select 'a','b','c' from tableB; 不用union。
先引入命名空间: using System.Collections; using System.Management; using System.Net; using System.Net.Sockets; 再编写代码如下: public void scanPort() { string availPorts = ""; string usedPorts = ""; ManagementClass manage = new ManagementC ...
delete from tbl_talbe where (col1,col2,col3) in (select col1,col2,col3 from tbl_table group by col1,col2,col3 having count(*)>1) and rowid not in ( select max(rowid) from tbl_table group by col1,col2,col3 having count(*) >1 )    
今天在asp.net下实现一个发短信的功能时需要调用现有的一个URL,并从本地取参数添加到URL上,然后请求此URL。 但参数中含有汉字: public bool SendMMSByHttp(string url) { try { HttpWebRequest req = (HttpWebRequest) HttpWebRequest.Create(UrlEncode(url)); HttpWebResponse res = (HttpWebResponse)re ...
提交时错误信息如下: SVN Error: ***is out of date; try updating........ 原因是当前所使用的文件已经不是最新版本,别人有可能已经做了修改,直接提交会产生冲突。 所以可以先更新到最新版本,再修改提交。
Global site tag (gtag.js) - Google Analytics