`
文章列表

java类加载器

来自:http://www.ibm.com/developerworks/cn/java/j-lo-classloader/     成 富, 软件工程师, IBM 中国软件开发中心   简介: 类加载器(class loader)是 Java™中的一个很重要的概念。类加载器负责加载 Java 类的字节代码到 Java 虚拟机中。本文首先详细介绍了 Java 类加载器的基本概念,包括代理模式、加载类的具体过程和线程上下文类加载器等,接着介绍如何开发自己的类加载器,最后介绍了类加载器在 Web 容器和 OSGi™中的应用。
来自:http://coolshell.cn/articles/1846.html MySQL性能优化的最佳20+条经验 2009年11月27日陈皓发表评论阅读评论36,197 人阅读       今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的 ...
<!--[if !supportLists]-->一、      <!--[endif]-->mysql入门语句 <!--[if !supportLists]-->1.       <!--[endif]-->连接数据库:mysql -h localhost -u root –p -h 如果不写host,默认连接localhost。 <!--[if !supportLists]-->2.       <!--[endif]--> 查看数据库:show databases;   <!--[if !sup ...

mysql调优之小结

 
<!--[if !supportLists]-->u  <!--[endif]-->mysql的优化 <!--[if !supportLists]-->1.       <!--[endif]-->数据库(表)设计合理 我们的表设计要符合3NF   3范式(规范的模式) , 有时我们需要适当的逆范式 <!--[if !supportLists]-->2.       <!--[endif]-->sql语句的优化(索引,常用小技巧.) <!--[if !supportLists]-->3.       & ...
来自:http://flychao88.iteye.com/blog/1553058 可参考:http://www.360doc.com/content/12/1120/22/203871_249194900.shtml   NioServerSocketChannelFactory创建服务端的ServerSocketChannel,采用多线程执行非阻塞IO,和Mina的设计 模式一样,都采用了Reactor模式。其中bossExecutor、workerExecutor是两个线程池,bossExecutor用来接收客户端连接,workerExecutor用来执行非阻塞的IO操作,主要 ...
来自:http://asialee.iteye.com/blog/1776130     netty里面最重要的应该是ChannelHandler,这个里面也是用户编程直接打交道的接口,也是串行于ChannelPipeLine里面执行相应的业务逻辑。         从类结构来看,一个handler应该有一个ChannelHandlerContext,ChannelHandler是处在上层的一个标识接口,下面有两个接口分别来处理Upstream event和一个Downstream event。         ChannelHandler比较好理解,我们重点来看DefaultCh ...
来自:http://fbi.taobao.org/?p=93 在真正底层IO操作的时候我们只能发送ByteBuffer,在netty中,转换为ChannelBuffer,因此如果我们想发送字符串/对象或者自定义格式的数据,就需要编写自己的编码/.解码器,进行转换,这部分被netty统一抽象为pipeline&handler
在ESB服务分发中, 发送端动作为:把任务Task封装到一个基类Event,使用MQ  发送者发送publish.send(ObjectMessage); 接收端动作为:使用MQ接收到ObjectMessage,转换成基类Event,把Event传送到处理链Handlers。可以使用Map<event.class,List<Handler> handlers> 保存事件与Handlers的对应关系。所以,先根据event.class取出 List<Handler> handlers,逐一进行处理。 另,可以在初始化时把handler注册到Map< ...
一、ChannelSink用于绑定地址端口   这个东西应该是netty里面最难理解的,或者最关键的组件了,这个我会慢慢的进行分析。在Pipeline传送完后,都必须都通ChannelSink进行处理。Sink默认处理了琐碎的操作,例如连接、读写等等。           ChannelSink这个组件是来处理downstream请求和产生upstream时间的一个组件, 是所有io操作的执行者。也就是传输的逻辑层吧。当channel创建的时候就有一个ChannelSink和它想绑定。         传输层的代码实现一般来说都是比较麻烦的,相比来说客户端的实现一般来说比服务端的实现 ...
一、最顶级的类:Executors。它提供了很多静态方法,用于获取不同种类的ExecutorService。 有线程池大小固定以及可变两种。 1、线程池大小固定:  ExecutorService pool = Executors.newFixedThreadPool(5);  
1、 ServerBootstrap bootstrap = new ServerBootstrap(                 new NioServerSocketChannelFactory(                         Executors.newCachedThreadPool(),                         Executors.newCachedThreadPool())); 或者,NioServerSocketChannelFactory(             Executor bossExecutor, Execut ...

netty总体架构

来自:http://blog.sina.com.cn/s/blog_3fe961ae01011oob.html   1. 简介 Netty 是一个异步的,事件驱动的网络编程框架和工具,使用Netty 可以快速开发出可维护的,高性能、高扩展能力的协议服务及其客户端应用。 也就是说,Netty 是一个基于NIO的客户,服务器端编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户,服务端应用。Netty相当简化和流线化了网络应用的编程开发过程,例如,TCP和UDP的socket服务开发。 “快速”和“简单”并不意味着会让你的最终应用产生维护性或性能 ...
来自:http://blog.csdn.net/gideal_wang/article/details/4316691   一 原理区别     一般在浏览器中输入网址访问资源都是通过GET方式;在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE URL全称是资源描述符,我们可以这样认 为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查 ,改 ,增 ,删 4个操作。到这里 ...
二、发送HTTP请求通过连接,客户端写一个ASCII文本请求行,后跟0或多个HTTP头标,一个空行和实现请求的任意数据。一个请求由四个部分组成:请求行、请求头标、空行和请求数据1.请求行:请求行由三个标记组成:请求方法、请求URI和HTTP版本,它们用空格分隔。例如:GET /index.html HTTP/1.1HTTP规范定义了8种可能的请求方法:
try { MessageFactory mfactory12 = MessageFactory.newInstance(javax.xml.soap.SOAPConstants.SOAP_1_2_PROTOCOL); TypeHelper typeHelper = messageServiceContext.getHelperContext().getTypeHelper(); Type outType = typeHelper.getType("http://schemas.servicestack.net/types", "SaveCurrency& ...
Global site tag (gtag.js) - Google Analytics