码迷,mamicode.com
首页 > 2015年02月04日 > 全部分享
OpenFire源码学习之二十:在openfire中使用redis插件(下)
插件实现 首先来看下插件目录: RedisServicePlugin 源码清单: import java.io.File; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.Collection; import java.util.HashMap; import jav...
分类:其他好文   时间:2015-02-04 09:33:43    阅读次数:406
OpenFire源码学习之二十一:openfie对用户的优化(上)
用户类 优化用户主要是要解决用户的连接量。已经对用户的访问速度和吞吐量。 预初始化 在前面的带面中提出来了用户的预初始化。这里就不在贴出来了。下面将redis用户库连接池处理贴出来UserJedisPoolManager public class UserJedisPoolManager extends BasicModule{ private static final Logger...
分类:其他好文   时间:2015-02-04 09:31:27    阅读次数:285
OpenFire源码学习之二十二:openfie对用户的优化(下)
用户名片 在预初始化中,贴出来用户名片的程序。这里也一样不在重复。 首先同样先修改系统属性: provider.vcard.className org.jivesoftware.util.redis.expand.RedisVCardProvider 然后需要修改VCardManager名片管理这个类。 RedisVCardProvider:...
分类:其他好文   时间:2015-02-04 09:31:32    阅读次数:261
OpenFire源码学习之二十三:关于消息的优化处理
消息处理 之前有说过,openfire的消息处理策略本人并不是很喜欢。先看下openfire上脱机消息策略。 个人认为消息关于会话的消息,用户的存储量应该无限大。服务器不应该被消息吃撑了。所谓聊天通讯,这一关很重要。 Openfire的消息是什么流程呢。 1、当用户登陆连接的时候。握手、认证、绑定资源、获取花名册、获取离线消息。 2、服务端会查找关系型数据库。经本人测试离线消...
分类:其他好文   时间:2015-02-04 09:31:10    阅读次数:413
第3篇 工厂方法模式
1.什么是工厂方法模式          在简单工厂模式中,我们有一个物品的抽象类,然后我们需要具体的物品的时候,通过一个工厂类来创造这些物品。而在工厂方法模式中,我们把工厂也变成抽象的。当需要生产某个物品的时候我们再建一个专门生产该物品的工厂类,这个工厂类实现工厂类,只负责生产某个具体的物品。物品,具体物品,工厂,生产具体物品的工厂四者的关系为:                   ...
分类:其他好文   时间:2015-02-04 09:32:19    阅读次数:156
Codeforces Round #290 Div1 A
Codeforces Round #290 Div1 A Problem   给N串字符串Si,通常定义字典序大小关系为 'a' Limits Time Limit(ms): 2000 Memory Limit(MB): 256 N: 100 |Si|: 100 Solution   用图论方法解决,发现满足拓扑关系。枚举相邻两串Si 与 S(i+1),若发现Si...
分类:其他好文   时间:2015-02-04 09:29:58    阅读次数:191
【BZOJ 1690】 [Usaco2007 Dec]奶牛的旅行
01分数规划求最优比例环~...
分类:其他好文   时间:2015-02-04 09:29:50    阅读次数:204
hihoCoder - 1094 - Lost in the City (暴力枚举!!)
#1094 : Lost in the City 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi gets lost in the city. He does not know where he is. He does not know which direction is north. Fort...
分类:其他好文   时间:2015-02-04 09:30:13    阅读次数:181
OpenFire源码学习之二十五:消息回执与离线消息(下)
这一篇紧接着上面继续了。 方案二 基于redis的消息回执。主要流程分为下面几个步骤: 1)将消息暂存储与redis中,设置好消息的过期时间 2)客户端回执消息id来消灭暂存的消息 3)开通单独线程论坛在第1)步中的消息。根据消息的时间重新发送消息。如果消息第一次存放的时间大雨有效期(自定义10秒),解析消息中的to查找用户是否还在线。如果在则T掉(因为它长时间不理会服务的重要命...
分类:其他好文   时间:2015-02-04 09:30:53    阅读次数:599
在Android中自定义适配器
啊喂,好久没更新博客了,唉唉,真是抱歉啊!求原谅! 1、自定义列表项适配器的主要方法是: ①public int getCount()=====>此方法用来控制列表项的个数 ②public View getView(int position, View convertView, ViewGroup parent)====>此方法用来控制页面 2、自定义适配器在实际开...
分类:移动开发   时间:2015-02-04 09:29:23    阅读次数:182
【BZOJ 1095】 [ZJOI2007]Hide 捉迷藏
树上两点间距离转化为括号序列~ 用线段树维护~...
分类:其他好文   时间:2015-02-04 09:31:32    阅读次数:235
java求素数算法
求100内的素数: public void a() { for (int i = 2; i <= 100; i++) { int temp = (int) Math.sqrt(i); // 我把那个aqrt单独提出来,这样速度稍微快一点,虽然在100内变化不大,但如果是10000000内的素...
分类:编程语言   时间:2015-02-04 09:28:53    阅读次数:165
Codeforces Round #290 Div1 B
Codeforces Round #290 Div1 B Problem   有一只青蛙在x轴上跳,起初在原点,现有N种跳跃技能可以购买,每技能有两属性:跳跃长度Li 以及 花费Ci。若购买了第 i 种技能,则可以从 y 位置跳跃到 y+Li 或者 y-Li 位置,但需花费Ci 元。求最小花费使得青蛙可以跳到每一个整数点上,若无法做到,输出-1。 Limits Time Limit...
分类:其他好文   时间:2015-02-04 09:29:05    阅读次数:133
ZOJ 1409 Communication System
这题用的是贪心算法,不过在贪心之前还是要进行部分处理的。 首先就是题目要求B/P尽可能的大,所以P应该尽可能的小,B应该尽可能的大。但是B和P的处理方式是不一样的,B是所有带宽中最小的那一个,P是所有设备的总价钱,所以我能想到一个方法就是一个一个的枚举B,本来我是不敢这样想的,可是题目给的时间比较长,我觉得应该问题不大,当我运行之后,竟然只是0ms,让我吃了一惊。然后再选择设备,这时候就要用到贪...
分类:其他好文   时间:2015-02-04 09:31:34    阅读次数:160
【题解】CODEVS 1993 草地排水
CODEVS 1993 草地排水 Description 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地就积聚了一潭水。这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间。因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没的烦恼(不用担心,雨水会流向附近的一条小溪)。作为一名一流的技师,农夫约翰已经在每条排水沟的一端安上了控制器,这样他可以控制流入...
分类:其他好文   时间:2015-02-04 09:28:57    阅读次数:239
【BZOJ 1090】 [SCOI2003]字符串折叠
区间dp~...
分类:其他好文   时间:2015-02-04 09:29:37    阅读次数:190
三角形面积
三角形面积 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积 输入每行是一组测试数据,有6个整数x1,y1,x2,y2,x3,y3分别表示三个点的横纵坐标。(坐标值都在0到10000之间) 输入0 0 0 0 0 0表示输入结束 测试数据不超过10000组 输出...
分类:其他好文   时间:2015-02-04 09:29:06    阅读次数:172
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!