- 博客(57)
- 收藏
- 关注
转载 Java中间缓存变量机制(i++)
Java程序员面试宝典(第二版)中有这样一道笔试题:[java] view plaincopy/**下列程序的输出结果是()*/ import java.util.*; public class Test{ public static void main(String[] args){ int j = 0; for(in
2014-07-19 13:23:09
910
转载 java虚拟机之参数问题
JVM参数的含义 实例见实例分析参数名称含义默认值 -Xms初始堆大小物理内存的1/64(默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.-Xmx最大堆大小物理内存的1/4(默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,J
2014-07-03 14:56:44
687
原创 java虚拟机结构
java虚拟机在运行时的数据区域: 程序计数器:较小,起作用是当前线程所执行的字节码的行号指示器,即指令的执行顺序,如分支,循环,跳转,异常处理,线程恢复等。这个是线程独立的,每个线程都有自己的程序计数器,各线程之间互不影响,独立存储。java虚拟机栈:线程私有的,其生命周期与线程相同。虚拟机栈描述的是java方法执行的内存模型,每个方法都有一个栈帧,存储局部变量表,操作数栈等。
2014-07-02 19:39:57
594
转载 HttpClient---NameValuePair参数问题
HttpClient程序包是一个实现了 HTTP 协议的客户端编程工具包,要想熟练的掌握它,必须熟悉 HTTP协议。一个最简单的调用如下:Java代码 import java.io.IOException; import org.apache.http.HttpResponse; import org.apache.http.client.
2013-12-10 10:38:00
29756
2
原创 一个成功IT精英的必备品质
最近在网上看到了好多的牛人,还有在读书的过程中,特别是有关于人物自传和公司自传的文章,回想一下,自己觉得想要成为一个成功的人,不仅是在IT行业,各个行业都是具有类似性,看看大家能不能再自己的身上找到这些品质的影子??(以下是个人总结或者感觉应该有的,如果大家有不同意见欢迎评论补充)一生中有那么一段时间每天只睡4个小时或者更短(这段时间通常在2年或者更多),具有比较旺盛的精力。具有敏锐的
2013-12-06 14:20:34
1179
原创 NoSQL——事务和数据完整性管理
RDBMS的ACID在单个服务器或节点上没有问题,但是一旦分不到多个节点上就开始出现问题了。想要一致的,有条理的解决在分布式系统中实现类ACID保证的难题,就需要理解下面三个因素在分布式系统中如何受影响(CAP)一致性一致性表示原子性和隔离性,即一致的读写,并发能看到有效的一致的数据状态,在CAP中,一致性纸没有满足约束的数据不会被持久化。可用性即在需要时可以提
2013-12-04 21:02:06
1700
转载 在线编码大赛
摘要:只要你敢挑战自己,那么都可以在文中提及的这些平台上展示、PK你的编码技能。或许你就是下一个幸运儿,让你有机会在这些大公司实习或工作。感兴趣的话就来试试吧!如果你拥有出色的编码技能,或者虽然你只是名初学者,但你愿意去锻炼自己的编码能力,愿意去和顶尖的编码者进行PK,那么这篇文章就是为你而准备的。本文提供了11个在线编码竞赛,与来自世界各地的编码人员进行PK。文中提及的这些网
2013-12-03 10:10:49
712
原创 NoSQL——数据索引与排序
数据库索引建立在哈希函数,B树和B+树的基础上。 MongoDBMongoDB默认会在所包含的所有集合的_id属性上创建一个索引。注意解释函数的调用,这是一个查询性能的测量函数,输出也是一个文档:db.jihe.find().explain();Cursor: 游标用来返回查询结果集。Nscanned:被扫描的尸体总数,使用索引时对应索引实体的总数。nscannedOb
2013-12-03 09:52:26
4383
原创 NoSQL--查询存储、修改以及管理
MongoDBMongoDB数据库没有join,所以在MongoDB中,这种关系数据是在服务器范围外显式关联起来的。如DBRef。查询时与SQL类似的where语句中没有like,所以使用更为强大的正则表达式进行查找匹配。MongoDB查询文档时数据类型敏感的。即{ movie_id : "1111" } 和{ moive_id : 1111 }是不同的,前者是字符串类型,后者是数字整型。
2013-12-02 16:55:30
3620
转载 编程面试的10大算法概念汇总
编程面试的10大算法概念汇总本文由 伯乐在线 - 敏敏 翻译自 programcreek.com。欢迎加入技术翻译小组。转载请参见文章末尾处的要求。以下是在编程面试中排名前10的算法相关的概念,我会通过一些简单的例子来阐述这些概念。由于完全掌握这些概念需要更多的努力,因此这份列表只是作为一个介绍。本文将从Java的角度看问题,包含下面的这些概念:1. 字符串2. 链表
2013-12-02 08:36:07
664
原创 NoSQL——CRUD操作
CRUD即是增删查改操作,NoSQL是一类数据库,其有一个共有的突出特征:创建和读取操作比更新和删除操作更重要。创建纪录唯一主键在关系型和非关系型数据库中都很重要。MongoDB中没有数据库join的概念,因此要么在客户端利用对象标识符手工实现join操作,要么利用DBRef。面向列数据库没有定义任何关系引用的概念。因为它也避免了集合之间的连接。列数据库里数据是这样存储的:每个行健唯一
2013-11-27 21:36:59
1002
原创 Tomcat配置文件——server.xml(5)
Manager元素其实现HTTP会话管理,tomcat6.0中提供5种:StandardManager:如无配置则是默认的会话管理器。这是在tomcat正运行时在内存中处理会话的非集群实现。PersistentManager:实现把空闲会话对象(超过设定的时间)交换到磁盘上,在必须节省内存而且会话中存储对象很大时很有用。DeltaManager:在配置tomcat以执行集群运算时,
2013-11-27 10:37:34
803
原创 Tomcat配置文件——server.xml(4)
Realm元素Realm元素代表安全防护的范围,列出了授权指定的访问Context及角色的用户。GlobalNamingResources元素GlobalNamingResources可以让管理员指定应用于整个Server的JNDI映射关系,否则,这些映射关系就必须出现在各个Web应用程序的web.xml文件中。GlobalNamingResources没有任何
2013-11-27 09:32:21
776
原创 NoSQL的存储架构——最终一致性数据库
Google Bigtable是列数据库的灵感之源,Amazon Dynamo就是最终一致性存储的原型。这个系统有些基本需求,包括高可用性和容错能力。数据被组织成了大部分情况下只需按主键查询的结构,所以关系型引用和join连接不是必须的。Dynamo建立在一致性哈希(consistent hashing),对象版本(object versioning),闲话协议(gossip-based memb
2013-11-26 21:46:27
1036
原创 NoSQL的存储架构——键值存储Memcached和Redis
Memcached是一种分布式高性能对象缓存系统,非常简洁,只包含最小的功能集,不支持备份,故障转移或者故障恢复。使用Memcached主要目的通常是减少数据库负载。Memcached的核心是一个槽(slab)分配器。Memcached按槽存储值。槽本身由页(page)组成,页又由块(chunk)或桶(bucket)组成。槽最小1kb,大小按1.25的幂次增长。Memcached可以存
2013-11-26 21:28:39
1591
原创 NoSQL的存储架构——MongoDB
MongoDB文档按组分成集合。集合类似关系表,不过集合并不对schema进行严格的约束,这与关系表不同。文档存储为BSON格式。BSON是JSON类文档的二进制彪马形式,结构类似嵌套键值对。BSON是JSON的超集,额外支持一些类型,如正则表达式,日期等。每个文档都有唯一的标识符。如果不指定,MongoDB会自动生成(时间戳+机器标识+进程号+自增号)。Mongo
2013-11-26 20:54:50
1234
原创 Tomcat配置文件——server.xml(3)
Engine元素Engine元素代表从其Service元素的一个Connector接受请求,将其交付处理,并将结果返回给Connector的软件。Host元素Host元素代表一个主机或者虚拟主机。Virtual hosing:在一般情况下,只有在架设虚拟主机时才需要修改Host元素。如果想在tomcat中使用虚拟主机,只需设定主机的DNS或数据。在server.
2013-11-26 15:05:49
1034
原创 Tomcat配置文件——server.xml(2)
Server元素server元素是指整个tomcat服务器,在server.xml文件中只能有一个。port是监听关闭的端口号,只能监听localhost上的地址,这样就无法从网络的其他地方停止服务器了。Service元素其代表包含一个Engine的一组Connector,每个Connector都会在已知的端口和协议上接收所有的输入请求,然后给Engine处理。一个se
2013-11-26 10:20:20
849
原创 Tomcat配置文件——server.xml(1)
tomcat是以面向对象的方式运作的,在执行期间,它会基于配置文件的设定动态的组建起对象结构。server.xml文件中的每个主要元素都会创建软件“对象”、排序及进程管道中设置的这些元素嵌套方法,让用户能执行过滤,分组等工作。server.xml文件中的元素清单:
2013-11-25 21:25:17
583
转载 Tomcat类加载机制
Tomcat中的类加载策略和JDK中的委托模型略有不同。Tomcat Server在启动的时候将构造一个ClassLoader树,以保证模块的类库是私有的,ClassLoader结构如下: Bootstrap | System | Com
2013-11-25 21:15:21
640
转载 Tomcat6.0源码学习--启动框架
1.摘要对于独立运行的应用程序来说,都有一个入口,以便启动应用程序。Java应用程序的入口是类的main方法,在这里你可以初始化应用的上下文环境,然后创建应用组件并提供服务。对于简单的应用程序,可以直接将启动代码放在main方法中,但是,对于复杂的,或者可扩展的应用来说,这样做是不负责任的,也是不优雅的。那么,怎么做才是负责任的,优雅的?下面我们看看Tomcat是如何启动的,分析一下它的启动框
2013-11-25 21:09:55
657
转载 Tomcat6.0源码学习--接受并传递请求
1.接受请求Tomcat启动时,首先启动Container,然后启动Connector。而在Connector启动时,会启动协议处理器和映射监听器。协议处理器用来处理具体的协议的,对于http/1.1,其处理器为Http11Protocol,而AJP则为AjpProtocol。当然在协议处理器启动时,会启动监听线程来监听指定端口,从而接受请求。对于http/1.1协议的处理器Http11P
2013-11-25 21:08:08
714
转载 Tomcat6.0源码学习--Connector架构
概述Tomcat虽然具有传统Web服务器(如Apache)的功能(处理Html页面,css文件等静态资源的能力),但更多的,Tomcat以Servlet容器著称(处理Jsp和Servlet等动态资源的应用服务器)。由Tomcat的总体架构可知(参见:Tomcat6.x架构概述),Servlet容器由2个主要组件构成:Connector(连接器)和Container(容器)。Connector负
2013-11-25 21:06:34
814
转载 Tomcat6.0源码学习--架构概述
Tomcat6是最新版本的web容器,其支持最新版本的servlet2.5和jsp2.1。而且Tomcat6架构也是经过重新设计优化过的,所以我们有必要分析一下它的架构过程。显然,这是一个通过阅读Tomcat的源代码及相关文档,演绎架构的过程。或许有人会说,这不是放马后炮吗?!!但我觉得这是自我进步的一个必经步骤,先模仿之,然后才能超越之,毕竟我本凡人。Tomcat的架构总的来说是分层次的、可
2013-11-25 21:00:10
622
原创 Tomcat的性能调校
测量web负载的工具:Apache Benchmark(ab),Siege,Apache Jakarta的JMeter。其中,JMeter是最有特色的,也是比较好用的,但是其缺点是不能像ab和siege所做的那样,每秒请求并完成很多次HTTP请求。如果不是为了设法找出tomcat能每秒响应多少次请求,就可以用JMeter。新的基准调校软件包:Faban。Tomcat提供了三种不同的服务器设计实现方
2013-11-23 10:46:13
1222
原创 NoSQL的存储架构——HBase
HBaseHBase的分布式存储架构:HBase的部署遵从主从模式,通常有一个主机和一组从机,俗称range server。启动时,主机会给每台range server 分配一组区间,每个区间包含一个行记录的有序集合,行记录有行健唯一标识。如果存储在区间中的行记录数量超过了配置的阈值,区间就会分割成两个新的区间,行记录在这两个新的区间之间
2013-11-22 21:50:24
1118
原创 tomcat中的管理领域,角色和用户
主要在tomcat的conf/server.xml文件和web应用程序中的web-inf/web.xml文件中的配置tomcat含有可插入式的领域架构,并具备几种有用的领域实现:UserDatabaseRealm,JDBCRealm,JNDIRealm和JAASRealm。要指定用哪种,则需在server.xml文件中用标签插入,calssName属性设定使用领域。UserDataba
2013-11-21 20:33:46
2036
转载 tomcat运行时JVM中的参数配置
JVM参数的含义 参数名称含义默认值 -Xms初始堆大小物理内存的1/64(默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.-Xmx最大堆大小物理内存的1/4(默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到
2013-11-21 16:36:30
1665
原创 tomcat中端口的TCP连接传递
tomcat服务器运行时一般端口号都为80,且需要JVM必须以root用户运行。但是,如果除JVM进程之外的东西可以将所有端口80的TCP连接传递给高于1024端口号的端口,那么JVM就可以不必以root用户运行。这点在linux系统中权限尤其重要,如果没有root权限,可以让tomcat运行在8080上,然后有合适权限的其他用户可以把80端口TCP连接传递给8080端口。这用到了linux中
2013-11-21 16:17:22
5912
2
原创 一台服务器如何同时运行多个tomcat
一般情况下一台服务器运行一个tomcat容器,但是这不是必须的,如果有需要可以运行多个tomcat容器,如某些web应用程序正在测试,可能导致tomcat的崩溃,那么这个web应用程序就不应该和其他正常运行的web应用程序放在一个tomcat容器中,负责可能导致其他的web服务崩溃,这是可以在一台服务器上运行多个tomcat。这个主要是在tomcat的server.xml文件中进行配置,首先要了解
2013-11-21 15:59:56
2166
转载 四种内核
Trident图形接口的排版引擎Trident(又称为MSHTML),是微软的窗口操作系统(Windows)搭载的网页浏览器—Internet Explorer的排版引擎的名称,它的第一个版本随着1997年10月Internet Explorer第四版释出,之后不断的加入新的技术并随着新版本的Internet Explorer释出。在已经发布的Internet Expl
2013-11-20 20:33:51
1531
转载 最便宜的高负载网站架构
关键字:企业应用 1, LVS做前端四层均衡负载基于IP虚拟分发的规则,不同于apache,squid这些7层基于http协议的反向代理软件,LVS在性能上往往能得到更好的保证! 2,squid 做前端反向代理加缓存squid是业内公认的优秀代理服务器,其缓存能力更让许多高负载网站青睐!(比如新浪,网易等)使用他,配合ESI做WEB动态内容及图片缓存,最
2013-11-20 20:31:58
803
转载 说说大型高并发高负载网站的系统架构
一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经
2013-11-20 20:25:49
809
转载 T界需求最旺的16项技能
T界需求最旺的16项技能发表于17小时前| 4836次阅读|来源CSDN|0条评论|作者张红月商业智能移动开发摘要:对于刚踏入或者正准备踏入IT界的朋友,你知道市场上哪些技能是最缺乏的吗?你们不妨来看看本文提供的16项技能,选择其中一种最适合你的去钻研,或许某年某月的某一天,你就是该领域的大神。目前,IT市场上最缺的是哪方面的技术人才,有哪些技能在市场上最吃香?
2013-11-20 20:10:36
1055
转载 web.xml配置
在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener ->
2013-11-20 09:31:51
655
原创 Apache Web服务器综合日志格式
Http://httpd.apache.org/doc/2.2/logs.html#combined客户端IP地址:使用代理则是代理ip客户标识:不可靠,通常不会记录。认证用户名:无需认证则没有请求接收时间:日期,时间,时区请求内容:方法,资源,请求参数,协议。状态码:HTTP状态码返回对象的大小:字节为单位提交方(Referrer):连接到web页面或资源的uri或url。用户代理:客户
2013-11-19 21:36:01
1031
原创 NoSql的接口与交互
为区分NqSQL不同的数据存储和访问方式,先分类:文档存储:MongoDB和CouchDB键值存储:(内存里的,可持久化的,甚至有序的)Redis和BerkeleyDB列族存储:HBase和Hypertable最终一致的键值存储:Apache Cassandra和VoldermotMongoDB可以存储任意数据集合们只要数据可以用JSON式的对象层次结构表示,还只是BSON,即二进制编
2013-11-19 21:33:50
1303
原创 NoSql-MongoDB和Cassandra
MongoDB:MongoDB默认目录/date/db(C:\\data\db),监听端口是27017修改目录和端口:mongod --dbpath *****和mongod --port.使用数据库用use 数据库名,使用db.location.save()方法将数据库存入location集合。集合没有显式的创建,数据库和集合都是在插入第一条数据时创建。获得location集合中的所有记
2013-11-15 21:38:55
972
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人