`
sswh
  • 浏览: 161721 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
JMS中的基本概念 ConnectionFactory 接口(连接工厂) 用户用来创建到JMS提供者的连接的被管对象。JMS客户通过可移植的接口访问连接,这样当下层的实现改变时,代码不需要进行修改。 管理员在JNDI名字空间中配置连接工厂,这样,JMS客户才能够查找到它们。根据消息类型的不同,用户将使用队列连接工厂,或者主题连接工厂。
监控broker(activemq web console) 把activemq-web-console-5.9-20131011.032620-114.war部署到tomcat下面: 另外增加几个JVM的启动参数: -Dwebconsole.type="properties" -Dwebconsole.jms.url="tcp://localhost:61616" -Dwebconsole.jmx.url="service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi" -Dw ...
 监控broker(JMX) 首先,broker要启用JMX支持:        broker.setUseJmx(true); //启用JMX监控          运行Jconsole,远程连接输入:service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
启动嵌入式Broker(从配置文件获取启动参数)     BrokerService broker = BrokerFactory.createBroker("xbean:resources/activemq.xml");     activeMQ的配置文件采用xbean方式配置,并且依赖于Spring和xbean;     看一下activemq-spring的依赖关系:
启动嵌入式Broker(纯代码方式) Broker最小依赖的JAR包集合:  手动启动Broker:        BrokerService broker = new BrokerService();        broker.addConnector("tcp://localhost:61616");   
ActiveMQ的模块划分 打开源码目录,可以初步浏览一下ActiveMQ的模块结构: 查看一下activemq-broker模块的maven配置文件,了解初步的依赖关系:   
 2、ActiveMQ初步印象 找到F:\apache-activemq-5.9.0\bin\activemq.bat文件,在第一行设置:set java_home=… 启动activemq… 打开http://localhost:8161/,进入web控制台... 选择进入旧的控制台吧,帐号密码:admin/admin…
 1、ActiveMQ下载: http://activemq.apache.org/ 当前最新版本是5.9.0(2013-11-8) http://activemq.apache.org/activemq-590-release.html 有源代码可以一并取下来。 下载Web-console以及源代码:
Eclipse中的TCP/IP Monitor还是很有用的。每次打开配置都要想半天,哪个端口该配置哪个.. 下图纯为备忘。。

简单的Log4J配置

    博客分类:
  • java
在搭建一些简单的测试环境时,经常收到下面的提示: 引用log4j:WARN No appenders could be found for logger (org.apache.camel.impl.DefaultCamelContext). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. 如果懒得再去弄一个Log4J配置文件的话,可以下面这样: static ...
unsafe脚本怎样才是安全的??除了脚本对已有对象应该限于只读操作, 并且不应该持有对象的引用外,暂时所能想到的,先列几条吧: 1、启用unsafe模式:    修改BTrace启动参数 -Dcom.sun.btrace.unsafe=true    BTrace脚本注解:@BTrace(unsafe = true) 2、BTrace脚本类的ClassLoader为引导类加载器;    被跟踪的类的加载器仍为原类加载器不变;    agent在加载脚本类之前会对脚本类进行修改,    包括修改脚本方法名称、@TLS变量修改为ThreadLocal等; 3、BTrace脚本编译后,@OnM ...
@OnMethod注解用来匹配拦截的方法,Location用来指定在方法的某个位置或者某个动作时触发拦截代码。 常用的Location: Kind.ENTRY(缺省的Location,当进入方法时,代码添加在方法第一行) Kind.RETURN(当从方法返回时,如果方法有多个返回点,则每一个返回点前都会执行) Kind.ERROR(当方法执行异常时,当方法执行过程中抛出异常,会触发)   实际生成的代码形如:try{...}catch(Throwable e){...} 方法匹配的原则:(方法名和type与被拦截方法的方法签名一致,如果type缺省,则匹配全部同名方法;当然,还必须符合方法 ...
BTRace1.2.2版本 @OnMethod(clazz = "+my.Command", method="execute") 对子类的匹配(怀疑)存在BUG。 即:加载Agent之前的已载入的Class被拦截了,但Agent加载之后的Class没有拦截。 从源代码看应该是这样,涉及到子类匹配检查的主要两个变量: hasSubclassChecks :是否需要检查子类匹配,如果需要的话, 所有通过ClassLoader.defineClass()加载的类,会被注入一段静态初始化代码: { BTraceRuntime.retransform(L ...
以下基于BTrace1.2.2 [url]http://kenai.com/projects/btrace/downloads/directory/releases [/url] BTrace类的增强分两部分: Agent载入之前已加载类的转换; Agent载入之后新定义类的转换; 其中,Agent载入之前已加载类的转换在: com.sun.btrace.agent.Main.handleNewClient(final Client client)方法中处理; 关键的处理步骤: // 注册类转换器---即:ClassFileTransformer client.registerTra ...
曾经一度为168培训网的垃圾邮件极度烦恼。 由于168的垃圾邮件每次都伪造发件人地址、发件标题、发件内容经常打包为Zip文件、PDF文件等。这让常规的邮件过滤方法完全失去效果。(在这儿,尤其要BS一下那些邮件服务器、或者邮件客户端提供的按发件人屏蔽垃圾邮件的黑名单方法,真是白痴到极点。) 后经朋友友情提醒,才发现利用邮件WEB客户端的邮件分类功能对付168的垃圾邮件超级有效。 前提: 邮件服务器提供有邮件分类功能(或者类似功能); 自己的邮箱只接受特定域的邮件。 168培训网自身的邮箱为peixun168@hotmail.com,如果有把握所有已知邮件排除后,没有什么可保密的内容的 ...
Global site tag (gtag.js) - Google Analytics