- 浏览: 271791 次
- 性别:
- 来自: 上海
最新评论
-
AndMacLinuXp:
试了下,不错!
printk内核调试 -
klose:
我引用你的文章,并做了简单的分析:这里贴出url:http:/ ...
linux系统调用fork, vfork, clone -
klose:
你上面提到的问题:free的问题。首先你可能疏忽了,stack ...
linux系统调用fork, vfork, clone -
qwe_rt:
HI ,非常nice的文章,在阅读过程中,我发现我的ubunt ...
linux手动添加开机启动的服务 -
suifeng:
谢谢分享, 受用中.
shell编程分支,循环
文章列表
很久没写过了,写这个系列是因为工作中常年碰到。
先介绍下理论
再介绍下支付宝常用的DTX和XTC我看看我挑一个讲讲
再介绍下业内我知道的常用的几个实时的方案,毕竟大家其实不会去用阿里的技术,阿里技术也不是标杆
最 ...
网上很多hadoop集群搭建的文章,我这里只写下hdfs,不写mapreduce那块了。主要用来自己记得。
hadoop版本,我用的是比较新的2.3.0。
集群环境
mater 10.19.70.114
slave1 10.19.71.144
slave2 10.19.70.145
系统 ubuntu。windows用户不好意思,已经很久不怎么用windows了。
解压hadoop后,添加配置项$HADOOP_HOME到你解压的目录的hadoop下面。比如我的~/hadoop-2.3.0。至于这个配置项有没有用,我确实不知道。
添加JAVA_HOME,好 ...
linux下挂在windows共享文件夹
- 博客分类:
- linux
smbmount //nas/xxxx /mnt/nas -o username="xxx",password="xxx"
其中//nas/xxx为目标windows共享文件夹, /mnt/nas为挂载点。
如果报smbmount找不到,安装即可。
依赖倒转原则和工厂模式
- 博客分类:
- 设计模式
依赖倒转原则讲的是:要依赖于抽象,不要信赖于实现。 这是为实现开闭原则的一种手段。
比如之前的代码,我们的主程序中:
Graph g = new xxx();
......
g.getArea();
对g的声明则是Graph,而非具体的三角或者原型。我们下面的一切对g的操作,都是依赖Graph,而非对具体的图形的依赖。但只有在初始化g的时候,我们必须制定三角Graph g = new Triangl()或者圆形Graph g = new Circle();这就和依赖倒转原则冲突。由此引入工厂模式。
简单工厂模式:
package sty;
public cla ...
开闭原则:对扩展开放,对修改关闭。或者换句话来说就是一个模块在不被修改的前提下可以被扩展。
说的有点抽象,至少不是那么容易去理解,我举个例子来理解下,如果写的有误也欢迎各位指出。
我有个抽象的图形类如下
package sty;
public abstract class Graph {
//获取图形面积,这里只返回整数
public abstract int getArea();
}
具体的求面积的实现是根据图形的形状来确定的,比如我有以下几个具体的图形类
package sty;
//圆
public class Circle extends ...
jboss和activemq的集成
- 博客分类:
- jboss j2ee
http://activemq.apache.org/integrating-apache-activemq-with-jboss.html
如果需要将activemq从jboss中独立出来,补充以下操作
Development MDB in JBoss 6 with external ActiveMQ
For high performance environment, the JMS server should be a stand alone server. JBoss run as MDB container can be more than one. In this case ...
htm5:http://www.w3school.com.cn/html5/
html5 canvas:http://blog.bingo929.com/html-5-canvas-the-basics-html5.html
备份一个配置,以免忘记。该文档也可以提供给你一个APACHE+TOMCAT集群的配置。
关于jboss的jms文章,网上很多,但基本雷同。而且大部分不太全,所以拷贝出来的代码,多多少少都有点问题,也有可能是和JBOSS的版本有关。
要求:JBOSS 6
代码:
package sty.main.jms;
import java.util.Hashtable;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.Queue;
import javax.jms.QueueConnection;
...
下载:安装包http://www.jboss.org/jbossas/downloads.html,这里以JBOSS6为例。
安装环境:
操作系统:linux(windows类似)
JDK版本1.6
安装步骤:
1.解压下载的安装包到任意目录,这里以/opt/为例
2.解压完成后,有新的目录/opt/jboss-6.0.0.Final(我下载的是final包)
3.在.bashrc里面添加JBOSS_HOME=/opt/jboss-6.0.0.Final变量,并export JBOSS_HOME,将JBOSS_ ...
一个简单的存储过程样例,为免忘记,写在这里:
create or replace procedure clean_userunsubscription(day_p in number) as
day_v number(2);
last_v date;
begin
day_v := day_p;
last_v := sysdate - day_p;
delete from tbl_ss_user_unsubscription where endtime < last_v;
commit;
exception
when others ...
小工具
- 博客分类:
- linux shell
1.如果想把某个目录下所有的jar包放入classpath中,可以使用语句
SHARE_LIB=/opt/share/lib
CLASSPATH=$CLASSPATH`ls -l $SHARE_LIB|awk -v SHARE_LIB=$SHARE_LIB '{print SHARE_LIB"/"$9}'|awk 'BEGIN{RS=";";FS="\n"}{ for(i=1;i<=NF;i++) printf ":"$i;printf "\n" }'`
HTTP下载的关键是修改Content-Type。
Content-Type的值可以参考http://www.iana.org/assignments/media-types/。
如果你不知道选择哪一个,则可以写Application/Octet-stream。
文件名加在Content-Disposition:filename=文件名
对前面27中sniffer中的一个改进。这里只贴出改动地方的代码。
void get_packet(u_char * args, const pcap_pkthdr * header, const
u_char * packet){
char from_ip[24], to_ip[24];
const struct sniffer_ethernet * ethernet = (struct
sniffer_ethernet *) ...
网络抓包,必需从数据链路层开始抓取,至于原因之前在原始套接口中提到过。
现在的sniffer大部分都采用了libpcap,详细文档可以在www.tcpdump.org上面找到。
#include <stdio.h>
#include <pcap.h>
#include <stdlib.h>
#include <string>
#include <netinet/ip.h>
#include <netinet/tcp.h>
#include <sys/socket.h>
#include & ...