- 博客(59)
- 资源 (2)
- 收藏
- 关注
转载 一致性hash算法
consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在cache 系统中应用越来越广泛;1 基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的
2016-09-29 11:31:22
389
转载 最全单例模式
在所有的设计模式中,单例模式是我们在项目开发中最为常见的设计模式之一,而单例模式有很多种实现方式,你是否都了解呢?高并发下如何保证单例模式的线程安全性呢?如何保证序列化后的单例对象在反序列化后任然是单例的呢?这些问题在看了本文之后都会一一的告诉你答案,赶快来阅读吧!什么是单例模式?在文章开始之前我们还是有必要介绍一下什么是单例模式。单例模式是为确保一个类只有一个实例,并为整个系统提供一
2016-09-29 11:28:48
465
原创 java中关于锁的关键字
java中关于锁的关键字有2个 , synchronized 和volatile。 synchronized 可以对方法和语句块进行修饰。从而实现同一时刻只有一个线程能够执行。 volatile可以对变量进行修饰。保证线程在每次使用变量的时候,都会读取变量修改后的最的值。 很多人都将volatile理解为和synchronized差不多的功能。然而,实际情况并不是这样。 volatile只能
2015-09-05 21:33:59
3557
2
原创 Java轻量级锁
原文地址:http://www.tuicool.com/articles/IfeMve在C程序代码中我们可以利用操作系统提供的互斥锁来实现同步块的互斥访问及线程的阻塞及唤醒等工作。然而在Java中除了提供Lock API外还在语法层面上提供了synchronized关键字来实现互斥同步原语。那么到底在JVM内部是怎么实现synchronized关键子的呢?一、synch
2015-09-02 15:23:50
2142
原创 负载均衡方案总结
负载均衡方案总结所有的例子都通过访问www.ctrip.com为例。这里只讲方案,具体的NGIX、LVS、HAPROXY怎么工作的等以后细看了再总结。HTTP重定向负载均衡 用户通过域名解析, 得到IP地址114.100.80.100,访问这台服务器,这台机器收到请求之后,因为它是知道服务器集群里的IP的, 然后返回一个重定向到114.100.80.1的请求给用户的浏览器,然后浏览
2015-08-16 23:58:07
931
原创 半年学习线路图
学习线路图1、SSH方面Strut2Spring MVC ,Spring Security,Spring CoreHibernateibatis自己开源的.net的DAL层和java的DAL层,比ibatis和hibernate在某些方面的功能更强大,配置更简单2、SOA框架方面: xfire、ice、携程的SOA1.0和SOA2.0。m
2015-08-12 09:15:11
532
原创 索引基础知识
索引基础知识一、索引的优缺点索引的优点(为什么要有索引)1、快速取数据2、保证数据记录的唯一性3、加快表的连接速度4、在使用ORDER by、group by子句进行数据检索时,利用索引可以减少排序和分组的时间。索引的缺点1、索引需要占物理空间。2、当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。二、索引的本质其实,
2015-08-11 18:43:01
1477
转载 Java:String、StringBuffer和StringBuilder的区别
1 StringString:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。String类的包含如下定义:[java] view plaincopy/** The value is used for character storage. */ private final char
2015-08-06 15:32:17
391
原创 Java集合类总结
最近在看一本书,里面讲到了JAVA集合类。故总结下,欢迎指正。集合类 Collections List : ArrayList 长度增长方式为原有容量1.5倍+1 List : Vector 实现方法与ArrayList基本相同,也是用数组实现的 实现里加上了syschnoized,所以同ArrayList比较,它是线
2015-07-31 17:14:39
444
原创 MySQL使用规范
一、 表设计类强制类规范 1. 创建表的存储引擎必须是InnoDB。 2. 每个表必须显式的指定一个主键。 3. 不允许使用联合主键。 4. 不允许使用外键。 5. 不允许存在和主键重复的索引。 6. 自增长字段必须是主键或唯一索引。 7. 不允许在数据库中存储诸如图片,影像之类的二进制数据。 8. 不允许使
2015-07-16 11:48:28
553
转载 java中volatile关键字的含义
转载自:http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 v
2015-06-08 19:40:25
401
转载 一致性 hash 算法
一致性 hash 算法( consistent hashing )张亮consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在cache 系统中应用越来越广泛;1 基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N
2014-10-10 14:59:08
506
转载 事务的隔离级别
数据库事务的隔离级别有4个,由低到高依次为Read uncommitted 、Read committed、Repeatable read 、Serializable ,这四个级别可以逐个解决脏读 、不可重复读 、幻读 这几类问题。√: 可能出现 ×: 不会出现脏读不可重复读幻读Read uncommitted√√√
2014-10-10 13:34:28
595
转载 .net(C#)命名规范
原文地址:http://gray.iteye.com/blog/644626本文从类、类字段、方法属性、参数常量、接口、事件、命名空间等9个方面总结了C#语言命名的规则。 下面介绍C#语言命名的9种规范: a)类 【规则1-1】使用Pascal规则命名类名,即首字母要大写。 【规则1-2】使用能够反映类功能的名词或名词短语命名类。 【规则1-3】不要使用“I
2014-01-12 11:32:04
780
转载 Top K 算法详解
第一部分:Top K 算法详解问题描述百度面试题: 搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。 假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个。一个查询串的重复度越高,说明查询它的用户越多,也就是越热门。),请你统计最热门的10个查询串,要求使用的内存不能超过1
2014-01-06 13:27:55
802
转载 Procdump简介
原文地址:http://www.cnblogs.com/yangjunwl/archive/2011/03/09/1978376.htmlProcdump是一个轻量级的Sysinternal团队开发的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash dump文件, 供研发人员和管理员确定问题发生的原因. 你还可以把它作为生成dump的工具使用在其他的脚
2014-01-06 10:56:13
6719
转载 完整的站内搜索Demo(Lucene.Net+盘古分词)
前言 各位朋友,谢谢大家的支持,由于文件过大,有考虑到版权的问题,故没有提供下载,本人已建立一个搜索技术交流群:77570783,源代码已上传至群共享,需要的朋友,请自行下载! 首先自问自答几个问题,以让各位看官了解写此文的目的什么是站内搜索?与一般搜索的区别?很多网站都有搜索功能,很多都是用SQL语句的Like实现的,但是Like无法做到模糊匹
2014-01-03 11:21:16
1347
转载 MSMQ微软消息队列
前言 在使用MSMQ之前,我们需要自行安装消息队列组件!(具体安装方法大家自己搜一下吧) 采用MSMQ带来的好处是:由于是异步通信,无论是发送方还是接收方都不用等待对方返回成功消息,就可以执行余下的代码,因而大大地提高了事物处理的能力;当信息传送过程中,信息发送机制具有一定功能的故障恢复能力;MSMQ的消息传递机制使得消息通信的双方具有不同的
2014-01-03 11:13:45
1577
转载 C#引用类型和值类型
原文地址http://www.cnblogs.com/mrcooldog/archive/2008/03/03/1088769.html从概念上看,值类型直接存储其值,而引用类型存储对其值的引用。这两种类型存储在内存的不同地方。在C#中,我们必须在设计类型的时候就决定类型实例的行为。这种决定非常重要,用《CLR via C#》作者Jeffrey Richter的话来 说,“不理解引用类
2014-01-03 11:06:24
637
转载 要快速伸缩?重新架构吧!
原文地址:http://www.itivy.com/ivy/archive/2012/2/2/need-scale-do-re-architect.html虽然经受“/.效应”的考验常被人拿来说事,但其实Yahoo!的首页才是互联网上最繁忙的站点。Lukas Biewald讲述了他的FaceStat网站被Yahoo!首页上榜之后访问人数急速上升到100,000,因而不得不快速完成伸缩的
2014-01-03 10:45:17
604
转载 微软面试题及答案
微软面试题及答案 (很需要开放性思维) 第一组 1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢? 2.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻? 3.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只
2013-11-11 23:58:37
818
原创 Java线程学习
将一个类变为一个可执行的线程类有两个办法:1、实现Runable接口public class LearnThread implements Runnable{ private String console; public LearnThread(String console){ this.console = console;
2013-11-07 18:25:23
549
原创 优秀的Java后台框架(工具)整理
1、Junit测试的框架mockito,mock数据https://code.google.com/p/mockito/2、eclipse检查单元测试覆盖率的框架,EclEmmahttp://www.eclemma.org/index.html3、检查代码规范的框架,Sonarhttp://www.ibm.com/developerworks/cn/ja
2013-10-24 15:16:42
1104
原创 优秀的Jquery前段插件整理
一、地址:http://jqueryui.com/demos/简介:这个就是官方的UI,不用解释了。 常用的有widget (button , dialog , slider ) , effect ( 各种对话框、div的震动等效果)。二、地址:http://malsup.com/jquery/简介:用来在Ajax提交里同步页面,组织用户进一步操作的JS。三、地址:ht
2013-10-24 15:13:48
1215
原创 Java equals 方法和 == 的区别
equals 方法是Object类中的一个方法,一般会被子类复写,像String类就复写了Object类的equals方法,String类的equals方法是比较的字符串的内容(建议查看String类源代码就一清二楚了),如果子类没有复写Object类的equals方法的话,那么Object类的equals方法是这样实现的,源代码: public boolean equals(Objec
2013-10-24 14:38:20
618
原创 Spring MVC 与ExtJS完美集成
一、简介本demon主要是集成了SpringMVC和ExtJS,同时还支持controller页面配置、页面消息可配置(类似于国际化)、intercepter示例。二、系统集成1、包文件包文件的重要性就不多说了,建议用maven管理。但是,为了加深理解,我是直接从官网上下载的包,然后一个个试的,中间遇到了很多问题,包括少包,包冲突等。2、配置文件
2013-09-25 17:12:02
8245
原创 Spring AOP学习笔记
首先root-context.xml配置文件如下xmlversion="1.0"encoding="UTF-8"?>beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.spr
2013-09-23 16:12:37
595
转载 Java如何区分手机端还是电脑端访问
package pc;import javax.servlet.http.HttpServletRequest;public class HttpRequestDeviceUtils { /**Wap网关Via头信息中特有的描述信息*/ private static String mobileGateWayHeaders[]=new String[]{ "ZXWAP
2013-09-20 21:28:11
1736
原创 ExtJS前台直接搜索过滤
在tbar里加上下面的语句:'ProjectName:', {xtype:'textfield' , id:"project_name_search"}, { xtype:'button' , text:'Search', handler: function() { alert("search");
2013-08-02 18:07:59
1195
转载 malloc、realloc和calloc的区别
三个函数的申明分别是: void* realloc(void* ptr, unsigned newsize); void* malloc(unsigned size); void* calloc(size_t numElements, size_t sizeOfElement); 都在stdlib.h函数库内它们的返回值都是请求系统分配的地址,如果请求失败就返回NULL
2013-07-12 18:12:28
677
原创 C中.和->的区别
struct A{ int a; int b;};A *point = malloc(sizeof(struct A));point->a = 1;A object;object.a = 1;->是指针指向其成员的运算符.是结构体的成员运算符
2013-07-12 18:09:59
939
原创 编程代码规范及命名规则
代码规范【规则 2-1-1 】 在每个类声明之后、每个函数定义结束之后都要加空行。参见示例 2-1 ( a )【规则 2-1-2 】 在一个函数体内,逻揖上密切相关的语句之间不加空行,其它地方应加空行分隔。【规则 2-2-1 】 一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且方便于写注释。 【规则 2-2-2 】 if 、
2013-07-11 13:36:02
1140
原创 struct union enum的区别
struct与类的概念有点类似struct Student { int id; char name[20]; int age; char sex; char addr[50];};struct Student stu1;union是指在一段内存里放不同类型的变量。union所占的内存长度为各个成员中最长的成员的长度。而struct所占的内存长度为所有成员的长度
2013-07-10 16:39:17
1231
原创 Static的作用
内存中供用户使用的空间有:1、程序区2、静态存储区3、动态存储区全局变量和static变量都存储在静态存储区。以上知识我们都很清楚,但是为什么要用static呢?下面我们来看一个例子:#include int fun(int a){ int b =0; static c = 3; b = b + 1; c = c + 1; return (a+b+c);
2013-07-08 18:35:12
488
原创 Makefile例子
CC=gccobject = example.o hello.o bye.o work.oexample:$(object) $(CC) -o example $(object)hello.o : ./sayhello/hello.c $(CC) -c ./sayhello/hello.cwork.o : ./dowork/work.c $(CC) -c ./dowork/wor
2013-07-04 17:46:15
623
转载 Makefile
概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写m
2013-07-04 10:15:34
928
转载 Shell编程
从程序员的角度来看,Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用Shell脚本编程,完成更加复杂的操作。在LinuxGUI日益完善的今天,在系统管理等领域,Shell编程仍然起着不可忽视的作用。深入地了解和熟练地掌握Shell编程,是每一个Linux用户的必修功课之一。Linux的Shell种类
2013-07-03 15:48:25
502
转载 JAVA面试宝典
一. Java基础部分...................................................................................................... 21、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?...... 22、Java有没有goto?.....................
2013-06-19 08:58:08
607
SpringMVC+ExtJS完美集成(数据传输方式为JSON和model)
2013-09-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人