`
wsmajunfeng
  • 浏览: 491639 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
1、分布式的基本概念:http://blog.jobbole.com/95588/2、分布式系统的一致性探讨:http://blog.jobbole.com/95618/3、关于分布式事务、两阶段提交协议、三阶提交协议:http://blog.jobbole.com/95632/   通过文章3能够明白两阶段提交协议、三阶提交协议是解决什么问题(分布式事务是避免数据不一致,两阶段/三阶段提交协议/paxos为分布式事务提供了解决方案的技术理论),以及三阶段跟二阶段的区别(三阶段就是把二阶段的第一阶段拆分了2个阶段,这样解决了二阶段的单点故障与同步阻塞问题)和二三阶段的问题。   分布 ...

IaaS,PaaS和SaaS

 
参考资料: http://www.fallhunter.com/p/10628 http://cloud.51cto.com/art/201107/278903_all.htm http://blog.csdn.net/mashangyou/article/details/23459511  http://www.zhihu.com/question/32326748   个人的理解备忘: SAAS基于PASS,PASS基于IASS IASS是硬件层面的服务提供; PASS是运行时环境的服务提供,包括各种中间件服务,比如存储、缓存、中间件、技术框架,需要用户基于PASS再去 ...

加密解密

一、消息摘要 消息摘要(Message Digest):它是一个唯一对应一个消息或文本的固定长度的值。 消息摘要算法(MD5 SHA MAC)用于校验两份数据文件是否是同一个,内容是否有发生改变。   消息摘要算法的特点: ① 无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。 ② 消息摘要看起来是“随机的”。这些比特看上去是胡乱的杂凑在一起的。 ③ 一般地,只要输入的消息不同,对其进行摘要以后产生的摘要消息也必不相同;但相同的输入必会产生相同的输出。 ④ 消息摘要函数是无陷门的单向函数,即只能进行正向的信息摘要,而无法从摘要中恢复出任何的消息,甚至根本就找不到任何与 ...
Spring事务配置的五种方式见http://www.blogjava.net/robbie/archive/2009/04/05/264003.html Spring事务传播特性实例解析http://blog.csdn.net/liovey/article/details/14149137 Spring 事务管理全解析http://www.cnblogs.com/kelin1314/archive/2009/11/25/1609993.html ibm:https://www.ibm.com/developerworks/cn/education/opensource/os-cn-s ...
首先有三个概念: 物理CPU、逻辑CPU、CPU核数 一个物理CPU上有多个CPU核,如果采用了intel的超线程技术(HT), 就会再多出一倍的cpu核出来 一般情况下,逻辑cpu数=物理CPU*cpu核数 如果采用了超线程技术,则正常逻辑cpu数=物理CPU*cpu核数*2 top然后1看到的cpu个数以及java中的Runtime.getRuntime().availableProcessors()获得到的都是逻辑cpu数。查看物理CPU的个数#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l ...

MapReduce

一、例子 如果想统计下过去10年计算机论文出现最多的几个单词,看看大家都在研究些什么,那收集好论文后,该怎么办呢?方法一:我可以写一个小程序,把所有论文按顺序遍历一遍,统计每一个遇到的单词的出现次数,最 ...

长连接

 长连接应该翻译为keep-alive connection,或者是 persistent connection,而不是我们直译为Long Connection,否则你在英文文档中不好查到这方面的资料的,以下是维基百科针对长连接的说明:    http://en.wikipedia.org/wiki/HTTP_persistent_connection    以下是我的部分翻译:     HTTP长连接(持久化连接)        以下是一张连接与接连接的区别                HTTP长连接,英文的说话有这么几种:HTTP persistent connection、HTTP k ...
转http://blog.csdn.net/sparkliang/article/details/5279393   consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在 cache 系统中应用越来越广泛; 1 基本场景 比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到 N 个 cache ; hash( ...

自定义log4j的Appender

 
编写自定义appender 的 步骤 1. 扩展 AppenderSkeleton 抽象类。如果是通过流方式实现读写数据的话,自定一定appender可以从WriterAppender继承,这样只需要把我们自己的 OutputStream连接到WriterAppender.qw上就可以了。更方便快捷。 2. 指定您的 appender 是否需要 layout。这个由requiresLayout()方法确定。 3. 如果某些属性必须同时激活,则应该在 activateOptions() 方法内完成。该方法上在Appender的构造函数之后被调用的。 4. 实现 close() 方法。它 ...
 原文见http://www.ha97.com/5095.html 本人的理解; 性能测试首先要设置一个并发数(U_concurrent),其代表了实际请求服务器时有多少个用户在同时访问。这些并发用户是这样子访问的: 用户之间是相互独立,没有关系的 每个用户 ...

资料整理

1、手工编写例子:http://blog.csdn.net/qyongkang/article/details/6090497 eclipse引入btrace jar包 2、btrace例子:http://inter12.iteye.com/blog/1759882 输出方法参数值、方法返回值 方法执行时间 期望的到一个method哪几行被执行了 3、BTrace实现原理的初步分析:http://www.iteye.com/topic/483964 4、btrace用户手册翻译:http://www.blogjava.net/conans/articles/365924 ...

MDC和NDC

org.apache.log4j   Class MDC java.lang.Object org.apache.log4j.MDC public class MDC extends java.lang.Object The MDC class is similar to the NDC  class except that it is based on a map instead of a stack. It provides mapped diagnostic contexts . A Mapped Diagnostic Contex ...
NDC ( Nested Diagnostic Context )和 MDC ( Mapped Diagnostic Context )是 log4j 种非常有用的两个类,它们用于存储应用程序的上下文信息( context infomation ),从而便于在 log 中使用这些上下文信息。   NDC的实现是用hashtable来存储每个线程的stack信息,这个stack是每个线程可以设置当前线程的request的相关信息,然后当前线 程在处理过程中只要在log4j配置打印出%x的信息,那么当前线程的整个stack信息就会在log4j打印日志的时候也会都打印出来,这样可以很好的 跟踪当 ...
在平时开发中,我们经常采用HashMap来作为本地缓存的一种实现方式,将一些如系统变量等数据量比较少的参数保存在HashMap中,并将其作 为单例类的一个属性。在系统运行中,使用到这些缓存数据,都可以直接从该单例中获取该属性集合。但是,最近发现,HashMap并不是线程安全的,如果你 的单例类没有做代码同步或对象锁的控制,就可能出现异常。 首先看下在多线程的访问下,非现场安全的HashMap的表现如何,在网上看了一些资料,自己也做了一下测试:  1 public   class  MainClass  {  2       3      public   static   final ...
1) 二八法 若80%的访问量集中在20%的时间里,可用此分析方法,其图形就是一个正态分布图,如下。 具体计算公式为:      tps = (24小时的PV值*80%)/(24*3600*20%) 举例有,假如中文站每日的访问量为500万,其中19:00-23:40,访问量为400万,其余时间段的访问量很平坦,而且其余时间段的总访问量为100万,那么就可以用二八法,其计算公式为 tps = (500万*0.8)/(24*3600*0.2)。      2)简单峰值法 若在每天的某一时段里有很大的访问量,其他时间相对较少,可以用简单峰值法,其实二八法只是简单峰值法的一个特例。 ...
Global site tag (gtag.js) - Google Analytics