- 博客(15)
- 收藏
- 关注
原创 Java实现数据库连接池
本文利用JAVA代码,自行设计数据库连接池. package scut.ailab.connectionpool; import java.lang.reflect.*; import java.sql.*; /** * @author youyongming * 定义数据库连接的代理类 */ public class _Connection implements Inv...
2016-03-07 12:01:59
97
原创 悲观锁和乐观锁
悲观锁(Pessimistic Locking) 悲观锁,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。 一个典型...
2016-03-04 17:58:19
100
原创 Storm安装指南--亲测版
1. 基本配置(与Hadoop共通) 1.1 安装JDK 安装JDK6或以上版本,配置JAVA_HOME 、CLASSPATH环境变量。具体过程略。 1.2. 安装python 先确定系统自带的Python版本,如果是2.6.6或者以上的不需要安装 1.3. 配置hosts 关闭防火墙,添加集群中主机和IP的映射关...
2016-03-04 14:54:58
128
原创 Redis 安装手册--亲测版
一、安装命令 Installation。Download, extract and compile Redis with: $ wget http://download.redis.io/releases/redis-3.0.5.tar.gz_x000D_ $ tar xzf redis-3.0.5.tar.gz $ cd redis-3.0.5 make ...
2016-03-04 14:47:21
92
原创 Kafka安装手册--亲测版
Kafka安装手册 1.在安装Kafka集群之前,保证Zookeeper集群正常运行。 在集群每台机器的控制台上运行以下命令: bin/zkServer.shjcd ${ZOOKEEPER_HOME} bin/zkServer.sh start 返回结果如下,则说明Zookeeper正常启动。 2803 Jps 2782 QuorumPeerM...
2016-03-04 14:36:24
99
原创 Hadoop安装步骤--亲测版
一、集群环境及安装: 1.1 集群环境 - 系统: Ubuntu Kylin 14.04 LTS - Hadoop版本:Apache Hadoop-2.6.0 节点类型 网络地址 机器名 配置信息 Master 192.168.0.100 master CPU:4核,内存:8G...
2016-03-04 13:57:50
124
Linux下静态库和动态库的区别
首先看看静态库和动态库的定义 linux下的库有两种:静态库和共享库(动态库)。 二者的不同点在于代码被载入的时刻不同。 静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。 共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。 不同的应用程序如果调用相同的库,那么在内存里只需要有一份该共享库的实例。 下面通过一个实例来说明一下静态库和动态库的区别。 ...
2011-10-07 15:15:09
74
Tomcat源码系列8--Tomcat的JMX管理2
前面讲到了JMX的体系,下面从Tomcat源代码启动过程分析MBeans组件注册到MBeanServer的过程 。 (org.apache.catalina.startup.Bootstrap.main(String)) public static void main(String args[]) { … if (daemon == null) { ...
2011-04-01 13:23:27
116
Tomcat源码系列7--Tomcat的JMX管理1
接下来介绍一下在Tomcat中JMX的运用 1. JMX介绍 JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX是一套标准的代理和服务,用户可以在任何Java应用程序中使用这些代理和服务实现管理。 下图为JMX的体系结构 JMX包括四层,即设备层、代理层、分布服务层、附件管理歇息API。 1) 设...
2011-03-31 14:40:44
106
Tomcat源码系列6--Tomcat的Session生成和管理2
下面谈一谈Session的管理。 一. Session的管理 当tomcat启动时,会开启一个后台线程,这个后台线程是随容器的启动而启动的,它将定期检查会话超时。 (org.apache.catalina.core.ContainerBase.threadStart()) protected void threadStart() { if (thread != nul...
2011-03-28 09:45:51
147
Tomcat源码系列5--Tomcat的Session生成和管理1
本次主要谈一下Tomcat中Session的生成和管理情况。 一. 关于Sessin和cookie session被用于表示一个持续的连接状态,在网站访问中一般指代客户端浏览器的进程从开启到结束的过程。 session的常见实现形式有两种: 1. 会话cookie:即未设置过期时间的cookie,这个cookie的默认生命周期为浏览器会话期间,只要关闭浏览器窗口,...
2011-03-23 16:16:09
149
Tomcat源码系列4--Tomcat中Servlet处理流程
本次谈一下Servlet的处理流程,不当之处请各位指正。 在经过了「Tomcat启动」,「Tomcat请求处理」等一系列流程后,程序运行到org.apache.catalina.core.ApplicationFilterChain.ApplicationFilterChain.InternalDoFilter()方法,这时会调用servlet的service()方法。 void in...
2011-03-22 11:33:19
126
Tomcat源码系列3--Tomcat请求处理的流程
本次讲解一下Tomcat请求处理的流程,不当之处还请comment。 一. Tomcat 总体结构 Tomcat采用模块化管理,下面是 Tomcat 的总体结构图: 从上图中可以看出 Tomcat 的核心是两个组件:Connector 和 Container。下面是一些概念的介绍。 ① Server 一个server代表了整个catalina servlet容器,在Tomcat里面的Serve...
2011-03-20 12:36:09
90
Tomcat源码系列2--Tomcat启动流程2
下面是standardEngine的启动和connector的启动 ● standardEngine的启动 (1) 首先是StandardEngine.start()被调用 public void start() throws LifecycleException { // Standard container startup //进行logger,...
2011-03-17 16:08:52
98
Tomcat源码系列1--Tomcat启动流程1
最近在看Tomcat的源码,下面用博客记下看源码的一些心得。 Tomcat是从org.apache.catalina.startup.Bootstrap#main()开始启动. 大致分为三个步骤,即init、load和start。代码如下: public static void main(String args[]) { try { // Att...
2011-03-17 15:39:57
103
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人