- 浏览: 9311 次
- 性别:
- 来自: 南京
最新评论
-
jianjieyan:
...
apache+tomcat集群实现负载均衡 -
jianjieyan:
顶,牛逼,向大神致敬,以后常来,
wait和notify实现生产者消费者模型
文章列表
项目在上线之后,经常会有客户反馈某个页面查询很慢,解决方案是我们找到对应的SQL来分析索引问题,其实解决起来并不麻烦,但是给客户造成的体验就不好了,大部分执行效率比较差的语句应该是在开发或者测试阶段就优化完成的,mysql提供了慢查询日志,默认是关闭的,可以通过my.cnf(my.ini)来配置打开
log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 1
参数一眼就能看明白了,完了以后需要重启mysql服务,根据配置,如果一条查询语句执行时间超过1秒,就会在日志文件中记录下来。
文件有了,但是要求开发人员每天登 ...
由于工作需要,准备在Linux上安装apache httpd服务,目前我用的Linux发行版是Ubuntu 11.04,由于我下面是用源码编译安装的,所以跟Linux发行版本无关。
首先到http://httpd.apache.org下载最新的发行版本httpd-2.4.12.tar,打开终端,解压文件
gt@GT-SERVER:~$ sudo wget http://apache.fayea.com//httpd/httpd-2.4.12.tar.gz
gt@GT-SERVER:~$ tar zxf httpd-2.4.12.tar
通过官方文档http://httpd.apache.org ...
在编译keepalived的时候需要用到openssl的开发库libssl-dev,Ubuntu14上可以通过apt-get自动更新得到,由于当前的Ubuntu版本是11.04,尝试了好多次不成功,所以只能直接安装新版本的openssl,首先查看下当前系统自带openssl的版本,打开终端
gt@GT-SERVER:~$ openssl version
OpenSSL 0.9.8o 01 Jun 2010
到官网看了下https://www.openssl.org/source/,目前最新版本1.0.2,回到终端
gt@GT-SERVER:~$ sudo wget https://ww ...
这篇文章主要记录在MAC OSX(Yosemite)下搭建apache+tomcat集群环境的过程,其它Linux发行版除了安装apache和mod_jk不一样,其它步骤完全一样。
1.安装apache,可以参照我的另一篇博客Linux安装Apache,目前MAC OSX(Yosemite)是自带apache的,你可以通过命令sudo apachectl start|stop|restart等方法来启动停止或重启apache服务,启动完后只需在浏览器中输入http://localhost,如果出现it works,则表明启动成功。
2.安装mod_jk,这是apache的一个模块,专 ...
最近项目里碰到了个问题,在Linux环境上,Thread1通过java.nio.channels.FileLock给文件加锁,通过Thread2竟然能删除这个文件,突然感觉很奇怪,Windows环境上不是这样的行为啊,因此就顺便研究了下java文件锁的机制。
...
读这篇文章之前,首先要弄明白java对象的两个方法,wait和notify或者notifyAll,那弄懂这两个方法又要知道一个概念,java中Object类有个对象锁,所有的对象都继承自Object类,因此每个对象都有个锁,而且java中的对象锁在同一时刻只能由一个线程持有,这是java在多线程编程中实现互斥的基础。 那一个线程如何获得一个对象的锁呢?根据JDK源码,一个线程可以有3种方法获得对象锁,第一种是执行该对象实例的synchronized方法,第二种是执行对象中的synchronized代码块,第三种是执行类(非实例)的静态synchronized方法,最后需要注意的是一 ...
Java调用linux shell命令的时候,是通过Process来实现的,Process会新起一个进程,并且把主进程的内存信息拷贝一份到新的进程中,对于小的程序这种方式没问题,但如果项目足够大,就会导致系统内存不够程序退出的情况发生。
为了解决这个问题,有一个比较好的方案是JNI,这个时候并不需要重新起一个Process,也就不会存在备份内存的问题,下面是一个例子.
1.编写java类JNIHelper.java
package com.pracbiz;
public class JNIHelper
{
static
{
System.loadLibrary(& ...