什么是MBeanServer】的更多相关文章

什么是MBeanServer MBeanServer是一个包含所有注册MBean的仓库.它是JMX代理层的核心.JMX1.0规范提供一个接口叫 javax.management.MBeanServer. 所有管理的在MBean操作通过MBeanServer执行.使用MBeanServer实例,你能够管理所有MBean.每一个MBean具有一个唯一标志,叫ObjectName. 什么是ObjectName ObjectName (javax.management.ObjectName)是一个类,唯…
在一个spring xml配置文件中,NamespaceHandler是DefaultBeanDefinitionDocumentReader用来处理自定义命名空间的基础接口.其层次结构如下: <context>为开头的标签统一在ContextNamespaceHandler中进行解析,ContextNamespaceHandler继承了NamespaceHandlerSupport,实现了NamespaceHandler接口.其解析的标签有: @Override public void in…
自从在园子里,发表了两篇如何基于Netty构建RPC服务器的文章:谈谈如何使用Netty开发实现高性能的RPC服务器.Netty实现高性能RPC服务器优化篇之消息序列化 之后,收到了很多同行.园友们热情的反馈和若干个优化建议,于是利用闲暇时间,打算对原来NettyRPC中不合理的模块进行重构,并且增强了一些特性,主要的优化点如下: 在原来编码解码器:JDK原生的对象序列化方式.kryo.hessian,新增了:protostuff. 优化了NettyRPC服务端的线程池模型,支持LinkedBl…
The ManagementFactory class is a factory class for getting managed beans for the Java platform. This class consists of static methods each of which returns one or more platform MXBeans representing the management interface of a component of the Java…
1.配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:task="http://www.springframework.org…
tomcat作为一款web服务器本身很复杂,代码量也很大,但是模块化很强,最核心的模块还是连接器Connector和容器Container.具体请看下图: 从图中可以看出 a. 高亮的两块是Connector和Container,为什么说他们两最核心,其中Connector是负责接收http请求,当你在浏览器中输入URL为http://www.demon.com,这样的http请求就会被Connector接收并转发给容器Container. 到了Container后,会经过不同的容器层有: En…
阅读目录 序 HDFS Commands User Commands Administration Commands Debug Commands 引用 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一篇,我们对Hadoop命令进行了简略的列举,但是Hadoop命令特多,还有一部分没有列举完,官网基本都是英文的,所以只能拙略的翻译下,妄大家见谅. 下面,我们就开始对Hadoo…
JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据.JVM当前所有线程及其栈相关信 息等等.各种JDK自带的剖析工具,包括jps.jstack.jinfo.jstat.jmap.jconsole等,都是基于此API开发的.本篇对 这部分内容进行一个详细的说明. 参考:http://java.sun.com/javase/6/docs/api/java/lang/management/package-summary.html 一.Manage…
前一段时间翻译了Jetty的一部分文档,感觉对阅读英文没有大的提高(*^-^*),毕竟Jetty的受众面还是比较小的,而且翻译过程中发现Jetty的文档写的不是很好,所以呢翻译的兴趣慢慢就不大了,只能等到以后工作中用到再去翻译了(*^__^*),不管怎样下面给出翻译的地址. +Jetty翻译章节 Jetty文档目录:http://www.cnblogs.com/yiwangzhibujian/p/5832294.html Jetty第一部分翻译详见:http://www.cnblogs.com/…
eclipse调试solr 现在solr的源码包,我这里是4.10.2, 编译, ant ivy-bootstrap ant eclipse 导入elipse,将solr/example/solr/下的文件拷贝到solr/下 删除其他的collection run with jetty 修改端口为一个没被占用的端口,我这里用9966 启动日志 Configuration: C:\Users\bogon\AppData\Local\Temp\eclipseJettyPlugin.config.so…

JMX

一.为什么使用JMX,解决那些问题 举一个应用实例:在一个系统中常常会有一些配置信息,比如服务的IP地址,端口号什么的,那么如何来写这些代码呢? 写死在程序里,到要改变时就去改程序,然后再编译发布: 把这些信息写在一个配置文件里(JAVA一般都是*.properties文件),到要改变时只要改配置文件,但还是重新启动系统,以便读取配置文件里的新值: 写一个段代码,把配置值缓存起来,系统在读值的时候,先看看配置文件有没有更动.如有更改则重读一遍,否则从缓存里读取值 用JMX!把配置属性集中在一个类…
最近在项目中,通过maven引入其他包时,启动报错如下: [ERROR][2016-10-08 14:01:20.716]Context initialization failed[org.springframework.web.context.ContextLoader:initWebApplicationContext]org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration…
一入此坑,只想跳楼.我发誓应该不会有第二个人会进这种坑! 问题描述: 总是不能注入dao层,即@Resposity.always!always!always!(尝试了天下之因特网所有的注入方式,都不能尽我之意!) 原错误代码: -- ::)-) | Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name bean whi…
package foo; import org.apache.commons.cli.BasicParser; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.CommandLineParser; import org.apache.commons.cli.Options; public class test { public static void main(String[] args) thro…
1:前言 做软件开发这几年遇到了许多的问题,也总结了一些问题的解决之道,之后慢慢的再遇到的都是一些重复性的问题了,当然,还有一些自己没有完全弄明白的问题.如果做的事情是重复的,遇到重复性问题的概率也就会比较多了,如果是在一个新的领域里玩,遇到的问题又都是新的,自己从来没有见过的,但是问题的解决思路基本是类似的.下面这个问题,我觉得值得一记,因为以后还会再遇到类似的,我希望自己能很快的将其解决掉. 2:报错信息 如下是更新项目后,启动项目时抛出的部分错误信息. 十二月 14, 2016 7:52:…
不得不说,我犯了错,很基础的.. 遍历list的时候可以删除数组元素吗? 答案是:简单/增强for循环不可以,list.iterator()这样的方式就可以. 我之前做过类似面试题的,不过忘记了, 不记得是list还是set或者map了 .list? 貌似也可以吧. 对于set.map也是同理. 如果是删除list倒数第一.倒数第二个元素,不会报错, private static void listtest() { List<String> list = new ArrayList<St…
启动jmx server 和jmx client,通过jconsole进入jmx server 然后通过其中远程进程,进入jmx client: 发现,两者可用的tab页不同, MBean的数量类型也不同: 如何理解呢?其实原因就是两者的MBeanServer不同, 前者是jmx自带的,后者是我new出来的. 访问JMImplementation 看看: ObjectName jmxname = new ObjectName("JMImplementation:type=MBeanServerD…
jmx链接的时候,最简单的例子都行不通,郁闷,出现了: 参考:http://reiz6153.blog.163.com/blog/static/401089152009442723208/ 代码: MBeanServer mbs = MBeanServerFactory.createMBeanServer("HelloAgent"); JMXServiceURL url = new JMXServiceURL( "service:jmx:rmi://localhost:909…
很早就开始去了解这个了,不过一直都是皮毛,基本概念明白,具体api几乎一无不知... 认真看了几篇文章,做了测试,终于有所了解 参考 入门级别: http://www.cnblogs.com/agou/articles/286871.html http://www.cnblogs.com/allenny/articles/179208.html 写得最好的:http://www.cnblogs.com/yaohonv/archive/2012/02/08/jmx.html, 图也很清楚,不过初入…
JMX架构定义: https://docs.oracle.com/javase/8/docs/technotes/guides/jmx/overview/architecture.html Architecture Outline JMX technology is defined by two closely related specifications developed through the Java Community Process (JCP) as Java Specificati…
1,概念:一个可以使用JMX管理器来管理的Java对象称为JMX管理资源(JMX manageable resource).事实上,一个JMX管理资源也可以是一个应用程序.一个实现或者一个服务.设备.用户等等.JMX管理资源用Java写或者提供一个Java包装.要想让一个Java对象称为JMX管理资源,必须创建另一个名为Managed Bean或者MBean的对象.org.apache.catalina.mbeans包包括一些MBeans.ConnectorMBean, StandardEngi…
通过工具及Java api来监测JVM的运行状态, 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情况--heap&PermGen @ 表示通过jmap –heap pid 可以获取的值 # 表示通过jstat –gcutil pid 可以获取的值 参数的查看可以通过多种方法 本文中只随机列出一种. 描述 最大值 当前值 报警值 堆内存 @Heap Configuration::MaxHeapSizesum(eden+servivor+old) sum(eden+servi…
阅读目录 Standard MBean与MXBean的区别 实现 Notification 认证与授权 JConsole Custom Client What and Why JMX JMX的全称为Java Management Extensions. 顾名思义,是管理Java的一种扩展.这种机制可以方便的管理正在运行中的Java程序.常用于管理线程,内存,日志Level,服务重启,系统环境等. 试想,一个正在运行中的程序,我们如果想改变程序中的一些属性,可以通过什么方法呢?可能有这么几个方法:…
AOP静态代理使用示例见Spring的LoadTimeWeaver(代码织入) Instrumentation使用示例见java.lang.instrument使用 AOP的静态代理主要是在虚拟机启动时通过改变目标对象字节码的方式来完成对目标对象的增强,它与动态代理相比具有更高的效率,因为在动态代理调用的过程中,还需要一个动态创建代理类并代理目标对象的步骤,而静态代理则是在启动时便完成了字节码增强,当系统再次调用目标类时与调用正常的类并无差别,所以在效率上会相对高些. AspectJ所做的事 在…
一.tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范.因为Tomcat 技术先进.性能稳定,而且免费,因而深受Ja…
一.调整JBOSS最大连接数. 配置deploy/jboss-web.deployer/server.xml文件 .       <Connector         port="8080"         address="0.0.0.0"         maxThreads="1600"        minSpareThreads="100"        maxSpareThreads="250&qu…
前言 在以往的java开发中,程序员最怕大量的配置,是因为配置一多就不好统一管理,经常出现找不到配置的情况.而项目中,从开发测试环境到生产环境,往往需要切换不同的配置,如测试数据库连接换成生产数据库连接,若有一处配错或遗漏,就会带来不可挽回的损失.正因为这样,spring boot给出了非常理想的解决方案——application.properties.见application-properties的官方文档:http://docs.spring.io/spring-boot/docs/curr…
参考:http://tuhaitao.iteye.com/blog/786391 这里以MBean对象进行演示向服务器注册,调用的过程. 1.MBean接口,接口名必须以MBean结尾 package gofAndJavaSourceStudy.jmxstudy.jmxImpl; public interface HelloMBean { //管理属性 public void setName(String name); public String getName(); //管理操作 public…
目录 . 引言 . 黑客针对WEB Server会有那些攻击面 . 针对Tomcat Server可以做的安全加固 . Managing Security Realms with JMX . 实现对TOMCAT配置信息的动态修改(hot dynamic edit) . Tomcat manager弱口令入侵部署WEBSHELL防御 . Tomcat远程war包部署攻防 0. 引言 most weaknesses in Apache Tomcat come from incorrect or in…
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListenerorg.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean…