- 博客(119)
- 收藏
- 关注
openfire不再往离线消息表写入数据
问题源于 近期参与一个线上会议,我的两部手机均参与了这个会议,但是其中一个手机处于关机状态,另外一部手机完整的参与了正常会议,整场会议约产生了100多条语音消息;会议结束后关机的手机充电后开机,但是接受的消息只有40多条,这下问题来了,其他的一些消息去哪了呢,于是开始地毯式排查。 排查时记录了下操作顺序。 客户端a(username=14)、b(username=5)、c(us...
2015-08-14 16:45:57
491
原创 拷贝整站的wget神器
命令行记录wget -r -p -np -k https://redis.readthedocs.org/en/latest
2015-06-23 14:23:15
656
php中网页生成图片的方式,类似长微博图片生成器
导读:因媒体站微博传播需要,需在转发文章至新浪微博时能将文章正文已图片形式传播出去,用以提高微博内容转发积极性,顾需要在原有php项目代码中加入网页转图片功能。 在java中网页转图片有已经开源的转换工具,较为简单,php中网页转图片的开源工具很少,少到只有一个半成品(只能通过命令行调用,无法使用php代码生成)html2image(http://www.guangmingsoft.n...
2014-04-20 16:46:26
1265
php的数组传值调用与传址调用
在java中数组的调用默认是是传址调用:主体方法中传递一个数组给某个方法,在该方法内修改了数组的某个值;回到主方法中会发现数组已经发生了改变; 测试代码:public class ArrayTest { public static void main(String[] args){ Map[] maparray=new Map[3]; for (int i = 0...
2014-04-18 13:39:34
557
功能复杂且包含及时通讯功能的app后台系统架构
前言:1.及时通讯开源协议:xmpp2.较好的开源协议的实现:tigase、openfire3.鉴于openfire有成套的后台程序以及客户端程序,部署简单且快速,推荐即时通讯服务端开发的新人优先采用openfire进行二次开发 项目说明:项目为一款职业社交app,客户端功能模块有焦点新闻(首页),群组(可以在没有成为群好友的情况下浏览群消息并评论收藏群消息),会议(可以在...
2014-04-14 23:49:44
416
zend studio开发php 实现控制台输出以及单步调试
php的开发工具 最好用的是zend studio,它是通过eclipse集成php插件开发的,他的使用操作与eclipse类似,所以从java开发转向php开发,首选zend studio zend studio做为ide的缺陷 理论上讲所有的程序开发都可以采用文本编辑代码,使用命令行执行编译,再发布到应用服务器上;但是此种开发方式第一容易写错代码,第二...
2014-04-11 15:36:23
1062
ios应用启动后的自动版本检测方式
今天意外的发现了appstore居然还提供通过url获取json格式的客户端信息链接:http://itunes.apple.com/lookup?id=$id 通过此地址可以获取应用的icon、介绍、截图、版本号以及版本说明 例如请求秘密的json信息:http://itunes.apple.com/lookup?id=839415177 { "re...
2014-04-11 10:04:21
217
hibernate利用mysql的自增张id属性实现自增长id和手动赋值id并存
我们知道在mysql中如果设置了表id为自增长属性的话,insert语句中如果对id赋值(值没有被用到过)了,则插入的数据的id会为用户设置的值,并且该表的id的最大值会重新计算,以插入后表的id最大值为自增值起点 但是如果使用hibernate,也想实现这个mysql的特性的话,怎么做呢? 首先我们看下hibernate的id生成策略: ...
2013-07-25 20:58:01
292
haproxy实现mysql数据库负载均衡
原文haproxy实施mysql负载均衡参考文章:http://www.oschina.nhttp://yongkuang.iteye.com/admin/blogs/newet/question/17_4131 但对照此文实现mysql负载均衡中碰到一些问题,解决这些问题的同时也顺便学习了所涉及到的知识点,在这里一一记录下。 1.在xinetd.d目录下设置了service的...
2013-04-23 00:23:55
213
postgresql 启动以及连接相关问题解决方案
mac系统装上postgresql后,他的路径是/Library/Postgresql/9.2 说明:1.postgresql的启动用户是postgresql,或者是其他用户,总之不能是root,但必须保证该用户拥有postgresql安装后路径的所有权限,最好设置该路径的owner为非root用户2.启动命令为 ${postgres root path}/bin/pg_ctl ...
2013-04-14 14:36:49
886
mysql mac版免安装 解压后无法启动解决方案
因为mysql的启动脚本中会将用户切换成mysql,然后才真正执行启动命令,所以必须确保mysql整个目录的owner是mysql,所以如果碰到mysql启动日志中出现权限问题,请执行 chown -R mysql ${mysql path}...
2013-04-14 13:52:06
260
mac 远程桌面 vnc viewer无法登录 解决方案
前置条件:1.mac 开启了远程桌面共享,并且曾经登录过远程桌面2.ssh能连上mac,能进root权限 现状:1.ssh可以正常使用2.在mac电脑前能通过登录界面登录进系统3.在网络上其他电脑能通过vnc viewer进入系统登录界面,但是无法输入用户名密码,或者无法登录,或者登录后vnc viewer崩溃 解决方案ssh进系统>切换root账户...
2013-04-14 08:53:48
7711
黑苹果 system uptime in nanoseconds 解决方案
黑苹果10.6.3升级到10.6.8后启动先出现waiting for boot device;bios中设置SATA模式为ahci后正常进系统;关机后再进黑苹果出现system uptime in nanoseconds;联想到之前切换过sata模式,又在bios中设置sata模式为ide,进一次windows系统,再关机,再设置bios硬盘切换ahci模式,再进系统ok,目前测试有效,还不...
2013-04-08 20:51:25
14237
nginx echo 输出 检查配置正确性
在上篇文章中,我们有用到变量去控制该域名是否允许访问,在配置过程中,其实变量的值一直是我们想象的,无法确认具体步骤的变量值,因此我希望能在每个步骤中将变量的值打印出来,这是nginx 的echo模块粉墨登场。1.nginx 的echo模块的介绍 echo模块式国人编写的nginx的第三方模块,下载官方nginx后需要再下载echo模块,并且配合nginx编译安装,安装此模块后可以在ng...
2013-04-06 22:53:24
900
原创 苹果开发证书相关使用心得
需求:近期我们的苹果开发者帐号已经满一年了,缴费后面临部分app的升级,升级过程我们需要用到苹果的新的发布证书、新的配置文件以及新的推送证书 1.获取新的发布证书,这个操作和第一次操作是一样的2.获取新的配置文件:登录苹果开发者中心》配置》配置文件》发布配置》找到expired的证书》右侧modify》切换radiobutton单选框,再切换回来》submit》download即可...
2013-01-27 09:42:51
271
tail 跟踪动态文件内容
命令格式:tail -n 100 -f 动态文件名 可用地方:tomcat通过后台启动时,我又想跟踪下日志,vi的话文件太大,而且只能看到vi命令前产生的文件,无法看到vi时以及后续新产生的日志,而以上命令则可以看到最新的100行记录,并且实时刷新 ...
2013-01-19 23:53:22
258
linux(centos)发送带附件的邮件
前言:用程序发送邮件有3种方式,分别是:1.模拟http请求邮件服务商网页实现邮件的发送2.如果邮件服务商开通了smtp服务,那么可以通过smtp协议通过邮件代理服务商发送邮件3.自己部署邮件服务器,直接在邮件服务器上发送邮件 前边两种方式相对简单,其实都可以理解为使用他人的邮件服务器发送邮件,相对来讲会过于依赖第三方的邮件服务器提供的服务,并且在发送邮件时邮件会先进邮件代理...
2013-01-16 23:26:28
1397
nginx限制域名访问
背景:一个未备案的域名恶意解析到我司的服务器,导致服务器托管服务商认为我司故意不备案域名,服务商准备停掉我们的服务器的接入 解决思路:1.通过防火墙限制域名访问2.设置代理服务器,对于域名不是我司注册的一律限制访问 开始是希望通过防火墙去限制域名的访问,这样开销应该是最小的,但仔细想发现防火墙应该是解决不了这个需求,因为域名解析是在域名服务商那做的,在通过...
2013-01-14 21:05:27
4997
原创 nginx keepalive_timeout 设置策略
1.项目环境:nginx(前段代理,仅作代理用途)+3个tomcat(都在同一个服务器上),做的web项目2.涉及到的业务逻辑:文件上传(可能有大文件,比如说android游戏,100m);客户端接口请求;网站后台管理3.问题重现流程: 3.1 配置好tomcat后,直接加上nginx前段代理(仅配置了http代理) 3.2 问题一:当管理员后台上传文件时,大文件无法上传成...
2012-12-24 16:11:51
1750
项目运行期间热插拔接口实现类
需求来源: 在一个移动广告平台中,需要在广告平台运行期间接入app广告主;广告主要求app的推广效果的流程为,广告平台中发现有用户下载app时候,广告平台需要将此下载数据上报给广告主服务器;app安装激活时广告服务器会将此安装数据和下载数据对比,如果广告平台有上报此app的下载的话则视为此app的激活时广告平台的推广效果 但是问题在于一个广告平台需要对接多个广告主,而每个广告主对上...
2012-12-16 00:30:55
707
技术新人如何成长
1.代码规范(建议google搜索下) 1.1 减少重复代码编写,尽量让代码复用性高 1.2 理解java一次编译多处运行的好处,重视编码符号在不同操作系统下的通用性,“\”不能在linux识别 1.3 理解面向对象设计思想,每个类代表一个对象,做对象该做的事情,接受对象应有的属性 1.4 理解异常处理,用户面向的界面必须是友好的,不能出现用户无法理解的错误信息,所以异常的规...
2012-10-23 14:58:22
173
android proguard注意事项(json的解析请注意)
客户端混淆打包后客户端出现部分数据无法解析,主要原因是1.proguard中需要加入泛型支持2.需要序列化的class 的get,set方法名不能混淆3.第三方应用类库的jar包不要参与混淆另外,所有需要序列化的model类一定要实现 java.io.Serializable 附件为一份可用的proguard文件...
2012-09-26 17:56:04
200
html5 实现摇一摇功能
需求:利用html5实现类似微信的手机摇一摇功能,并实现微博转发 难点:1.监控摇动状态2.播放摇动后音频 难点一,通过html5的DeviceMotionEvent实现,核心代码如下 var SHAKE_THRESHOLD = 3000; var last_update = 0; var x=y=z=last_x=last_y=la...
2012-09-18 22:32:53
265
原创 依据记录总数和每页大小取页数
例如:总记录数为totalrow,每页显示数为pagesize,现在要求总页数totalpage 1 常用方法:整除,判断余数,余数大于0,整除结果加1。 if(totalrow%pagesize==0) totalpage=totalrow/pagesize;else totalpage=totalrow/pagesize+1;...
2012-09-09 17:36:32
941
mysql插入中文数据出现Incorrect string value: '\xE5\xAE\x89\xE5\xBE\xBD' for column问题解决方案...
在windows下mysql建表是默认是采用latin字符集,在建表时没有去设置编码;后边考虑到编码问题后修改charset为utf8;但是直接在命令行插入中文字段时,会提示“Incorrect string value: '\xE5\xAE\x89\xE5\xBE\xBD' for column”;思来想去,编码都已经修改了,怎么会还出现这些提示,copy建表语句时才发现,原来每个字段后边都跟着...
2012-08-21 21:40:17
2788
1
android apk文件加壳方法
1.apktool 反编译apk文件,得到反编译后文件夹(assets(项目原始的assets),smali(项目的经过特殊处理的代码库,后缀smali),res(项目原始res),AndroidManifest.xml(项目原始manifest文件))2.创建一个新的android项目,实现相关的类(尽量不去使用xml,所有需要用到的内容用代码实现),并生成apk文件3.使用apktoo...
2012-08-14 14:40:09
380
android 单套drawable下的屏幕自适应
自适应问题。一个公式 px=dip*(density/160);(density/160)在android系统中对应 DisplayMetrics.density在一固定的手机上它是一个常数,0.75,1,1.5。等。有了这个常数用dip做单位在不同手机上就有不同的px了。这就是缩放原理。drawable-hdpi、drawable-mdpi、drawable-ldpi中的图片是自动选择的...
2012-08-04 17:00:55
363
腾讯微博开放平台 android登录界面显示为pc登录界面 解决方案
腾讯微博开放平台的登录授权一直没有官方的sdk,下载的sdk开始正常使用无问题,但是某天,我们用htc g10 android2.3(有刷过机)使用腾讯微博账号登录,发现登录界面显示为pc上的授权页面,从而导致无法登录;开始我们认为是腾讯对浏览器做了判断,不同httpheader返回不同的页面,经过反复测试得到三种显示方式: // 不设webview user-agentDalv...
2012-07-24 09:30:03
236
原创 android,ios之资源回收
android和ios由于均安装在手持设备上,性能会受到硬件的制约,当硬件资源不够(特别是内存不够)的时候会回收部分资源,表现得最会突出的两点:1.android应用在机器内存资源不足的情况下,后注册系统的service不会被执行2.ios应用在机器内存不足的情况下,不在栈顶的view中的资源会被回收,即调用view.didunload(),重新返回此view时又会调用view.didlo...
2012-07-19 22:59:33
200
原创 mysql双机热备份
参考:http://www.cnblogs.com/brucexuyg/archive/2012/07/02/2573161.html 写道一、主从热备主数据库服务器:W服务器 备份服务器:L服务器 1.1 主服务器配置(W服务器上myql服务的配置)先配置W服务器上的mysql.ini信息,主要是在配置文件里[mysqld] 节点下添加如下三行代码 log-bin= #二进制日志路径...
2012-07-17 17:08:01
105
nginx tomcat负载均衡之文件上传访问策略
多服务器负载均衡的策略有多种,其中为目前大多数大型网站所采用的就是nginx做前端代理,后端链接多台jsp,php,cgi等网站服务器;近来一个项目可能会存在较大大访问量(预期日均用户量50万,最大并发数5万),项目开发采用的语言是java,有一个网站管理后台(系统管理员用的,访问量不大),另外有50多个接口向外提供ios,android客户端访问,预设服务器运行环境是tomcat,为了适应大...
2012-06-24 16:32:58
739
原创 struts2 action 同步锁 策略
1.action中的流程是这样的: 1.查询数据库字段field值为a的记录是否存在2.若1存在,返回此记录,流程终止3.若1不存在,new 一个对象,并写入数据库,并返回此对象,流程终止 但是数据库必须保证数据库字段field的值在数据库中不能有重复。 2 如果不做任何处理,当并发量大的时候,由于查询和写入之间存在时间差,所以会出现数据库字段fie...
2012-06-05 11:40:53
695
原创 iphone 自定义颜色的 圆角矩形
首先选择button的type为customer然后设置背景色这个时候会发现界面显示的是直角矩形此时在界面代码的界面初始化方法中 增加此矩形的圆角设置first of all import this in your .m file -#import <QuartzCore/QuartzCore.h>and then in your loadView me...
2012-05-31 18:00:40
140
objective-c id的意义
id用于指代任意实体对象的存放路径;比如说id=(NSString *)id=(NSDictionary *) 如果一个函数的参数是id那么此处需要传指针值,比如说NSString *test=[NSString allo] init];那么传输的参数是test; 如果一个函数的参数是(id *)那么此处需要传指针值的索引值,比如说NSString *te...
2012-05-31 09:14:17
174
原创 火狐对于同一个url请求的发送是单线程的
火狐对于同一个url请求的发送是单线程的,只会等上一url有返回值才会发起下一次http请求,web开发需要注意下,ie则是可以多线程
2012-05-26 11:23:12
221
原创 appstore中发布 iphone客户端时要求icon大小为 57*57px
appstore中发布 iphone客户端时要求icon大小为 57*57px
2012-05-23 10:09:35
284
原创 key+sign方式签名认证方式的排序说明
签名认证方式的排序说明: 签名认证方式的排序说明:用key=value整个字段作为排序依据修改之前仅仅使用key值排序的方式
2012-05-23 10:08:41
1917
原创 android gridview 行高设置
android gridview设置行高:问题来源:gridview中设置列数为3的时候布局代码:“ <GridView android:id="@+id/main_coupon_content_shop" android:layout_width="fill_parent" ...
2012-05-23 10:07:29
324
android中,handler处理信息中弹出提示框注意事项
android中,当执行线程后退出界面,这时线程还是会执行,并调用handler,handler中如果有用到调用自身context的话,程序将崩溃,此时一个较好的解决办法是在handler的第一行执行if(AboutusActivity.this==null||AboutusActivity.this.isFinishing()){ return;...
2012-05-23 10:06:50
906
原创 中英文在不同编码中占用字节数
一个英文字符在各种编码中均占用一个字节一个中文字符在gbk编码中占用2个字节一个中文字符在utf8编码中占用3个字节
2012-05-23 09:32:06
525
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人