关注我的人可能知道,我在去年就分享了一篇深入理解JVM读书笔记,这里面就有一篇热替换相关的内容。机缘巧合之下,刚到新公司,这周周会轮到我进行技术分享了,于是我就写了这篇文章在会议上讲解,反响还不错什么是热替换热替换是在不停止正在运行的系统的情况下进行类(对象)的升级替换;默认的虚拟机行为只会在启动时
海量数据处理面试题(二)
下面的方法全部来自http://hi.baidu.com/yanxionglu/blog/博客,对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如
海量数据处理相关面试题(一)
1、海量日志数据,提取出某日访问百度次数最多的那个IP。 此题,在我之前的一篇文章算法里头有所提到,当时给出的方案是:IP的数目还是有限的,最多2^32个,所以可以考虑使用hash将ip直接存入内存,然后进行统计。 再详细介绍下此方案:首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到
分布式选举算法之Raft算法详解
1.概述 我们在了解分布式选举算法之前,我们需要这样一种算法产生的背景。在一个分布式系统中,因为各种意外的因素,有的服务器可能会崩溃或变得不可靠,它就不能和其他服务器达成一致状态。因而这样就需要一种Consensus协议,来确保服务器的容错性,也就是说即使系统中有一两个服务器节点Crash,也不会
为什么zookeeper集群在少于 (N + 1) / 2的节点处于工作状态的情况下会崩溃
zookeeper和dubbo的关系
相信有很多人在学习了dubbo后,跟我一样,对于dubbo和zk之间的关系理解并不清晰,下面一起来学习一下两者之间究竟是如何合作的Zookeeperzookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知道,简单来说就是ip地址和服务名称的对应关系。当然也可以通过硬编
Redis常见面试题
架Q1:Redis 有什么特点?基于键值对的数据结构服务器Redis 中的值不仅可以是字符串,还可以是具体的数据结构,这样不仅能应用于多种场景开发,也可以提高开发效率。它主要提供五种数据结构:字符串、哈希、列表、集合、有序集合,同时在字符串的基础上演变出了 Bitmaps 和 HyperLogLog
支付场景中利用“策略模式+工厂模式+单例模式”解决if else过多的问题
我对策略模式曾一度理解了,但实际使用上还是不够清晰,一次偶然的机会发现了这篇文章,看完之后对策略模式的组合使用理解更深了,于是我也分享给大家。一、场景模拟public void payment(String payType) { if (payType.equals("ALI
Redis Cluster故障转移机制详解
都知道Redis Cluster具有故障转移机制,但平时开发人员很难接触到生产环境发生故障转移的情况。下面将会对此情况进行一次模拟,实打实的来感知发生故障时,cluster做了什么前提搭建了一个如下图的三主三从的集群。并且集群处于运行中故障模拟 我们首先停止一个主服务,看有什么变化:我们停止了