- 浏览: 157320 次
- 性别:
- 来自: 北京
最新评论
-
cheng8679724:
好厉害,我没用hibernate,javamelody 里面 ...
利用JavaMelody解决连接池不释放的问题 -
henghengdh:
darrenzhong 写道我的联系QQ 363792376 ...
JavaMelody系统监控工具使用配置 -
darrenzhong:
我的联系QQ 363792376 求帮忙
JavaMelody系统监控工具使用配置 -
darrenzhong:
你好 如果项目没用到spring和hibernate可以用吗 ...
JavaMelody系统监控工具使用配置 -
www88485400:
blueblue24 写道请问下我部署好以后,添加新的监控应用 ...
利用JavaMelody解决连接池不释放的问题
文章列表
电商中订单号的生成,一般是预先生成某一天的订单号(预估数量,比如昨天有100W订单,今天产生100W个+一定冗余),放在memcache或者redis等缓存上,也可以放在MQ里,作为订单号池。要用,就消费订单号池里的,绝对唯一。
怎么生成就视乎你业务逻辑了。一般想完全无重复,就产生0~100W的数列,再shuffle一下即可。
用u盘安装ubuntu server的时候会遇到很多麻烦的比如cdrom无法挂载或者挂载的程序有错误,那么开始我的第一个步骤:
1 、刻录ubuntu server镜像ISO到U盘 ,然后再把ISO镜像文件再拷贝到u盘里。
2 、u盘插入电脑重启选择启动设备时从u盘启动
到cdrom程序检测出错,一般都到13%就会出错,下面就是解决方法
3 、进入shell用 ls /dev/sd* 看看都有那些设备,一般的情况先都是这样的
/dev/sda /dev/sda1 /dev/sda3 /dev/sda5 /dev/sdb /dev/sdb1
然后拔下U盘 然后用 ls /dev/sd* 你就 ...
1. 在ssh shell中运行脚本,比如我运行一个批量下载脚本:
python download-app-annie.py
2. 按下ctrl-z中断脚本运行,此时系统提示:
^Z
[1]+ Stopped python download-app-annie.py
意思是编号为1的任务挂起了,[1]就是任务的编号,里面的数字也可能是2,3,4..
3. 输入命令:bg 1
这个命令将1号任务切换到后台执行
4. 输入命令:disown -h %1
这个命令的意思是将1号任务从当前shell的任务列表中移除,并且忽略HUP信号,这样,即使当前Shell结束了 ...
硬盘分区及挂载操作步骤:
1. 查看未挂载的硬盘(名称为/dev/xvdb)
# fdisk -l
Disk /dev/xvdb doesn't contain a valid partition table
2. 创建分区
# fdisk /dev/xvdb
...
输入n
Command (m for help):n
输入p
Command action
e extended
p primary partition (1-4)
p
输入1
Partition number (1-4): 1
回车
First cylinder (1-2610, default 1 ...
Linux下Redis内存优化
- 博客分类:
- redis
最近使用Redis,由于它属于内存数据库,所以调优都集中到了内存上。
根据 Redis官方说法 :
需要将 vm.overcommit 设置为1
sysctl vm.overcommit_memory=1
确保设置了一定量的swap,最好和内存一样大,否则内核的OOM(out-of-memory)killer会干 ...
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也 ...
#默认情况下,如果在RDB snapshots持久化过程中出现问题,设置该参数后,Redis是不允许用户
进行任何更新操作(set...)。避免人为强制停止redis 快照
解决:
进入redis src目录下
启动客户端:
./redis-cli
输入:
config set stop-writes-on-bgsave-error no
或
echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf
sysctl vm.overcommit_memory=1
统计某作者代码行数
git log --author="username" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -
1. Unable to read additional data from server sessionid 0×0, likely server has closed socket, closing socket connection and attempting reconnect
org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1000) Opening socket connection to server localhost/127.0.0.1:2181
这个报错是因为zookee ...
接上文(http://henghengdh.iteye.com/blog/2039579),我们已经安装了red5服务器,但是oflaDemo提供的播放器功能太简单,还需要换成其他的播放器,并且我们也需要将播放器客服端放在我们的实际项目中,这里选择jwplayer,oflaDemo中也提供了这个播放器.
1.首先下载jwplayer解压,将jwplayer.js和player.swf放到我们的实际项目中。
2.在项目中新建一个jsp页面,如jwplayer.jsp,在页面中引入jquery.js和jwplayer.js,其他代码如下<script type="text/jav ...
1.安装red5服务器,我这里安装的是集成tomcat版,red5-1.0.0-RC2,下载后直接加压,运行red5.bat,显示下面的提示表示安装成功。
[INFO] [Launcher:/installer] org.red5.server.service.Installer - Installer service created
2.在浏览器中输入http://localhost:5080,进入red5主页面,然后安装流媒体播放器oflaDemo,点Install a ready-made application,然后选择OFLA Demo安装。
3.提示安装成功后,会在red5主目 ...
quartz有两种注入方式,MethodInvokingJobDetailFactoryBean和JobDetailBean。
这里我用的是JobDetailBean。(MethodInvokingJobDetailFactoryBean也试了下,无奈不成功,看网上有人说重写两个类文件,试了下也不行,只好用JobDetailBean了)
1.下载quartz-1.8.6包,包的的docs文件夹里有数据库建表sql,quartz集群需要将任务信息实例化到数据库中,然后各个节点从库中读取任务信息。
2.在src中添加quartz.properties文件。
org.quartz.schedu ...
公司新项目上线,需要从老数据库中定时同步部分数据到新数据库中,写了一个调度程序来做。
运行一段时间后发现,调度程序的连接池一直在不停增长,大概8个小时能增加600-800个连接,等到连接数量达到连接上设置的上限后,程序就开始一直等待不工作了。
刚开始以为是连接池配置问题,调了好几个方案,问题没有解决,就怀疑到了是代码里事务的问题,这下就不好办了,因为项目中混合使用了hibernate和jdbcTemplate,而且方法也不少,具体定位很麻烦(本人巨懒)。
刚好前几天在新项目中用了JavaMelody监控性能,那就还试试用这个工具来找原因吧.
JavaMelody的安装方法另一个文章了已经 ...
JavaMelody能够在QA和实际运行生产环境监测Java或Java EE应用程序服务器。并以图表的形式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求、sql请求、jsp页面与业务接口方法(EJB3、Spring、Guice)的执行数量,平均执行时间,错误百分比等。图表可以按天,周,月,年或自定义时间段查看。
使用配置如下:
1、到http://code.google.com/p/javamelody/downloads/list下载zip的压缩包
2、解压缩并将javamelody.war复制到Tomcat发布目录下
3、在被监控 ...
本文主要介绍了有关使用Nginx防御CC攻击的一些配置。CC攻击针对的是服务器上面的内存和CPU资源,因此通常会找到一些比较高消耗的接口,例如search.php之类的需要大量sql查询的接口。因此,明白了这一点,我们就很好防御了,主要是针对单个ip地址的连接数和请求php文件的密度来控制的。
我们主要用到的是Nginx中提供的两个limit模块:
ngx_http_limit_conn_module
ngx_http_limit_req_module
一、白名单
首先这两个模块是支持白名单的,就是可能有某些IP地址,我们是不需要进行限制的,比如可能会是搜索引擎啦什么的或者自己的IP ...