- 博客(146)
- 资源 (60)
- 收藏
- 关注
转载 Redis系列之复制(四)
一、复制基本配置与演示 为了避免单点故障,Redis提供了复制功能,可以实现自动同步的过程。 1、配置 同步后的数据分为两类:一类是主数据库(master),一类是从数据库(slave)。主数据库可以进行读写操作,当发生写操作时自动将数据同步给从数据库。而从数据一般只读,并接受主数据库同步过来的数据。 在Redis使用复制功能,只需要在从数据库的配置文件中加入"salveo
2017-09-28 23:18:38 597
转载 Redis系列之持久化(三)
一、Redis持久化 Redis是一个支持持久化的内存数据库,redis需要经常将内存中的数据同步到磁盘来保证持久化。 redis提供了不同级别的持久化方法:Snapshotting(快照,默认方式):能够在指定的时间间隔对你的操作进程快照存储Append-only file(缩写aof):记录每次对服务器写的操作,当服务器重启时会重新执行这些命令来恢复原始的数据如果你只希望你
2017-09-28 23:17:53 403
转载 Redis系列之Redis主从同步,读写分离(二)
1. Redis主从同步Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,同步使用的是发布/订阅机制。2. 配置主从同步Mater Slave的模式,从Slave向Master发起SYNC命令。可以是1 Master 多Slave,可以分层,Slave下可以再接Slave,可扩展成树状结构。2.1 配置Mater,Slave配置非常简单,只需在slave
2017-09-28 23:14:36 387
转载 Redis系列之10分钟玩转Redis(一):
1. Redis介绍Redis是一个开源的使用ANSI C语言编写、基于内存的Key-Value数据库。它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。Redis支持主从同步,数据可以从主服务器向任意数量的从服务器上同步,由于完全实现了发布/订阅机制,使得从数
2017-09-28 23:11:47 394
翻译 “印度管理”会成为超越中国的秘密武器吗?[高度关注]
中国人是靠拼命埋头苦干、追赶世界科技巨头而崛起。但当中国人以为快要追上国际先进水平,并沾沾自喜地看着身后被甩到越来越远的印度人时,却突然匪夷所思地发现:被中国追赶的世界科技巨头一个个地被印度人直接“接管”了:印度人成了这些国际科技巨头的CEO(首席执行官)和其他高管。 “印度管理”会成为超越中国的秘密武器吗? 我在网上写了很多关于印度的文章,文中结论都依据我在印度长达15年的亲
2017-09-26 00:31:26 456
原创 Docker网络配置初探
大量的互联网应用服务包含多个服务组件,这往往需要多个容器之间通过网络通信进行相互配合。Docker 目前提供了映射容器端口到宿主主机和容器互联机制来为容器提供网络服务。接下来我们将讲述 Docker 的网络功能,包括使用端口映射机制来将容器内应用服务提供给外部网络,以及通过容器互联系统让多个容器之间进行快捷的网络通信。端口映射实现访问容器从外部访问容器应用在启动容器的时候,如果不指
2017-09-15 14:15:47 293
转载 Docker安装、示例
一. docker基础介绍 可能很多朋友对docker还停留在听说过,并没有认真关注了解过,这里简单介绍下其基础部分知识。如有不足,欢迎指正! 1. docker介绍 很多同学有一个先入为主的概念,docker是一个轻量级容器。所以这里先普及一下,docker本身并不是一个容器,而是一个管理容器的引擎工具。它包含一个服务端和客户端,服务端是一个管理着所有容器和文件系统的服务进程,
2017-09-15 14:13:35 270
转载 Docker Machine 详解
比如 Docker 与 Docker Machine 的区别?又如当我们执行 docker-machine create 命令时,Docker Machine 都做了哪些重要的事情使得我们可以远程操作 Docker daemon?这样的远程操作安全吗?本文将试图解读这些问题。注:本文的演示环境为 Ubuntu16.04。Docker 与 Docker Machine 的区别Docker
2017-09-15 14:10:49 1040
翻译 认识Dockerfile
Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 快速创建自定义的镜像。我们会先介绍 Dockerfile 的基本结构及其支持的众多指令,并具体讲解通过执行指令来编写定制镜像的 Dockerfile。基本结构Dockerfile 由一行行命令语句组成,并且支持已 # 开头的注释行。一般而言,Dockerfile 的内容分为四个部分:基础镜像信息、维护者信息
2017-09-15 14:08:50 853
转载 Docker源码分析(九):Docker镜像
1.前言回首过去的2014年,大家可以看到Docker在全球刮起了一阵又一阵的“容器风”,工业界对Docker的探索与实践更是一波高过一波。在如今的2015年以及未来,Docker似乎并不会像其他昙花一现的技术一样,在历史的舞台上热潮褪去,反而在工业界实践与评估之后,显现了前所未有的发展潜力。究其本质,“Docker提供容器服务”这句话,相信很少有人会有异议。那么,既然Docker提供的服
2017-09-15 14:07:21 724
转载 Docker源码分析(八):Docker Container网络(下)
1.Docker Client配置容器网络模式Docker目前支持4种网络模式,分别是bridge、host、container、none,Docker开发者可以根据自己的需求来确定最适合自己应用场景的网络模式。从Docker Container网络创建流程图中可以看到,创建流程第一个涉及的Docker模块即为Docker Client。当然,这也十分好理解,毕竟Docker Contai
2017-09-15 14:06:29 295
转载 Docker源码分析(七):Docker Container网络 (上)
1.前言(什么是Docker Container)如今,Docker技术大行其道,大家在尝试以及玩转Docker的同时,肯定离不开一个概念,那就是“容器”或者“Docker Container”。那么我们首先从实现的角度来看看“容器”或者“Docker Container”到底为何物。逐渐熟悉Docker之后,大家肯定会深深得感受到:应用程序在Docker Container内部的部署与运
2017-09-15 14:05:27 181
转载 Docker源码分析(六):Docker Daemon网络
1. 前言Docker作为一个开源的轻量级虚拟化容器引擎技术,已然给云计算领域带来了新的发展模式。Docker借助容器技术彻底释放了轻量级虚拟化技术的威力,让容器的伸缩、应用的运行都变得前所未有的方便与高效。同时,Docker借助强大的镜像技术,让应用的分发、部署与管理变得史无前例的便捷。然而,Docker毕竟是一项较为新颖的技术,在Docker的世界中,用户并非一劳永逸,其中最为典型的便是D
2017-09-15 14:04:24 237
转载 Docker源码分析(五):Docker Server的创建
1.Docker Server简介Docker架构中,Docker Server是Docker Daemon的重要组成部分。Docker Server最主要的功能是:接受用户通过Docker Client发送的请求,并按照相应的路由规则实现路由分发。同时,Docker Server具备十分优秀的用户友好性,多种通信协议的支持大大降低Docker用户使用Docker的门槛。除此之外,Dock
2017-09-15 14:03:34 224
转载 Docker源码分析(四):Docker Daemon之NewDaemon实现
1. 前言Docker的生态系统日趋完善,开发者群体也在日趋庞大,这让业界对Docker持续抱有极其乐观的态度。如今,对于广大开发者而言,使用Docker这项技术已然不是门槛,享受Docker带来的技术福利也不再是困难。然而,如何探寻Docker适应的场景,如何发展Docker周边的技术,以及如何弥合Docker新技术与传统物理机或VM技术的鸿沟,已经占据Docker研究者们的思考与实践。
2017-09-15 14:02:29 237
转载 Docker源码分析(三):Docker Daemon启动
1 前言Docker诞生以来,便引领了轻量级虚拟化容器领域的技术热潮。在这一潮流下,Google、IBM、Redhat等业界翘楚纷纷加入Docker阵营。虽然目前Docker仍然主要基于Linux平台,但是Microsoft却多次宣布对Docker的支持,从先前宣布的Azure支持Docker与Kubernetes,到如今宣布的下一代Windows Server原生态支持Docker。Mi
2017-09-15 14:00:26 526
转载 Docker源码分析(二):Docker Client创建与命令执行
1. 前言如今,Docker作为业界领先的轻量级虚拟化容器管理引擎,给全球开发者提供了一种新颖、便捷的软件集成测试与部署之道。在团队开发软件时,Docker可以提供可复用的运行环境、灵活的资源配置、便捷的集成测试方法以及一键式的部署方式。可以说,Docker的优势在简化持续集成、运维部署方面体现得淋漓尽致,它完全让开发者从持续集成、运维部署方面中解放出来,把精力真正地倾注在开发上。
2017-09-15 13:56:52 271
转载 Docker源码分析(一):Docker架构
1 背景1.1 Docker简介Docker是Docker公司开源的一个基于轻量级虚拟化技术的容器引擎项目,整个项目基于Go语言开发,并遵从Apache 2.0协议。目前,Docker可以在容器内部快速自动化部署应用,并可以通过内核虚拟化技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等。由于Docker通过操作系统层的虚拟化实现隔离,所以Docker容
2017-09-15 13:54:07 224
转载 Docker系列之(五):使用Docker Compose编排容器
1. 前言Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器。使用Compose 基本上分为三步:Dockerfile 定义应用的运行环境docker-compose.yml 定义组成应用的各服务docker-compose up 启动整个应用 2. 安装Compose
2017-09-15 09:20:51 393
转载 Docker系列之(四):Win10上运行Docker
1. 前言Docker最近推出了可以运行在Win10和Mac上的稳定版本,让我们赶紧来体验一下。 2. 安装准备需要的条件为: 64bit Windows 10,开启Hyper-V 2.1 下载Docker for Windows从官网的下面地址可以下载https://download.docker.com/win/stable/In
2017-09-15 09:20:07 1297
转载 Docker系列之(三):Docker微容器Alpine Linux
1. 前言使用Docker创建容器时,基础镜像通常选择Ubuntu或Centos,不管哪个镜像的大小都在100MB以上。 Alpine Linux是一个面向安全的轻型的Linux发行版。Alpine Linux采用了 musl libc 和 busybox以减小系统的体积和运行时资源消耗。在保持瘦身的同时,Alpine Linux还提供了自己的包管理工具ap
2017-09-15 09:19:20 11669
转载 Docker系列之(二):使用Mesos管理Docker集群
1. Mesos简介1.1 MesosApache Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理。Mesos主要由以下几部分组成:Master: 管理各Slave节点Slave: 为集群提供资源Framework: scheduler从Master请求资源,executor在Slave上执行任务Slave节点上的
2017-09-15 09:18:20 407
转载 Docker系列之(一):10分钟玩转Docker
1、前言进入云计算的时代,各大云提供商AWS,阿里云纷纷推出针对Docker的服务,现在Docker是十分火爆,那么Docker到底是什麽,让我们来体验一下。2、Docker是什麽Docker是一个开源的应用容器引擎,可以把应用以及依赖包放到一个可移植的容器中,然后发布到任何流行的 Linux 系统上,通过这种方式实现虚拟化。提到虚拟化,大家应该十分熟悉了,有VMw
2017-09-15 09:16:38 296
原创 Docker个人学习笔记1
刚开始学习Docker的时候,找资料在网上看到最多的是Docker的好处。比如:1、Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多2、Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器。3、更快速的交付和部署、更轻松的迁移和扩展等等……因为我是做java开发的,我们现有的模式是在一个服务器上安装统一
2017-09-15 09:09:26 278
转载 基于Mahout的电影推荐系统实现
1.Mahout 简介Apache Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。经典算法包括聚类、分类、协同过滤、进化编程等等,并且,在 Mahout 的最近版本中还加入了对 Apache Hadoop 的支持,使这些算法可以更高效的运行在云计算
2017-09-14 22:46:11 896
转载 Mahout代码示例
一, Introductionpackage mia.recommender.ch02;//=分析导入包可以看出mahout的包分为主要类以及它们的实现类=import org.apache.mahout.cf.taste.impl.model.file.*;import org.apache.mahout.cf.taste.impl.neighborhood.*;import org
2017-09-14 22:28:03 369
转载 Mahout算法表
在Mahout实现的机器学习算法见下表算法类算法名中文名分类算法Logistic Regression逻辑回归Bayesian贝叶斯SVM支持向量机Perceptron感知器算法Neural Ne
2017-09-14 22:24:33 215
转载 Mahout安装与配置
Mahout是Hadoop的一种高级应用。运行Mahout需要提前安装好Hadoop。Hadoop的安装网上很多,并不复杂,这里不再讲述,接下来阐述怎么安装Mahout。1:下载二进制解压安装。到http://labs.renren.com/apache-mirror/mahout/0.7下载,我选择下载二进制包,直接解压及可。hadoop@ubuntu:~$ tar -zxvf
2017-09-14 22:22:51 311
原创 CentOS 6.5 下 CDH 5.2.1 集群安装
集群节点数量3 个192.168.1.170 cdh-master192.168.1.171 cdh-slave-1192.168.1.171 cdh-slave-2一、安装CentOS6.5 (64位)并搭建基本环境,包括:(1)添加sudo 权限(2)修改主机名、网关、静态IP地址、DNS(3)关闭SELINUX、防火墙 可参考文章(4)修改系统时区、配置n
2017-09-14 22:14:02 251
原创 IDEA十大快捷键(for、System.out、main等)
Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。1 智能提示Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有
2017-09-14 15:31:16 1251
原创 Linux常用指令整理
常用指令ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent)cd 切换目录touch
2017-09-13 18:26:53 291
转载 Spark源码系列(九)Spark SQL初体验之解析过程详解
首先声明一下这个版本的代码是1.1的,之前讲的都是1.0的。Spark支持两种模式,一种是在spark里面直接写sql,可以通过sql来查询对象,类似.net的LINQ一样,另外一种支持hive的HQL。不管是哪种方式,下面提到的步骤都会有,不同的是具体的执行过程。下面就说一下这个过程。Sql解析成LogicPlan使用Idea的快捷键Ctrl + Shift + N打开SQLQuer
2017-09-13 18:17:47 566
转载 Spark源码系列(八)Spark Streaming实例分析
要讲Spark Streaming,讲之前首先回顾下它的用法,具体用法请参照《Spark Streaming编程指南》。Example代码分析val ssc = new StreamingContext(sparkConf, Seconds(1));// 获得一个DStream负责连接 监听端口:地址val lines = ssc.socketTextStream(server
2017-09-13 18:17:22 229
转载 Spark源码系列(七)Spark on yarn具体实现
讲一下Spark on yarn的实现,1.0.0里面已经是一个stable的版本了,可是1.0.1也出来了,离1.0.0发布才一个月的时间,更新太快了,节奏跟不上啊,这里仍旧是讲1.0.0的代码,所以各位朋友也不要再问我讲的是哪个版本,目前为止发布的文章都是基于1.0.0的代码。在第一章《spark-submit提交作业过程》的时候,我们讲过Spark on yarn的在cluster模式下
2017-09-13 18:17:00 390
转载 Spark源码系列(六)Shuffle的过程解析
Spark大会上,所有的演讲嘉宾都认为shuffle是最影响性能的地方,但是又无可奈何。之前去百度面试hadoop的时候,也被问到了这个问题,直接回答了不知道。这篇文章主要是沿着下面几个问题来开展:1、shuffle过程的划分?2、shuffle的中间结果如何存储?3、shuffle的数据如何拉取过来?Shuffle过程的划分Spark的操作模型是基于RDD的,当调用RDD
2017-09-13 18:16:40 426
转载 Spark源码系列(五)分布式缓存
讲一下Spark的缓存是如何实现的。这个persist方法是在RDD里面的,所以我们直接打开RDD这个类。 def persist(newLevel: StorageLevel): this.type = { // StorageLevel不能随意更改 if (storageLevel != StorageLevel.NONE && newLevel != stora
2017-09-13 18:15:59 266
转载 Spark源码系列(四)图解作业生命周期
跟着我走吧,let you know!我们先回顾一下这个图,Driver Program是我们写的那个程序,它的核心是SparkContext,回想一下,从api的使用角度,RDD都必须通过它来获得。下面讲一讲它所不为认知的一面,它和其它组件是如何交互的。Driver向Master注册Application过程SparkContext实例化之后,在内部实例化两个很重要的类,DA
2017-09-13 18:15:43 241
转载 Spark源码系列(三)作业运行过程
作业执行上一章讲了RDD的转换,但是没讲作业的运行,它和Driver Program的关系是啥,和RDD的关系是啥?官方给的例子里面,一执行collect方法就能出结果,那我们就从collect开始看吧,进入RDD,找到collect方法。 def collect(): Array[T] = { val results = sc.runJob(this, (iter: I
2017-09-13 18:15:29 203
转载 Spark源码系列(一)spark-submit提交作业过程
前言折腾了很久,终于开始学习Spark的源码了,第一篇我打算讲一下Spark作业的提交过程。 这个是Spark的App运行图,它通过一个Driver来和集群通信,集群负责作业的分配。今天我要讲的是如何创建这个Driver Program的过程。作业提交方法以及参数我们先看一下用Spark Submit提交的方法吧,下面是从官方上面摘抄的内容。# Run on
2017-09-13 18:13:48 960
翻译 各hbase版本对hadoop各版本的支持情况
http://hbase.apache.org/book.html#configuration HadoopThe following table summarizes the versions of Hadoop supported with each version of HBase. Based on the version of HBase, you should sele
2017-09-13 10:13:42 568
软件架构师的12项修炼
2017-07-03
Linux系统管理技术手册
2017-07-01
Hadoop技术内幕
2017-12-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人