12 2011 档案

MySQL FEDERATED 存储引擎
摘要:MySQL中针对不同的功能需求提供了不同的存储引擎。所谓的存储引擎也就是MySQL下特定接口的具体实现。 FEDERATED是其中一个专门针对远程数据库的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件。但通过FEDERATED引擎创建的表只是在本地有表定义文件,数据文件则存在于远程数据库中(这一点很重要)。 通过这个引擎可以实现类似Oracle 下DBLINK的远程数据访问功能。 使用show engines 命令查看数据库是否已支持FEDERATED引擎: Support 的值有以下几个: YES支持并开启DEFAUL... 阅读全文

posted @ 2011-12-23 12:34 心笑峰 阅读(5156) 评论(0) 推荐(0) 编辑

一个S2S通信中的同步、异步问题的解决
摘要:最近在搞Openfire S2S时遇到了一个数据通信时的同步与异步问题。具体描述如下: OF中的基本通信结构如下: 客户端与服务器的通信是同步的,服务器与服务器之间的通信却是异步的:客户端发送一个请求后就会阻塞一段时间,等待服务器的响应;服务器之间则采用消息通知的方式异步交流数据。 所以会出现下面这种情况: 客户端发送消息给服务器A,消息经入口路由到相应的功能模块进行处理,而此时需要从B服务器中获取一些额外的数据,比如验证发送上来的账号是否在另外的服务器有注册。一般情况下数据在本地的话就直接查找处理再给用户返回就行,但在其它服务器时直接返回就会出现结果错误或不完整,不返回则造成客户端超时。 . 阅读全文

posted @ 2011-12-22 17:57 心笑峰 阅读(612) 评论(0) 推荐(0) 编辑

DelayQueue 队列
摘要:DelayQueue----一种有序队列,特点就是只有在队列中的元素到期后才能取出。 1.内存中哪些对象到了超时时间,需要从内存中清除出去。 2.服务器连接中有哪些连接很长时间未操作,需要关闭这些连接 3.任务中有哪些到了执行时间,该进行调度了。简单的方法就是写一个线程不断去检查每一项是否到了时间,但这种方法在队列中的元素非常多的情况下会不准确或太耗费性能,用DelayQueue可完美地解决这个问题。 马上就要过年了,每次回老家都要悲催地去镇上人挤人的网吧上网。下面就拿这个做个例子: 假设镇上开了一家无限大的网吧,每人交一块钱可以上一分钟网(过年时的网吧坑爹程度差不多就这样); 网吧比较老式. 阅读全文

posted @ 2011-12-20 17:14 心笑峰 阅读(300) 评论(0) 推荐(0) 编辑

同步、异步、阻塞、非阻塞---我的理解
摘要:同步、异步、阻塞、非阻塞,涉及到一个问题的两个层面。一个是操作operation/Thread/process 层面,另一个是kernal层面。所有的阻塞、非阻塞都在针对同步的情况下才有效。 同步与异步最大区别在于是否需要底层的响应才能执行下去。 阻塞与非阻塞的区别在于是否能立即返回响应。 一个比较形象的例子如下: 同步-阻塞:我去钓鱼,抛线之后一直站在岸上盯着鱼竿有动静后才拉杆。 同步-非阻塞:我去捕鱼,拿一个大网捞一下,有没有鱼立马可以看出来,不用等,直接再捞。 异步-阻塞:java中的异步IO,其实取这个名字与上面的例子没多大关系,实在是因为java中使用reactor模式阻塞监听... 阅读全文

posted @ 2011-12-19 21:21 心笑峰 阅读(270) 评论(0) 推荐(0) 编辑

Openfire Could not locate home
摘要:Openfire 开发环境搭建时容易出现Couldnotlocatehome 异常,主要由XMPPServer.java中以下代码引起:private void initialize() FileNotFoundException{ locateOpenfire(); ......}private void locateOpenfire() throws FileNotFoundException{ String jiveConfigName = "conf" + File.separator + "openfire.xml"; // First... 阅读全文

posted @ 2011-12-13 12:38 心笑峰 阅读(3942) 评论(1) 推荐(0) 编辑

Openfire Monitoring/jinglenodes plugin error
摘要:运行Openfire 后出现以下报错:Error loading plugin: C:\Program Files\Openfire\plugins\monitoring java.lang.NoClassDefFoundError: org/picocontainer/MutablePicoContainer at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Unknown Source) at java.lang.Cl... 阅读全文

posted @ 2011-12-08 17:07 心笑峰 阅读(2188) 评论(0) 推荐(0) 编辑

Openfire S2S 连接建立与消息发送
摘要:发送给其它服务器的消息由@domain 部分区分,在进入到服务器路由后在RoutingTableImpl.routePacket(Packet packet) 中与发送给本地服务器的消息分离。public void routePacket(JID jid,......){ boolean routed = false; if(serverName.equals(jid.getDomain())){ routed = routeToLocalDomain(jid,packet,fromServer); } else if(jid.getDomain().contain... 阅读全文

posted @ 2011-12-02 12:54 心笑峰 阅读(1243) 评论(0) 推荐(0) 编辑

Openfire S2S 监听与消息处理
摘要:Openfire中Server to Server 连接默认使用5269 端口,在管理员后台的Server-->Server Settings --> Server to Server 页面有相应的配置项。首先看Service Enable 项: 在用户选择了 Enabled 填写监听端口 提交后在jsp页面里调用的是ConnectionManager相应的方法:ConnectionManager connectionManager = XMPPServer.getInstance().getConnectionManager(); connectionManager.enable 阅读全文

posted @ 2011-12-01 19:18 心笑峰 阅读(1578) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示