- 浏览: 378748 次
- 性别:
- 来自: 深圳
最新评论
-
u014689192:
很不错
JMX学习笔记(三)-MXBean -
focus2008:
进制转换之后,根本不会执行js代码,感觉你没有测试过吧
xss漏洞之进制转换 -
focus2008:
如何使用过滤器来处理呢?
xss漏洞之进制转换 -
1169158401:
我艹,我那天这么写,包括一些方法,然后那货说这样写不容易看懂。 ...
import static简化代码 -
AquariusM:
奢华的JVM介绍!
JMX学习笔记(三)-MXBean
文章列表
根据不使用中间变量交换两个变量值算法可进一步扩展到数组中:
#include <stdio.h>
void change(int* a, int* b) {
*b = *a ^ *b;
*a = *a ^ *b;
*b = *a ^ *b;
}
// a[] 为数组
// cnt为数组长度
void reverse_array(int a[], int cnt) {
int first, last;
for(first = 0, last = cnt -1; first < last; first ...
这个算法是由布尔代数的而来, 在布尔代数中 有几个基本的运算,
与、或、非、异或 ,分别对应C语言中的 &、|、~、^运算符号
其中运算的规则是:
与:
& 0 1
-------------
0 0 0
1 0 1
或:
| 0 1
-------------
0 0 1
1 1 1
非:
~
---------
0 1
1 ...
drop function if exists rand_string;
create function rand_string(str_length tinyint unsigned, str_type tinyint unsigned) returns varchar(255)
begin
-- Function : rand_string
-- Author : reymondtu#opencfg.com
-- Date : 2011/03/27
-- Params : str_length int unsig ...
mysql 4.1.18 中存在不支持函数order by的bug
select a, sum(b)
from tablename
group by a
order by sum(b)
此时会出现ERROR 1111 (HY000): Invalid use of group function
绕过此bug的方法是给sum(b) 加上as
select a, sum(b) as ss
from tablename
group by a
order by ss
这样就OK了
selinux 是个安全性极高的软件,在安装了发行版linux的操作系统中,都有一些各个厂家的配置,
因为在发行版linux出厂时,安装了各种编程工具、网络服务,有些安全性软件本身有很强大的功能,
需要对其进行限制, selinux的做法是 ,使用者能被分配预先定义好的角色,以便他们不能存取文件
或者访问他们不用的程序.
这里我给出一些常用的配置以及命令.
selinux 在redhat类型的linux中配置目录为:/etc/selinux/
1.配置selinux
修改配置文件: /etc/selinux/config
默认为:
...
关于web应用,从html的产生,到客户端浏览器的渲染,有3个重要的组成部分:
1.html在服务端生成
2.网络传输
3.浏览器渲染
在html生成的过程中,可能会用到cache,可能会链接数据库等等,对于负责的html页面,都要经过很多业务流程
facebook的做法是使html的生成变成多个步骤,每生成一小部分html(facebook给这种编程模型起了个名字叫做PageLet),就发送到网络上,浏览器就先展示最先发送的一部分,使整个页面传输的过程流水化,提高页面呈现速度。
经过流水化的页面生成后,整个过程变为:
可以很直观的 ...
万能的SimpleDateFormat可以把java.util.Date对象, 或者类似 "2010-11-24 23:23:11.666"的
字符串转换成我们需要的格式或者时间对象。
但是由于时间的概念复杂,又牵扯到时区与本地化,导致了SimpleDateFormat需要处理太多的时间细节,
new一个SimpleDateFormat需要华为太多的时间,这样可能会想到缓存SimpleDateFormat对象
但是万能的SimpleDateFormat恰恰又不是现成安全的。
如果在单线程情况下,缓存SimpleDateFormat对象是不错的选择。 ...
以NAT方式启动VBox中的Linux,会发现本机无法访问虚拟机中启动的服务,当然以桥接方式启动就不会有这样的问题,但有时候我们不得不去选择NAT方式,这里是我使用NAT映射的一点经验:
VBoxManage modifyvm "Fedora-13
" --natpf1
"guestmysql-proxy
,tcp
,127.0.0.1
,4040
,,4040
"
简单说一下这里参数的意思
Fedora-13 这里是虚拟操作系统的名字
--natpf1 N ...
在MBean中有只要遵循以下两个规则,我们就可以在jconsole中动态的改变MBean中的属性值
1. JMX中要定义接口必须以xxxMBean的规范定义
2. 得有类实现xxxMBean接口
例如:
package com.haitao.jmx.mxbean;
/**
* Server Configure MBean
*
* @author haitao.tu
*
*/
public interface ServerConfigureMBean {
public int getPort();
public void s ...
Notification 通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知.
这里写一个简单的Server配置例子, 首先定义我们的MBean接口:
package com.haitao.jmx.mbeans.server;
/**
*
* Server Configure MBean
*
* @author haitao.tu
*
*/
public interface ServerConfigureMBean ...
JMX 即 Java Management Extensions Java管理扩展MBean 即 managed beans 被管理的Beans一个MBean是一个被管理的Java对象,有点类似于JavaBean,一个设备、一个应用或者任何资源都可以被表示为MBean,MBean会暴露一个接口对外,这个接口可以读取或者写入一些对象中的属性,通常一个MBean需要定义一个接口,以MBean结尾, 例如: EchoMBean, 格式为XXXMBean,这个是规范,必须得遵守。例如:
package com.haita ...
Apache Tomcat Native library 是 Apache 为了提升 Tomcat 的性能搞的一套本地化 Socket, Thread, IO 组件也就是说它有高级 IO 功能, 操作系统级别的功能调用, 以及本地进程处理等等, 这些都能使 Tomcat 更像一个 Web Server(像Apache那样), 而不是只能用来解释JSP, 大大增加了Tomcat作为服务器的吞吐性能,尤其是处理静态文件能力。
在安装nactive lib之前必须安装以下linux lib
1.APR library
2.OpenSSL libraries
3.Java SE ...
一般人都习惯直接修改/etc/profile文件,但是这个不便于管理,万一环境变量一多,对系统的部署造成了很大的麻烦,分不清哪些配置对应哪些应用安装下载步骤就不说了
(linux不同发行版的目录结构不一样,但是每一种都有自己的体系结构,有机会多研究下,可以借鉴到app工程里来用)
安装jdk的路径是:
[root@localhost jdk1.6.0_21]# pwd
/usr/share/java-1.6.0/jdk1.6.0_21
配置/etc/profile.d/java.sh
JAVA_HOME="/usr/share/java-1.6.0/jdk1 ...
在Nginx中的默认Proxy是只能对后面Real Server做端口转发的,而不能做域名转发。如果想使用Nginx对后端是同一IP、同一端口 转发不同的域名则需要配置Nginx Proxy。
这个是因为默认情况下:
proxy_set_header Host $proxy_host;
这样就等于前端输入域名后到nginx这里直接转换成IP进行转发了。
于是我们需要修改proxy_set_header的参数。
proxy_set_header Host $http_host;
下面这个例子中backend1权重为5,其他默认为1,最 ...
cookie的domian,path,expires,这些在cookie操作中都会经常用到
但是对于客户端浏览器来说这些都是可见的,通过document.cookie可以直接在脚本里输出,这里很容易被注入一些js脚本,获取到本地的cookie,发送到其他地方去,泄露个人隐 ...