★架构
DavidBigHero
谁说编程无趣,我偏视编程如生命,在其中活出人生精彩!
展开
-
SpringCloud(十四):Feign的demo之解决超时问题
我们之前在第一次请求的时候会出现超时的问题,我们来参考github关于这个问题的解析。地址:https://github.com/spring-cloud/spring-cloud-netflix/issues/768默认的请求时间为1秒,超过这个时间便超时异常。那么顺着这个思路我们有如下解决方式:1、把时间设长这里设置5秒hystrix: command:原创 2017-08-14 16:55:21 · 25437 阅读 · 12 评论 -
pom文件解析
pom文件解析Maven的依赖是使用Maven坐标来定位的,而Maven坐标主要由GAV(groupId, artifactId, version)构成。因此,使用任何一个依赖之间,你都需要知道它的Maven坐标。http://www.mvnrepository.com 在这里可以找到很多的依赖坐标。1、依赖dependency> groupId>转载 2017-05-07 09:49:27 · 3940 阅读 · 7 评论 -
DUBBO研究与学习四:Demo
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。实践了一个小demo,不妨一看。目录结构服务提供者pom.xml,配置依赖的jar包<project xmlns="http://maven.apache.org/POM/4.0.0" xmln原创 2017-04-29 15:02:33 · 499 阅读 · 9 评论 -
DUBBO研究与学习三:Dubbo+zookeeper安装
先来看成果,启动的管理控制台界面效果图:那么Dubbo是怎么搭建起来的?下面就一步一步来说。环境版本:Linux系统centOS7JDK:jdk-7u76-linux-x64.tar.gzTomcat:apache-tomcat-7.0.59.tar.gzZookeeper:zookeeperDubbo:dubbo-admin-2.4.3.war原创 2017-04-28 21:08:22 · 662 阅读 · 10 评论 -
Hadoop(三) 大数据离线计算与实时计算
一、大数据离线计算:MapReduce计算模型1、MapReduce是处理HDFS上的数据2、MapReduce的思想来源是PageRank(搜索排名),原理是进行分布式计算。如上图,网页跳转中,访问网页3的次数最多,也就是权重最大的为网页3。比如京东、淘宝中给推荐的商品,就是近期访问的比较多的商品。MapReduce的思想是把一个大任务拆分成多个小任务,再把小任务的结果汇原创 2017-05-05 20:07:43 · 16891 阅读 · 9 评论 -
Hadoop(二) 了解
一、什么是大数据?举例:1、商品推荐:在天猫中找到过去1个月中卖得好的商品。问题1:大量的订单如何存储?问题2:如何计算大量的订单?(1)大数据的存储 (2)大数据的计算2、天气预报:最近两三天的天气预报情况。问题1:大量的天气数据如何存储?问题2:如何计算大量的天气数据?-(1)大数据的存储 (2)大数据的计算大数据核心问题:(1)大数据的存储--->分布原创 2017-05-05 17:26:15 · 702 阅读 · 5 评论 -
Hadoop(一)概况
昨天偶然的机会听了宅客学院赵强老师关于Hadoop的一堂课。受益匪浅,自己对其相关内容产生兴趣,便火速了解了一遍。迫不及待与大家分享。Java+大数据对于学java的咱们来说,不学大数据真是辜负了大好时光。2.5万基本上是普通IT技术人员的天花板,能上这个数的人很少,除非是架构师或者做底层的开发。但Hadoop这块2万多薪资只能算一般,后面还有很大发展空间。薪资情况原创 2017-05-05 16:04:57 · 1059 阅读 · 6 评论 -
SpringBoot
关于SpringBoot,搜索了一些资料。可以看看官方给的定义。 SpringBoot:Takes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get yo原创 2016-11-14 17:13:51 · 1002 阅读 · 50 评论 -
SpringBoot构建微服务整体了解
在上篇中介绍介绍了SpringBoot,这篇继续介绍怎么用SpringBoot来构建微服务。微服务说到微服务,什么是微服务呢?微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP协议的RESTful API)。每个服务都原创 2016-11-27 21:54:27 · 2928 阅读 · 22 评论 -
关于使用jboss和tomcat的讨论
在项目中由于从jboss向tomcat切换。需要考虑一些问题,最终确定了下来。1、ear包和war包jboss是ejb容器,可以运行ejb应用,支持ear包。而Tomcat只是servlet容器,只能运行web应用,只能打成war包。2、运行时jar包在jboss中的modules目录里有system的文件夹,是jboss自带的jar包,启动时会自动加载。而原创 2017-05-07 10:48:01 · 1208 阅读 · 8 评论 -
nginx搭建
一、先安装nginx依赖的包gcc安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++ PCREPCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需原创 2017-07-29 11:48:11 · 460 阅读 · 15 评论 -
SpringCloud(十三):Feign的demo之日志
日志输出的配置很简单。在原先的基础上更改两处,一是application.yml中添加:logging: level: com.itmuch.cloud.feign.UserFeignClient: DEBUG二是在Configuration1.java中添加:@BeanLogger.Level feignLoggerLevel(){ return Logger.原创 2017-08-14 16:16:43 · 2660 阅读 · 4 评论 -
SpringCloud(十二):Feign的demo之覆写Feign的默认配置
一、调用用户微服务1、改写原先的feign服务为microservice-consumer-movie-feign-customizing2、编写Configuration1.javapackage com.itmuch.config;import org.springframework.context.annotation.Bean;import org.springframe原创 2017-08-14 16:04:17 · 1925 阅读 · 4 评论 -
SpringCloud(十一):Feign的demo之添加Feign
上篇关于Feign的官方资料进行了翻译和学习。小编将带你简单实现几个demo来实践Feign的学习。这篇我们介绍如何在项目中添加Feign一、测一个get请求1、基于之前的项目进行更改,将之前的消费微服务microservice-consumer-movie换成microservice-consumer-movie-feign。2、添加feign的jar包依赖 org.s原创 2017-08-14 11:20:43 · 3045 阅读 · 5 评论 -
SpringCloud(十):声明式RESt客户端:Feign
说明:本文是个人在学习Feign模块突然奇想想要把官方资料拜读一遍,然后顺便译成此文,仅作参考。原文地址:http://cloud.spring.io/spring-cloud-static/Camden.SR1/#spring-cloud-feign声明式REST客户端:FeignFeign是一个声明式的Web服务客户端。它使得Web服务客户端的写入更加方便。使用Feign创建一翻译 2017-08-12 21:41:39 · 9590 阅读 · 4 评论 -
SpringCloud(九):Ribbon脱离Eureka使用及原生api
前面介绍了使用Eureka和Ribbon的情况,这里小编带你继续学习脱离Eureka如何使用Ribbon以及如何使用ribbon原生api。脱离eureka使用Ribbon一、复制原先ribbon项目更改为:microservice-consumer-movie-ribbon-without-eureka更新pom,application.yml中的名称,在parent的p原创 2017-08-12 17:27:00 · 2885 阅读 · 8 评论 -
SpringCloud(八):使用配置文件自定义Ribbon
上篇介绍到代码实现ribbon的自定义,这篇继续介绍用配置文件来完成自定义。1、复制原先ribbon项目更改为:microservice-consumer-movie-ribbon-properties-customizing更新pom,application.yml中的名称,在parent的pom文件中加入其module。2、去掉原先代码实现的注解和类文件。@RibbonClie原创 2017-08-12 16:47:21 · 1530 阅读 · 5 评论 -
SpringCloud(七):Ribbon自定义配置
从上篇博客我们可以看到,Ribbon默认的负载均衡策略为轮询。如果想自定义改如何配置,小编将在这篇博客带你一步一步完成自定义配置。在上篇的项目基础上做更改。一、编写一个注解ExcludeFromComponentScan.javapackage com.itmuch.cloud;public @interface ExcludeFromComponentScan { }二原创 2017-08-12 16:12:24 · 2886 阅读 · 5 评论 -
SpringCloud(五):Ribbon了解
在前面博客中遗留的问题,在这里彻底得到解答。让我们再回顾一遍。一是硬编码的问题,如果不用硬编码,如何让消费者调到注册到Eureka中的微服务二是多个节点的时候如何保持负载均衡由以上问题,我们引出了Ribbon的概念,我们从以下几个方面来进行讲解。首先我们来看,负载均衡的两种方式。一是服务器端负载均衡,二是客户端侧负载均衡。我们在服务器端的负载均衡一般会考虑到用ngi原创 2017-08-12 11:57:21 · 779 阅读 · 3 评论 -
Linux下防火墙的命令操作
在linux上安装很多软件,比如nginx,nfs,fastdfs,redis……都需要对防火墙进行一定的处理才能够在客户机上进行访问。这里有两种方法进行处理。关闭防火墙第一种是比较简单的方式,这样就能对安装的软件进行访问。在这里介绍一下对防火墙操作的命令。查看是否安装了防火墙:rpm -qa | grep firewalld安装防火墙yum原创 2017-03-19 20:19:19 · 2881 阅读 · 15 评论 -
Solr集群的架构
最近要搭一个Solr集群,我们先来了解一下架构。架构搭建需要用到solr+zookeeper。看以下结构:要完成的集群结构如下图: 搭集群前先理清其架构和原理,搭建的时候就会顺利很多。关于搭建集群的具体步骤,下篇将会介绍,敬请期待。原创 2017-04-07 22:27:11 · 3492 阅读 · 9 评论 -
Zookeeper集群搭建
在上篇中我们了解了《Solr集群的架构》,这篇文章继续介绍Zookeeper集群搭建的操作步骤。第一步:需要把zookeeper的安装包上传到服务器。zookeeper-3.4.6.tar.gz先传到服务器第二步:把zookeeper解压。解压:tar -zxf zookeeper-3.4.6.tar.gz第三步:把zookeeper向/usr/loca原创 2017-04-08 23:04:18 · 1148 阅读 · 12 评论 -
Tomcat搭建
1、解压下载的包tar -zxvf apache-tomcat-8.0.28.tar.gzmv apache-tomcat-8.0.28 /usr/local/tomcat/2、进入bin目录并启动cd /usr/local/tomcat/bin./startup.sh3.查看启动成功界面4、安全配置点击页面按钮Server Stat原创 2017-07-29 21:45:02 · 440 阅读 · 18 评论 -
ActiveMQ简介
翻译自ACTIVEMQ官网:http://activemq.apache.org/Apache ActiveMQ ™ is the most popular and powerful open source messaging and Integration Patterns server.Apache ActiveMQ is fast, supports many Cross L翻译 2017-07-30 22:07:31 · 500 阅读 · 8 评论 -
ActiveMQ的简单使用
项目整体目录结构项目下载地址:稍后更新具体步骤:一、新建一个maven工程二、在pom文件中加入依赖的jar包 org.apache.activemq activemq-all 5.9.0 org.apache.xbean xbean-spring原创 2017-07-31 17:58:55 · 521 阅读 · 3 评论 -
ActiveMQ的消息接收确认
JMS消息只有在被确认之后,才认为已经被成功地消费了。消息的成功消费通常包含三个阶段:客户接收消息、客户处理消息和消息被确认。在事务性会话中,当一个事务被提交的时候,确认自动发生。在非事务性会话中,消息合适被确认取决于创建会话时的应答模式(acknowledgement mode)。该参数有以下三个可选值:Session.AUTO_ACKNOWLEDGE:当客户成功地从receive方法返原创 2017-08-02 10:09:46 · 5274 阅读 · 7 评论 -
ActiveMQ的消息格式MapMessage
消息体,JMS API定义了5种消息体格式,也叫消息类型,也可以使用不同形式发送接收数据,并可以兼容现有的消息格式。包括:TextMessage、MapMessage、BytesMessage、StreamMessage和ObjectMessage。下面介绍一下MapMessage在项目中的简单使用。继上篇,代码只是部分改动。改动部分:QueueSender.java//原创 2017-08-02 09:24:59 · 8673 阅读 · 4 评论 -
SpringCloud(一):用springboot实现简单服务调用
环境:SpringBoot 1.4.1Mavan 3.2.3JDK 1.8 IDE eclipse练习的时候尽量使用相同的版本进行选择,避免踩坑。需求:用户购买电影票,需要提供用户信息。那么把电影看成一个服务消费者,用户看做一个服务提供者。我们来快速快速创建两个微服务。官网:http://start.spring.io/用户微服务:如原创 2017-08-08 11:39:02 · 13764 阅读 · 13 评论 -
SpringCloud(二):服务发现与服务注册
我门在上篇遗留了两个问题:一个是如何解决动态ip和端口的问题,另一个是如何解决负载的问题?由这两个问题,我门引出服务发现和服务注册的概念。服务发现: 原理描述:将服务消费者和服务提供者都注册到服务发现组件上,然后服务消费者定时向服务发现组件发送心跳。然后对服务提供者进行调用。即使服务发现组件挂掉了,服务消费者依然能够调用服务提供者。即使有多个服务提供者,也能够都注册到服务发现组原创 2017-08-09 11:33:11 · 860 阅读 · 4 评论 -
SpringCloud(三):服务发现组件Eureka
Why EurekaEureka来自生产环境,Spring Cloud对Eureka支持非常好。What EurekaEureka是Netflix开发的服务发现框架,本事是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。Spring Cloud将它集成在其子项目spring-cloud-netflix中,以实现Spring C原创 2017-08-09 15:53:28 · 2552 阅读 · 7 评论 -
ActiveMQ的核心使用展示
对ActiveMQ使用的核心部分进行展示:生产者:1、配置扫描的包:在spring-context.xml中配置 2、mq.properties 3、spring-mq.xml 4、MQProducer.java 消费者:5、多的东西。Spring-mq.xml监听器功能:原创 2017-07-29 11:19:48 · 883 阅读 · 13 评论 -
Shiro总结-HelloWord
每学习一项知识,总是会从HelloWorld入门。整体目录结构预览:一、新建Java项目,建立lib目录,加入如下jar包。二、加入HelloWold代码package com.atguigu.shiro.helloworld;/* * Licensed to the Apache Software Foundation (ASF) under原创 2017-07-30 10:28:03 · 516 阅读 · 13 评论 -
Solr集群搭建
继上篇《Zookeeper集群搭建》,此篇介绍Solr集群的搭建。第一步:安装四个tomcat,修改其端口号不能冲突。8080~8083[root@localhost ~]# cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat01[root@localhost ~]# cp -r apache-tomcat-7.0.47原创 2017-04-09 08:38:36 · 777 阅读 · 7 评论 -
DUBBO研究与学习二:打基础-同步调用、回调和异步调用区别
调用方式软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。现在就来学习一下他们是什么以及有什么区别。同步调用同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用。举个栗子:4x100米接力赛。现在1道有甲、乙、丙、丁四个选手。甲听到枪响后,率先跑了出去。乙、丙、丁都需要等着,直到甲把接力棒交到乙手原创 2017-04-19 11:35:12 · 3432 阅读 · 9 评论 -
DUBBO研究与学习一:了解
DUBBO理解DUBBO是一个开源分布式服务框架,致力于提供高性能和透明化的RPC远程调用方案,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Logo来看一下DUBBO的Logo。原创 2017-04-17 22:30:43 · 1294 阅读 · 9 评论 -
CentOS7安装NFS后篇
引言上篇《CentOS7安装NFS》主要讲解了NFS安装及挂载的主要步骤。下面在这里补充一些内容。一、当机器需要重新挂载时先卸载共享目录umout /data/share然后再挂载一遍mount -t nfs -o nolock,nfsvers=3,vers=3 -o proto=tcp 192.168.22.208:/data/share /data/share原创 2017-03-12 23:19:47 · 1838 阅读 · 15 评论 -
CentOS7安装NFS
引言最近在项目中研究了一下NFS挂载,在这里分享一下。NFSNFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。linux安装NFS的例子,以项目为例一、提原创 2017-03-12 22:59:44 · 940 阅读 · 12 评论 -
优荐MQ
关于消息中间件有很多,来说说选用RabbitMQ的理由。查阅了很多资料,其中摘取了两篇供大家参考。一、按照目前网络上的资料,RabbitMQ、activeM、zeroMQ三者中,综合来看,RabbitMQ是首选。参考:http://blog.jobbole.com/103630/二、kafka和RabbitMQ的比较两者对比后,我仍然是选择RabbitMq,性能原创 2017-07-29 10:39:36 · 527 阅读 · 12 评论 -
安装ActiveMQ
IP:192.168.80.134环境:CentOS 7.0JDK:1.8.0_45 1、安装JDK并配置环境变量下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html查看是否已经安装了jdk.rpm -qa|grep jdk如果原创 2017-07-29 11:02:25 · 918 阅读 · 10 评论 -
Shiro总结-简介
一、简介Apache Shiro 是Java的一个安全(权限)框架。Shiro可以非常容易地开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以完成:认证、授权、加密、会话管理、与Web集成、缓存等。下载:http://shiro.apache.org/二、功能Authentication:身份认证/登录,验证用户是原创 2017-07-30 08:56:58 · 711 阅读 · 12 评论