`
vern
  • 浏览: 15091 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
文章列表
JVM的主要结构如下图所示,图片引用自舒の随想日记。 方法区和堆由所有线程共享,其他区域都是线程私有的 程序计数器(Program Counter Register) 类似于PC寄存器,是一块较小的内存区域,通过程序计数器中的值寻找要执行的指令的字节码,由于多线程间切换时要恢复每一个线程的当前执行位置,所 以每个线程都有自己的程序计算器。这一个区域不会有OutOfMemeryError。当执行Java方法时,这里存储的执行的指令的地址,如果执行的是 本地方法,这里的值是Undefined。 虚拟机栈(Java Stack) 虚拟机栈也是线程私有的,每创建一个线程,虚拟机就会为这个 ...
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的 URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接 口(基于Http协议的), ...
前言  JVM GC是JVM的内存回收算法,调整JVM GC(Garbage Collection),可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为 复杂的过程,所以我们要了解JVM内存组成,回收算法,对象分配机制。   JVM 堆内存组成 Java堆由Perm区和Heap区组成,Heap区由Old区和New区(也叫Young区)组成,New区由Eden区、From区和To区(Survivor)组成。 Eden区用于存放新生成的对象。Eden中的对象生命不会超过一次Minor GC。 Survivor Spa ...
PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下。 一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术 ...
Jedis之ShardedJedis一致性哈希分析   ShardedJedis通过一致性哈希实现的的分布式缓存。主要思路: redis服务器节点划分:将每台服务器节点采用hash算法划分为160个虚拟节点(可以配置划分权重) 将划分虚拟节点采用TreeMap存储 对每个redis服务器的物理连接采用LinkedHashMap存储 对Key or KeyTag 采用同样的hash算法,然后从TreeMap获取大于等于键hash值得节点,取最邻近节点存储;当key的hash值大于虚拟节点hash值得最大值时,存入第一个虚拟节点 shard ...
众 所周知,每一个HTTP响应都会带有一个状态码,不过对于很多开发者来说,平时使用最多的几个状态码无外乎就是200、400、404、500等。那其他 众多状态码该应用在何种场景中,什么时候应该使用哪些状态码就成为一个值得我们深入思考的问题了。即便在Facebook这样的公司中,那些聪明的开发者 所构建的API也可能只返回200。 为此,Michael Kropat专门撰文分析了各个状态码的适用场景,以及我们为何要如此细致地区分不同状态码,同时还谈及了这么做的好处。 有什么是比返回一个HTTP状态码还要简单的事情呢?页面渲染了么?如果渲染,那就返回200呗。页面不存在?那就是404。需要将用 ...
一致性hash算法 一致性hash算法用于解决在服务器集群中,添加/删除Server只影响极少部分的Client。例如我们有10台Server提供服务,且有一个均衡负载的前端,前端通过普通的取模将Client定向到某一台Server: client_hash_val %10 当10台Server中有一台Server宕机时,这个取模操作成了: client_hash_val %9 当新添加1台Server时,这个取模操作成了: client_hash_val %11 凭感官认识,我们可知当Server集群发生机器变动时,大部分Client会被定向到不同的Server。一致性Hash ...
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179     一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。      一致性hash算法提出了在动态变化的Cache环境中,判定哈希算法好坏的四个定义: 1、平衡性(Balance):平衡性是指哈希的结果能够尽可能分布到所有的缓冲中去,这样可 ...
《Redis源码学习笔记》文章列表 由于图片较大,缩放较为模糊,请双击打开查看原图 ^_^  主从复制简单来说就是把一台redis数据库中的数据同步到另一台redis数据库,并且按照数据流向,数据的发送者我们称作master,数据的接受者 我们称作slave(master/slave的划分并不是那么一定的,譬如B可以作为A的slave,但同时也可以作为C的master),下面就从 slave和master的角度分别说明主从复制流程。  首先是slave端,对于slave端来说,主从复制主要经历四个阶段:  第一阶段:与master建立连接  第二阶段:向master发起同步请求(SYNC) ...
NSQ 是实时的分布式消息处理平台,其设计的目的是用来大规模地处理每天数以十亿计级别的消息。NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征,是一个成熟的、已在大规模生成环境下应用的产品。 NSQ 由 3 个守护进程组成: nsqd 是接收、保存和传送消息到客户端的守护进程。 nsqlookupd 是管理的拓扑信息,维护着所有nsqd的状态,并提供了最终一致发现服务的守护进程 nsqadmin 是一个 Web UI 来实时监控集群(和执行各种管理任务) 这篇文章介绍的是nsq重要组件nsqd的实现。 Topic与Cha ...
前言 我目前正在从事HTTPS方面的性能优化工作。在HTTPS项目的开展过程中明显感觉到目前国内互联网对HTTPS并不是很重视,其实也就是对用户 隐私和网络安全不重视。本文从保护用户隐私的角度出发,简单描述现在存在的用户隐私泄露和流量劫持现象,然后进一步说明为什么HTTPS能够保护用户安全 以及HTTPS使用过程中需要注意的地方。 国外很多网站包括Google、Facebook、Twitter都支持了全站HTTPS,而国内目前还没有一家大型网站全站支持HTTPS(PC 端的微信全部使用了HTTPS,但是PC端用户应该不多)。甚至一些大型网站明显存在很多HTTPS使用不规范或者过时的地方。比 ...
1. 引言 如果你开车去酒店赴宴,你经常会苦于找不到停车位而耽误很多时间。是否有好办法可以避免这个问题呢?有的,听说有一些豪车的车主就不担心这个问题。 豪车一般配备两种钥匙:主钥匙和泊车钥匙。当你到酒店后, ...
★ 实例说明 本实例使用J2SDK提供的keytool工具用默认的密钥库和算法创建几个数字证书。   ★运行程序keytool程序运行时加上命令行参数–genkey即可。在命令行中输入“keytool   –genkey”将自动使用默认的算法生成公钥和私钥,并以交互方式获得公钥持有者的信息。其交互过程如下,其中带下划线的字符为用户键盘输入的内容,其他为系统提示的内容 C:/>keytool -genkey输入keystore密码:  123456您的名字与姓氏是什么?[Unknown]: Liao Weimin1您的组织单位名称是什么?[Unknown]:
SSH原理与运用 一、什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会 ...
How to get and set default Character encoding or Charset in Java   Default Character encoding in Javaor charset is the character encoding used by JVM to convert bytes into Strings or characters when youdon't define java system property "file.encoding". Java gets character encoding ...
Global site tag (gtag.js) - Google Analytics