自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我写我所想!

相信与不相信都是矛盾的!

原创 教你如何把openfire的muc聊天室改造为群

openfire群聊与QQ群对比 应该是去年的时候开始接触openfire,当时在分析后发现基于xmpp协议的openfire已经具备了群聊的功能。也就没太当回事,觉得加点功能就可以做成类似于QQ群的那种模式。后来仔细了解后才发现并不是这么简单: muc其实聊天室的形式,房间创建后可以加入聊天...

2019-09-17 09:52:48 98 0

原创 阿里云SLB出现502 Bad Gateway 错误排查解决方法

502 Bad Gateway The proxy server received an invalid response from an upstream server. 原本系统是通过一个SLB转发到后端ECS上的nginx,由我们自己的Nginx再反向代理了各类服务器,毕竟使用了SLB了...

2019-02-21 09:54:10 2045 0

原创 XMPP协议之消息回执解决方案

苦恼中寻找方法 在开始做即时通信时就知道了消息回执这个概念,目的是解决通讯消息因为各种原因未送达对方而提供的一种保障机制。产生这个问题的原因主要是网络不稳定、服务器或者客户端一些异常导致没有接收到消息。因为产品中使用的是openfire和spark的组合,所以一直就想在这个范围内找一个现成的方案...

2017-05-31 17:51:10 3891 0

原创 使用js在网页上记录鼠标划圈的小程序

Spin-Wheel实现鼠标在网页上转圈时记录转动圈数的小程序,每转一圈记录一次,同时要是顺时针方向的。问题分析与实现这个小程序的难点在于如何知道鼠标完成了一个转圈的动作,而且人工使用鼠标划圈时也不会是一个标准的圆,通常都是很不规律的。这点上我网上找了找发现浏览器的鼠标手势实现了。而且我找了一个人...

2017-03-09 11:58:05 594 0

原创 数据库SQL,NoSQL之小感悟

遇到1000万数据表最近遇到一个问题,就是单表数据过的存储及查询问题。举个例子:1000万的数据存在一个表中,字段4-5个样子,日常 开发中难免要做过滤、排序、分页。如果把这几个放在一起即要过滤又要排序,还要分页那么数据量大一些就会发现特别慢。10多年前刚入行时就听许多的人讨论分页,说什么1000...

2017-02-09 16:49:10 595 0

原创 MongoDB安装与使用体验

1、获取并安装具体的安装包可以到官方网站下载:http://www.mongodb.org/downloads 我看着教程就下载了linux版本吧,也不是很复杂。包的体积有点大。安装过程比较简单,将文件丢到服务器里,然后解压运行./mongod即可。可以参考:http://www.runoob....

2017-02-08 15:55:45 339 0

原创 缓存遇到的数据过滤与分页问题

遇到的问题1、最初阶段系统中做了一个监控功能,用于记录所有的请求数据,数据插入频繁,量非常大,比如一天1000万条。考虑到数据插入的效率,就使用内存KV缓存来保存。写入过程是在接收到请求后放入到线程池中,然后线程池异步处理后写入。到这问题基本上没什么事情。2、新的需求后面数据保存了,就需要在运维系...

2017-01-18 15:55:15 1417 0

原创 大龄程序员的未来

大龄的困惑一转眼工作已经在10年有余,想想如今的现状,实在有些蹉跎。。这两年开始对自己的未来有了许多的思考,特别是从上一家公司出来的时候感触特别的深。面对家庭与生活的压力,很多的无奈。在自己工作了这么多年的后又重新寻找工作,突然发现投简历(内推、猎头)是件很忧伤的事情。自己的未来是什么?怎么样才是...

2016-12-19 10:55:14 5142 4

原创 Tomcat shutdown执行后无法退出进程问题排查及解决

问题定位及排查上周无意中调试程序在Linux上ps -ef|grep tomcat发现有许多tomcat的进程,当时因为没有影响系统运行就没当回事。而且我内心总觉得这可能是tomcat像nginx一样启动多个进程。后来测试在一次升级后反馈说怎么现在tomcat进程无法shutdown?这让我有点意...

2016-11-28 13:55:55 2665 0

原创 Apache Ignite之集群应用测试

集群发现机制在Ignite中的集群号称是无中心的,而且支持命令行启动和嵌入应用启动,所以按理说很简单。而且集群有自动发现机制感觉对于懒人开发来说太好了,抱着试一试的心态测试一下吧。在Apache Ignite中有三种自有的发现机制:组播、静态IP、组播+静态IP。下面就这几种来试一试吧。测试方法简...

2016-11-23 17:06:45 4453 1

原创 Ignite性能测试以及对redis的对比

测试方法为了对Ignite做一个基本了解,做了一个性能测试,测试方法也比较简单主要是针对client模式,因为这种方法和使用redis的方式特别像。测试方法很简单主要是下面几点: 不作参数优化,默认配置进行测试 在一台linux服务器上部署Ignite服务端,然后自己的笔记本作客户端 按1,10,...

2016-11-22 14:54:07 3232 0

原创 学习AOP之深入一点Spring Aop

上一篇《学习AOP之认识一下SpringAOP》中大体的了解了代理、动态代理及SpringAop的知识。因为写的篇幅长了点所以还是再写一篇吧。接下来开始深入一点Spring aop的一些实现机制。上篇中最后有那段代码使用了一个ProxyFactory类来完成代理的工作,从而实现了Aop的Aroun...

2016-11-11 17:53:40 488 0

原创 学习AOP之认识一下Spring AOP

心碎之事要说知道AOP这个词倒是很久很久以前了,但是直到今天我也不敢说非常的理解它,其中的各种概念即抽象又太拗口。 在几次面试中都被问及AOP,但是真的没有答上来,或者都在面上,这给面试官的感觉就是java基础不行。可见这还是挺重要的一个概念。在看工作中也遇到了相关的问题,在RPC的一种实现机制...

2016-11-10 18:17:01 605 0

原创 ApacheIgnite高性能分布式网格框架-初探

Apache Ignite初步认识今年4月开始倒腾openfire,过程中经历了许多,更学到了许多。特别是在集群方面有了很多的认识,真正开始认识到集群的概念及应用方法。在openfire中使用的集群解决方案是代理+分布式内存。所谓代理便是通过一个入口转发请求到多个服务实例。而分布式内存就是解决服务...

2016-11-04 14:23:41 5832 3

原创 Openfire集群源码分析

如果用户量增加后为了解决吞吐量问题,需要引入集群,在openfire中提供了集群的支持,另外也实现了两个集群插件:hazelcast和clustering。为了了解情况集群的工作原理,我就沿着openfire的源代码进行了分析,也是一次学习的过程。   首先理解集群的一些简单概念 集...

2016-10-24 16:50:53 365 0

原创 Openfire的启动过程与session管理

说明   本文源码基于Openfire4.0.2。   Openfire的启动       Openfire的启动过程非常的简单,通过一个入口初始化lib目录下的openfire.jar包,并启动一个XMPPServer实例。   下面就是Serve...

2016-10-24 16:48:12 828 0

原创 记一次tomcat线程创建异常调优:unable to create new native thread

测试在进行一次性能测试的时候发现并发300个请求时出现了下面的异常: HTTP Status 500 - Handler processing failed; nested exception is java.lang.OutOfMemoryError: unable to create ne...

2016-10-24 14:33:20 4839 0

原创 VisualVM通过jstatd方式远程监控远程主机

配置好权限文件[root@test bin]# cd $JAVA_HOME/bin [root@test bin]# vim jstatd.all.policy grant codebase "file:${java.home}/../lib/tools.jar" { ...

2016-10-20 17:38:16 841 0

原创 也聊聊房价

房价高吗?打开手机新闻客户端就能发现大量的关于房价的讨论,有唱多的,也是唱空的。或许大多数人都会有这个疑问,房价高吗?最有趣的事情是加了一个同事群,大家每天聊的话题基本离不开房子。突然感觉和去年刚来杭州时同事都在聊股票情景如此相似呢?印象比较深的一个事情是群里有位同事几个月前还说着要将手上的一套房...

2016-10-11 18:07:01 1010 0

原创 加深一下BlockingQueue的认识

认识BlockingQueueBlockingQueue是一种可以阻塞线程的队列,java中对这种队列提供了方法抽象,BlockingQueue则是抽象的接口。 add:添加元素到队列里,添加成功返回true,由于容量满了添加失败会抛出IllegalStateException异常 offer:添...

2016-10-10 16:44:03 298 0

原创 java中的锁

java中有哪些锁这个问题在我看了一遍synchronized首先来看看用的比较多的synchronized,我的日常工作中大多用的也是它。synchronized是用于为某个代码块的提供锁机制,在java的对象中会隐式的拥有一个锁,这个锁被称为内置锁(intrinsic)或监视器锁(monito...

2016-09-28 17:34:05 1121 0

原创 Http状态码之:301、302重定向

概念 301 Moved Permanently 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。 新的永久...

2016-09-26 10:57:59 16098 0

原创 学点HTTP知识

不学无术又一次感觉到不学无术,被人一问Http知识尽然一点也没答上来,丢人丢到家了啊。平时也看许多的技术文章,为什么到了关键时刻就答不上来呢?确实发现一个问题,光看是没有用的,需要实践。看别人说的头头是道自己也觉得理解了,但发现再让自己复述一遍可能完全就答不上来。这就是因为看别人的文章更像看小说,...

2016-09-23 11:00:05 482 0

原创 java中的字符串相关知识整理

字符串为什么这么重要写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生。每学一门编程语言就会与字符串这个关键词打不少交道。看来它真的很重要。字符串就是一系列的字符组合的串,如果写过C/C++的应该就了解,在字符串的操作上会有许多操作的函数与类,用于简化代码的开发。一方面是因为字...

2016-09-21 14:45:10 372 0

原创 在Openfire上弄一个简单的推送系统

推送系统说是推送系统有点大,其实就是一个消息广播功能吧。作用其实也就是由服务端接收到消息然后推送到订阅的客户端。思路对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息。这样的好处就是有消息后才向客户端推送,相比于拉取数据不会产生许多无效的查询,实时性也高。xmpp这种即时通...

2016-09-13 09:52:16 2394 3

原创 ThreadLocal简单理解

在java开源项目的代码中看到一个类里ThreadLocal的属性: private static ThreadLocal clientMode = new ThreadLocal 印象中在看书的时候见到过ThreadLocal,但突然就想不起它的用处了。。心里一惊感觉当时书白看了。于是马...

2016-08-22 14:57:57 308 0

原创 聊聊从web session的共享到可扩展缓存设计

先从web session的共享说起   许多系统需要提供7*24小时服务,这类系统肯定需要考虑灾备问题,单台服务器如果宕机可能无法立马恢复使用,这必定影响到服务。这个问题对于系统规模来说,从小到大可能面临的难度会相差很大。但对于原理来说其实就是需要准备备份系统随时可以替代正在服务的系统,也就是...

2016-08-19 18:43:22 1286 0

原创 学习笔记:java线程安全

首先得明白什么是线程安全: 线程安全是编程中的术语,指某个函数 (计算机科学)、函数库在多线程环境中被调用时,能够正确地处理各个线程的局部变量,使程序功能正确完成。 这是维基百科里的资料,看完后还不是特别的明白。我自己的理解就是在多线程环境下,某块代码中访问的资源不会发生冲突。 ...

2015-03-06 09:50:41 47 0

原创 (程序)八荣八耻

以动手实践为荣,以只看不练为耻。以打印日志为荣,以出错不报为耻。以局部变量为荣,以全局变量为耻。以单元测试为荣,以手工测试为耻。以代码重用为荣,以复制粘贴为耻。以多态应用为荣,以分支判断为耻。以定义常量为荣,以魔法数字为耻。以总结思考为荣,以不求甚解为耻。

2007-06-08 22:44:00 763 0

原创 快乐的IT时代

     IT这个词汇不知道是从何时道起,已经伴随着人类走到了2007年.如今的IT业已经是传统行业大军中的一位干将,充斥着世界各个角落.作为一个“IT人”,心中盹感快意!     记得有一次与同事聊天说道其家里的产业,我叫他去接受并发展下,没想同事却回道:“我爸那份黄昏产业有什么做头!”,我哑然...

2007-02-27 22:59:00 915 0

原创 写博客后感

 写博客后感——GOOGLE现象将走向何方? 后续  前两天写了一篇GOOGLE现象将走向何方?得到了一些关注,有网友说看我的文章看不懂,有朋友也说我写的好抽象。我在写这篇文章时比较突然,只是兴起!写完没有检查,直接就发出去了。没想过有这么多朋友会去注意。第二天查看博客访问量后才知道上了CSDN的...

2007-01-20 02:08:00 931 0

原创 Vista初体验之后续

上一次我写了有关使用VISTA的一点点感受,微软做的东西还是挺不错的,只是世界上各种情况太多了,他也无法做完美,当然,微软过失也是不少的............................回到正题.这两天拿VISTA想娱乐一下, IE7是没问题了,不知道其他的浏览器是否能在VISTA中使用呢?...

2007-01-14 00:00:00 982 0

原创 VISTA初体验

 前几天装了个VISTA体验了下,确实比较爽,相比以前版本的WINDOWS确实有了些质的改变。以下我说几点我感觉到的方面吧。       下面我就说几点有关界面的一些感觉吧:         1、整个的Explorer在界面上确实有了比较大的改变,界面华丽了不少,窗口有了透明效果。但我觉得这个没有...

2007-01-07 04:46:00 962 0

原创 2006年最后的发表

2006年最后的发表!不写东西,就是留做纪念! 

2006-12-31 23:59:00 763 0

原创 CSDN的BLOG怎么要进入管理界面搞的这么麻烦?

CSDN的BLOG怎么要进入管理界面搞的这么麻烦?不能在个人首页上加个连接直接到后台吗?是否有其他方法可以到后台????郁闷呀.. 

2006-12-28 12:53:00 899 0

原创 BT下载 BitComet

这两天为了下VISTA,弄了BT下载,传说中这玩意神奇,这两天果然让我见识了..是挺爽,但是就是条件太多. 我是上海市有线通网络,1M的带宽.平时HTTP,FTP下载最大速度在120K/S.感觉一般.前两天周未突然想起下个VISTA玩下(刚买了个电脑,试下新系统),在网上找了半天都是BT版的下载,...

2006-12-26 23:07:00 1592 0

转载 关于代码规范我想说这些。

引用CSDN社区的一个贴子。关于说DELPHI代码规范的问题。http://community.csdn.net/Expert/topic/5241/5241608.xml?temp=.8488123 看完之后,我觉得挺有意思,其实这些东西平时都跟大家讨论的一样,都是这么过来的,反正嘛觉得对于新手...

2006-12-21 19:56:00 897 0

原创 关于学历我想说这些

今天看见一篇谈及中专生年收入过10W的文章,看完文章及讨论之后,有感而发.在这里来两句!         我个人认为在现在的社会学历上无需太看重,重应在于学与进。基本上你目前的状况无不与你自己的努力有关,也许你会想说“我努力过,但是现实社会不接受我们!”,我想这可能主要问题还是出在自己身上,谁不接...

2006-12-19 21:39:00 1089 3

原创 关于初学面向对象的几点表述

面向对象是做软件开发的基础,如果这一个最最重要的思想都没有掌握的话,估计谈不上是程序员!在此本人吹吹牛皮,嘿嘿,谈谈我学习面向对象的一些方法和建议!只是初级的哦!        第一,找准一种面向对象的语言,目前来说,JAVA,PASCAL,C++,C#都是比较好的,只不过JAVA和C++之类过于...

2005-02-05 15:48:00 1072 0

原创 学生必读!!~~~

        有些言过其实了。        目前在各大技术论坛中,在广大的开发人员中,在全面的学生团体中,都在讨论一个问题:“什么开发工具好?”这个问题无数人都为之迷茫过,也有无数的人又接着迷茫。        其实我个人认为,有此迷茫是正常的,在MS和BROLAND之间在开发工具的争抢之下,...

2005-02-03 23:04:00 1260 0

提示
确定要删除当前文章?
取消 删除