摘要: 1. HashMap概述:HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。2. HashMap的数据结构:在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。 从上图中可以看出,HashMap底层就是一个数组结构,数组中的每一项又是一个链表。当新建一个HashMap的时候,就会初始化一个数组。 源码如下: 阅读全文
posted @ 2014-01-13 17:09 狂奔蚂蚁 阅读(993) 评论(0) 推荐(0) 编辑
摘要: memcached是一种缓存技术, 他可以把你的数据放入内存,从而通过内存访问提速,因为内存最快的, memcached技术的主要目的提速,默认情况下占用的端口号为:11211。在memachec 中维护了一张大的hashtable ,该表是在内存,表的结构是key value字串 (字串,数值,数组,对象,布尔,二进制数据,null)PS:与memcache功能类似的有redis缓存系统。二者区别:redis可以将内存中数据刷入到本地磁盘中。memcache适合操作的数据[变化频繁,具有不稳定性,不需要实时入库]。对memcached进行curd操作的方式:1、基于memcache(memc 阅读全文
posted @ 2014-01-13 17:02 狂奔蚂蚁 阅读(382) 评论(0) 推荐(0) 编辑
摘要: MYSQL索引主要分为四类:主键索引,普通索引(聚合,非聚合),唯一索引,全文索引全文索引,主要是针对对文件,文本的检索, 比如文章, 全文索引针对MyISAM有用。索引的原理:利用二叉树(哈希表)对建立索引的相关列进行重排。创建 :CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title,body) )engine=myisam charset utf8;INSERT INTO articles (tit 阅读全文
posted @ 2014-01-13 11:15 狂奔蚂蚁 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 对mysql优化时一个综合性的技术,主要包括a: 表的设计合理化(符合3NF)b: 添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]c: 分表技术(水平分割、垂直分割)d: 读写[写: update/delete/add]分离e: 存储过程 [模块化编程,可以提高速度]f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]g: mysql服务器硬件升级h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM)=========================================================== 阅读全文
posted @ 2014-01-13 10:53 狂奔蚂蚁 阅读(536) 评论(0) 推荐(1) 编辑
摘要: 1、 http协议建立在tcp/ip协议之上,为应用层协议。2、 web开发,数据传输均依赖于http协议。3、 http1.0短链接[已被弃用]和http1.1长链接。http请求的组成部分:请求行,消息报头,请求正文。http响应的组成部分:状态行,消息报头,响应正文。/*******************************详细的http响应******************************/Location:http://www.baidu.com.org/index.phpServer:apacheContent-Encoding:gzip [内容编码支持gzip压缩 阅读全文
posted @ 2014-01-13 10:07 狂奔蚂蚁 阅读(203) 评论(0) 推荐(0) 编辑