自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

houbin0912的博客

万物皆对象

  • 博客(23)
  • 问答 (1)
  • 收藏
  • 关注

转载

栈是数据结构中重要的线性结构,是一种特殊的线性表,只允许在表的一端进行插入或删除操作的线性表。表中允许进行插入、删除操作的一端称为栈顶,另一端称为栈底。栈项的当前位置是动态的,对栈顶当前位置的标记称为栈项指针。当栈中没有数据元素时,称为空栈。栈的插入操作称为进栈或入栈,栈的删除操作称为退栈或出栈。上溢是当一个超长的数据进入到缓冲区时,超出部分被写入上级缓冲区,上级缓冲区存放的可能是数据、上

2017-06-30 17:45:13 266

转载 内存溢出和内存泄漏的区别

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导

2017-06-30 17:42:22 336

原创 服务熔断、服务降级----转载

伴随着微服务架构被宣传得如火如荼,一些概念也被推到了我们面前(管你接受不接受),其实大多数概念以前就有,但很少被提的这么频繁(现在好像不提及都不好意思交流了)。想起有人总结的一句话,微服务架构的特点就是:“一解释就懂,一问就不知,一讨论就吵架”。其实对老外的总结能力一直特别崇拜,Kevin Kelly、Martin Fowler、Werner Vogels……,都是著名的“演讲家”。正好这段时

2017-06-19 12:44:38 960

转载 Web Service 那点事儿(2)—— 使用 CXF 开发 SOAP 服务

选框架犹如选媳妇,选来选去,最后我还是选了“丑媳妇(CXF)”,为什么是它?因为 CXF 是 Apache 旗下的一款非常优秀的 WS 开源框架,具备轻量级的特性,而且能无缝整合到 Spring 中。其实 CXF 是两个开源框架的整合,它们分别是:Celtix 与 XFire,前者是一款 ESB 框架,后者是一款 WS 框架。话说早在 2007 年 5 月,当 XFire 发展到了它的鼎盛时期

2017-06-12 17:50:25 429

转载 Web Service 那点事儿(4)—— 使用 CXF 开发 REST 服务

现在您已经学会了如何使用 CXF 开发基于 SOAP 的 Web 服务,也领略了 Spring + CXF 这个强大的组合,如果您错过了这精彩的一幕,请回头看看这篇吧:Web Service 那点事儿(2) —— 使用 CXF 开发 SOAP 服务今天我们将视角集中在 REST 上,它是继 SOAP 以后,另一种广泛使用的 Web 服务。与 SOAP 不同,REST 并没有 W

2017-06-12 15:13:42 628

转载 为什么NIO的性能比IO好?

1.io是面向流的,也就是读取数据的时候是从流上逐个读取,所以数据不能进行整体以为,没有缓冲区;nio是面向缓冲区的,数据是存储在缓冲区中,读取数据是在缓冲区中进行,所以进行数据的偏移操作更加方便2,io是阻塞的,当一个线程操作io时如果当前没有数据可读,那么线程阻塞,nio由于是对通道操作io,所以是非阻塞,当一个通道无数据可读,可切换通道处理其他io3,nio有selecter选择器,

2017-06-11 19:14:49 2165 2

转载 Tomcat8启动闪退问题的解决办法

首先感谢博主“六号码头”,本文是在他的原创文章《Apatch Tomcat8.0 的配置遇到问题全面总结》的基础上又做的补充。此文章默认已经安装并配置好了Android开发环境。这里少说两句关于Tomcat8的下载及安装。直接上Tomcat官网上下载Windows64位的zip版下载并解压,我的放到了D盘,解压目录为D:\apache-tomcat-8.0.

2017-06-10 15:22:46 3722 2

原创 Storm是什么?

1.定义: storm是一个分布式实时计算系统,用户只需要提供自己的插件(例如一个jar包,其中编写用户自己的逻辑代码),然后将它部署到storm服务器上,storm的master服务器就会为我们自动将jar包分配到slave服务器的进程中,然后在slave服务器中运行。(注意:master服务器只会接受用户提供的插件(也称之为拓扑,如果是java语言编写的插件可以说一个jar包就是一个拓

2017-06-09 17:46:29 1376

转载 用通俗易懂的话说下hadoop是什么,能做什么

hadoop是什么?(1)Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据,是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。Hadoop=HDFS(文件系统,数据存储技术相关)+ Mapreduce(数据处理),Hadoop的数据来源可以是任何形式,在处理半结构化和非结构化数据上与关系型数据库相比有更好的性能,具有更灵活的处理能力,不管任

2017-06-09 17:44:27 58835

转载 kafka:一个分布式消息系统

1.背景最近因为工作需要,调研了追求高吞吐的轻量级消息系统Kafka,打算替换掉线上运行的ActiveMQ,主要是因为明年的预算日流量有十亿,而ActiveMQ的分布式实现的很奇怪,所以希望找一个适合分布式的消息系统。以下是内容是调研过程中总结的一些知识和经验,欢迎拍砖。2.基础知识2.1.什么是消息队列首先,我们来看看什么是消息队列,维基百科里的解释翻译过

2017-06-09 17:38:01 435

转载 nutch和solr

nutch就是用于分布式采集数据源,solr用于建索引和搜索服务。nutch是分布式爬虫系统,solr是搜索引擎。lucene是一个做搜索用的类库。nutch和solr都是基于lucene的,二者都是可直接运行的应用程序。solr是lucene的服务器化,内嵌了jetty,提供REST接口,用户可以直接post数据给solr,然后由solr进行索引。solr不包含下载系

2017-06-09 17:25:59 341

转载 Netty 能做什么?

Netty是什么?1)本质:JBoss做的一个Jar包2)目的:快速开发高性能、高可靠性的网络服务器和客户端程序3)优点:提供异步的、事件驱动的网络应用程序框架和工具通俗的说:一个好使的处理Socket的东东如果没有Netty?远古:java.net + java.io近代:java.nio其他:Mina,Grizzly

2017-06-09 17:17:47 1254

原创 sql执行顺序

SQL 不同于与其他编程语言的最明显特征是处理代码的顺序。在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。 每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中

2017-06-08 20:09:45 216

转载 数据库索引的实现原理

强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1说白了,索引问题就是一个查找问题。。。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向

2017-06-08 18:32:26 303

转载 一分钟教你知道乐观锁和悲观锁的区别

悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改

2017-06-06 18:08:31 3997 1

转载 分布式缓存技术redis学习系列(一)——redis简介以及linux上的安装以及操作redis问题整理

一、redis简介及安装1、redis简介Redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据。当前主流的分布式缓存技术有redis,memcached,ssdb,MongoDB等。既可以把redis理解为理解为缓存技术,因为它的数据都是缓存在内从中的;也可以理解为数据库,因为redis可以周期性的将数据写入磁盘或者

2017-06-06 17:44:15 514

转载 分布式缓存技术redis学习系列(二)——详细讲解redis数据结构(内存模型)以及常用命令

Redis数据类型与Memcached仅支持简单的key-value结构的数据记录不同,Redis支持的数据类型要丰富得多,常用的数据类型主要有五种:String、List、Hash、Set和Sorted Set。Redis数据类型内存结构分析Redis内部使用一个redisObject对象来表示所有的key和value。redisObject主要的信息包括数据类型(type)、编码方

2017-06-06 17:42:56 685

转载 结合实际项目理解集群和分布式的关系

1、关于集群和分布式的关系最近看了篇文章 到底什么是集群&分布式,文中收集了多名网友的回答,一个来自知呼的回答挺明了:分布式:一个业务分拆多个子业务,部署在不同的服务器上,(我的补充:)具有处理高并发的能力,但一个子业务系统宕机,该子业务功能将无法实现。集群:同一个业务,部署在多个服务器上,(我的补充:)具有高可用的能力,一个系统宕机,不影响业务实现。现在所

2017-06-06 17:41:27 901

转载 分布式缓存技术redis学习系列(五)——spring-data-redis与JedisPool的区别、使用ShardedJedisPool与spring集成的实现及一致性哈希分析

一、Redis与spring的整合一般分为spring-data-redis整合和JedisPool整合,先看看两者的区别1)、引用的依赖不同:spring-data-Redis使用的依赖如下: dependency> groupId>org.springframework.datagroupId> artifactId>sprin

2017-06-06 17:36:41 514

转载 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

本文我们继续学习Redis的高级特性——集群。本文主要内容包括集群搭建、集群分区原理和集群操作的学习。Redis集群简介Redis 集群是3.0之后才引入的,在3.0之前,使用哨兵(sentinel)机制(本文将不做介绍,大家可另行查阅)来监控各个节点之间的状态。Redis 集群可谓是让很多人久等了。Redis 集群是一组能进行数据共享的Redis 实例(服务或者节点)的设

2017-06-06 17:35:40 482

转载 分布式缓存技术redis学习系列(三)——redis高级应用(主从、事务与锁、持久化)

安全性设置设置客户端操作秘密Redis安装好后,默认情况下登陆客户端和使用命令操作时不需要密码的。某些情况下,为了安全起见,我们可以设置在客户端连接后进行任何操作之前都要进行密码验证。修改redis.conf进行配置。[root@localhost ~]# vi /usr/local/redis/etc/redis.conf11#######################S

2017-06-06 17:33:57 354

转载 Redis启动警告问题的解决

如果启动前不对Linux内核做任何更改,那么Redis启动会报出警告,共三个:如下图所示第一个警告:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.意思是:TCP  backlog

2017-06-05 14:48:37 1221

转载 hash算法原理详解

一.概念哈希表就是一种以 键-值(key-indexed) 存储数据的结构,我们只要输入待查找的值即key,即可查找到其对应的值。哈希的思路很简单,如果所有的键都是整数,那么就可以使用一个简单的无序数组来实现:将键作为索引,值即为其对应的值,这样就可以快速访问任意键的值。这是对于简单的键的情况,我们将其扩展到可以处理更加复杂的类型的键。使用哈希查找有两个步骤:

2017-06-05 10:57:30 677

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除