- 博客(30)
- 资源 (1)
- 收藏
- 关注
原创 CDH6.2.0安装(三)
CDH6.2.0安装(三)Step10: 上传安装文件Step11: 检查文件是否正确确保cloudera-manager.repo文件放入/etc/yum.repos.d/目录确保parcel目录下文件完整Step12: 安装jdk&CM验证repo文件是否起效yum list | grep cloudera#如果列出的不是待安装的版本,执行下面命令重试yum clean allyum list | grep cloudera切换到jdk&cm目录下,执
2020-09-28 17:41:15
345
原创 CDH6.2.0安装(二)
CDH6.2.0安装(二)虚拟机设置Step1: 安装虚拟机略Step2: 设置网络进入/etc/sysconfig/network-scripts/目录,编辑ifcfg-enp0s3文件(名称可能不一样)TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"############改动部分开始#############动态IP#BOOTPROTO="dhcp"#静态IPBOOTPROTO="static"IPADDR=19
2020-09-28 17:40:26
423
原创 CDH6.2.0安装(一)
CDH6.2.0安装(一)大数据搭建大数据集群搭建方式选择逐个安装大数据组件:优点:灵活,深入各组件安装细节缺点:繁琐,无统一监控、管理工具使用CDH,Ambari管理工具安装:优点:一站式安装大部分组件,提供监控、管理功能缺点:需要更多的资源,安装过程有一定复杂性建议:机器资源足够则使用CDH方式,否则使用逐个安装方式什么是CDH?全称:Cloudera’s Distribution Including Apache Hadoop,Cloudera 公司的Hadoop版本,包
2020-09-28 17:39:47
441
原创 Reids分布式
1 为什么需要Redis集群1.1 为什么需要集群?1.1.1 性能Redis 本身的 QPS 已经很高了,但是如果在一些并发量非常高的情况下,性能还是会受到影响。这个时候我们希望有更多的 Redis 服务来完成工作。1.1.2 扩展第二个是出于存储的考虑。因为 Redis 所有的数据都放在内存中,如果数据量大,很容易受到硬件的限制。升级硬件收效和成本比太低,所以我们需要有一种横向扩展的方法。1.1.3 可用性第三个是可用性和安全的问题。如果只有一个 Redis 服务,一旦服务宕机,那
2020-09-25 16:20:29
349
1
原创 Reids原理
1、 发布订阅模式1.1 列表的局限前面我们说通过队列的 rpush 和 lpop可以实现消息队列(队尾进队头出),但是消费者需要不停地调用 lpop 查看 List 中是否有等待处理的消息(比如写一个 while 循环)。为了减少通信的消耗,可以sleep()一段时间再消费,但是会有两个问题:1、如果生产者生产消息的速度远大于消费者消费消息的速度,List 会占用大量的内存。2、消息的实时性降低。list 还提供了一个阻塞的命令:blpop,没有任何元素可以弹出的时候,连接会被阻塞。基于
2020-09-25 16:19:55
290
原创 CentOS 7 单机安装Redis Cluster(3主3从)
CentOS 7 单机安装Redis Cluster(3主3从)首先,本篇要基于单实例的安装,你的机器上已经有一个Redis为了节省机器,我们直接把6个Redis实例安装在同一台机器上(3主3从),只是使用不同的端口号。机器IP 192.168.8.207cd /usr/local/soft/redis-5.0.5mkdir redis-clustercd redis-clustermkdir 7291 7292 7293 7294 7295 7296复制redis配置文件到7291目录
2020-09-25 16:19:21
182
原创 CentOS7安装Redis单实例
1、下载redis下载地址在:redis.io比如把Redis安装到/usr/local/soft/cd /usr/local/soft/wget http://download.redis.io/releases/redis-5.0.5.tar.gz2、解压压缩包tar -zxvf redis-5.0.5.tar.gz3、安装gcc依赖Redis是C语言编写的,编译需要yum install gcc4、编译安装cd redis-5.0.5make MALLOC=libc将
2020-09-25 16:18:10
196
原创 Redis入门(一)
Redis入门Redis 的特性:更丰富的数据类型进程内与跨进程;单机与分布式功能丰富:持久化机制、过期策略支持多种编程语言高可用,集群基础操作默认有 16 个库(0-15),可以在配置文件中修改,默认使用第一个 db0。(因为没有完全隔离,不像数据库的 database,不适合把不同的库分配给不同的业务使用。)databases 16切换数据库select 0清空当前数据库flushdb清空所有数据库flushall键的基本操作。命令参考Re
2020-09-25 16:17:31
207
原创 Nginx的高可用方案
Nginx的高可用方案Nginx进程模型简介多进程多进程+多路复用master 进程 、 worker 进程root 33987 1 0 Oct19 ? 00:00:00 nginx: master process ./nginxnobody 35733 33987 0 Oct19 ? 00:00:00 nginx: worker processworker_processes 1; cpu总核数io模型 epoll . s
2020-09-25 16:16:10
1076
1
原创 Nginx应用实战
Nginx应用实战Nginx反向代理功能配置nginx反向代理的指令不需要新增额外的模块,默认自带proxy_pass指令,只需要修改配置文件就可以实现反向代理。proxy_pass 既可以是ip地址,也可以是域名,同时还可以指定端口server { listen 80; server_name localhost; location / { proxy_pass http://192.168.11.161:8080; proxy_set_
2020-09-25 16:15:34
373
原创 Springcloud 文件上传与中文乱码
地址:https://github.com/spring-cloud/spring-cloud-netflix/issues/1385在上传路径前 加 /zuulapi-gateway中,增加文件上传大小限制 /** * multipartConfigElement * @return */ @Bean public MultipartConfigElement multipartConfigElement() { Multipart
2020-09-25 16:06:22
312
原创 python爬取页面数据demo
from bs4 import BeautifulSoup as bsimport urllib2import MySQLdbfrom sqlalchemy import create_engineimport Queueimport pandas as pddef get_title_links(html): try: soup = bs(html,fromEncoding='utf-8') title = soup.title.string.enc
2020-09-25 15:14:02
351
原创 多个应用跳转用户session存在缓存问题onbeforeunload
问题描述:没有使用单点登录。多个应用集成到一个门户中,但是多个tomcat应用时,portal中的session管理使用shiro,当不同应用通过菜单跳转时,每个菜单新进入时,进行登录授权,当离线时,用户登出,多个应用没有完全登出,存储session缓存问题。解决方案:使用 'onbeforeunload' 事件,当页面刷新或离开时,处理用户登出问题,清除session缓存问题。...
2019-05-27 10:50:33
381
原创 zookeeper(四)——Java的API、Curator、watcher
一、JavaAPI提供ZooKeeper添加、查询、修改、删除节点操作pom文件:<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.8&...
2018-09-18 22:53:44
338
原创 zookeeper(三)——客户端脚本
zkCli.sh介绍:进入bin目录下执行命令:sh zkCli.sh当看到如下输出信息时,表示连接成功上本地的zookeeper服务器了:WatchedEvent state:SyncConnected type:None path:null [zk: localhost:2181(CONNECTED) 0]连接指定服务器,可以通过如下方式实现:sh zkC...
2018-09-14 21:58:48
630
原创 zookeeper(二)——2PC理论、zookeeper集群、ZAB 协议
一、关于 2PC 提交(Two Phase Commitment Protocol)当一个事务操作需要跨越多个分布式节点的时候,为了保持事务处理的 ACID特性,就需要引入一个“协调者”(TM)来统一调度所有分布式节点的执行逻辑,这些被调度的分布式节点被称为 AP。TM 负责调度 AP 的行为,并最终决定这些 AP 是否要把事务真正进行提交;因为整个事务是分为两个阶段提交,所以叫 2pc。...
2018-09-12 22:28:12
713
原创 zookeeper(一)—— 初步认识zookeeper单机及集群部署
(一)初步认识zookeeper1、什么是 zookeeperzookeeper 是一个开源的分布式协调服务,由雅虎公司创建,是 google chubby 的开源实现。zookeeper 的设计目标是将哪些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集(由若干条指令组成的,完成一定功能的一个过程),并且以一些列简单一用的接口提供给用户使用。2、zookeepe...
2018-09-11 23:34:03
382
原创 Java多线程——spring-boot 线程池 @Async 的使用、自定义Executor的配置方法
实现异步新线程调用,Springboot简单配置:1、在主类中添加@EnableAsync注解:@SpringBootApplication@EnableAsyncpublic class Application { public static void main(String[] args) { SpringApplication.run(Applicati...
2018-09-07 22:49:21
3720
1
原创 Tomcat——tomcat-8.5配置https方式
Tomcat——tomcat-8.5配置https方式tomcat的conf目录下修改server.xml文件,添加一下配置:<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" sc...
2018-09-06 11:51:57
949
原创 Camel——http4组件https使用
Camel——http4组件https使用camel配置pom文件<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-http4</artifactId> <version>2.17.1</version>&
2018-09-05 18:05:07
3850
转载 Java多线程—Executor框架线程池使用原始方式实现生产者消费者模式
Executor框架线程池使用原始方式实现生产者消费者模式在 Java 中可以用 wait、notify 和 notifyAll 来实现线程间的通信。。举个例子,如果你的Java程序中有两个线程——即生产者和消费者,那么生产者可以通知消费者,让消费者开始消耗数据,因为队列缓 冲区中有内容待消费(不为空)。相应的,消费者可以通知生产者可以开始生成更多的数据,因为当它消耗掉某些数据后缓冲区不再为满...
2018-09-03 22:19:14
1021
原创 Java多线程—Java线程池Executor
Java多线程—Java线程池Executor一、Executor框架简介:在HotSpot VM的线程模型中,Java线程(java.lang.Thread)被一对一映射为本地操作系统线程。Java线程启动时会创建一个本地操作系统线程;当该Java线程终止时,这个操作系统线程也会被回收。操作系统会调度所有线程并将它们分配给可用的CPU。在上层,Java多线程程序通常把应用分解为若干个任...
2018-08-30 23:18:31
288
原创 Java多线程—JAVA线程池原理理解、合理配置线程池
Java多线程—JAVA线程池原理理解、合理配置线程池一、线程池的实现原理合理地使用线程池能够带来3个好处:降低资源消耗。 提高响应速度。 提高线程的可管理性。线程池的处理流程:线程池判断核心线程池里的线程是否都在执行任务。如果不是,则创建一个新的工作线程来执行任务。如果核心线程池里的线程都在执行任务,则进入下个流程。 线程池判断工作队列是否已经满。如果工作队列没有满,则将...
2018-08-29 22:04:36
423
原创 微服务—微服务架构
一、快速开发实践结构、开发方式、持续集成环境、测试策略、部署机制以及监控和告警的实现方式。形成微服务快速开发模板,主要包括4部分:快速开发模板、代码生成工具、持续集成模板以及一键部署工具。 二、微服务开发流程:API 代码测试(Rspec)与静态检查(Rubocop*代码风格检查器) Docker映像构建 Docker镜像部署 持续集成与交付 监控与告警 日志集成 功...
2018-08-29 21:39:59
611
原创 微服务—服务描述文件
1、服务介绍服务名称服务功能2、服务维护者记录服务的维护者,通常是能直接联系到的个人3、服务可用期服务可以用期,譬如,周一~周五(9:00~19:00)4、运行环境地址生产环境地址譬如:http://dddd.com测试环境地址5、开发(描述开发相关的信息),通常包括但不限以下几项。如何搭建开发环境如何运行服务如何调试6、测试(描述测试相...
2018-08-29 21:39:50
658
原创 Java多线程—fork/join框架
Java多线程—fork/join框架简介:Fork/Join框架是Java 7提供的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。Fork/Join的运行流程如图所示:二、Fork/Join框架的设计:步骤1:分割任务;步骤2:执行任务并合并结果。Fork/Join使用两个类来完成以上两件事情。1、Fo...
2018-08-29 21:39:41
394
原创 Java多线程—Java13个原子类操作类介绍及使用
Java多线程-Java13个原子类操作类介绍及使用原子更新基本类型类:使用原子的方式更新基本类型,Atomic包提供了以下3个类。AtomicBoolean:原子更新布尔类型。 AtomicInteger:原子更新整型。 AtomicLong:原子更新长整型。AtomicInteger常用方法如下:int addAndGet(int delta):以原子方式将输入的数值与实...
2018-08-29 21:39:30
581
原创 Java多线程—JAVA中并发的工具类CountDownLatch、CyclicBarrier、Semaphore、Exchanger
Java多线程—JAVA中并发的工具类CountDownLatch、CyclicBarrier、Semaphore、Exchanger等待多线程完成的CountDownLatchCountDownLatch允许一个或多个线程等待其他线程完成操作。public class CountDownLatchTest { static CountDownLatch c = new Co...
2018-08-29 21:39:19
460
大规模分布式存储系统:原理解析与架构实战
2019-01-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅