高可用

时间序列数据库(TSDB)初识与选择

拥有回忆 提交于 2020-03-05 23:53:43
背景 这两年互联网行业掀着一股新风,总是听着各种高大上的新名词。大数据、人工智能、物联网、机器学习、商业智能、智能预警啊等等。 以前的系统,做数据可视化,信息管理,流程控制。现在业务已经不仅仅满足于这种简单的管理和控制了。数据可视化分析,大数据信息挖掘,统计预测,建模仿真,智能控制成了各种业务的追求。 “所有一切如泪水般消失在时间之中,时间正在死去“ ,以前我们利用互联网解决现实的问题。现在我们已经不满足于现实,数据将连接成时间序列,可以往前可以观其历史,揭示其规律性,往后可以把握其趋势性,预测其走势。 于是,我们开始存储大量时间相关的数据(如日志,用户行为等),并总结出这些数据的结构特点和常见使用场景,不断改进和优化,创造了一种新型的数据库分类——时间序列数据库(Time Series Database). 时间序列模型 时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。 每个时序点结构如下: timestamp: 数据点的时间,表示数据发生的时间。 metric: 指标名,当前数据的标识,有些系统中也称为name。 value: 值,数据的数值,一般为double类型,如cpu使用率,访问量等数值,有些系统一个数据点只能有一个value,多个value就是多条时间序列。有些系统可以有多个value值

千锋云计算毕业设计论文:高并发大型互联网站架构设计前言

我们两清 提交于 2020-03-05 23:15:32
每年进入3-4月所有的高等院校开始了一年一度的毕业生答辩准备阶段,现如今毕业论文或者毕业设计也更加的贴近了互联发展的趋势,很多学校开始做最热话题云计算openstack架构的实现以及云计算环境搭建,先不说这个毕业设计的切入点是否正确,就说选择该题目后你如何下手?下面给大家分享千锋讲师给学员准备的千锋云计算毕业设计论文:高并发大型互联网站架构设计前言。 1.1前言: 在互联网发展初期,我们的服务大多都搭建在一台服务器上,但是随着经济的快速发展,我们所使用的网速也在不断地提高:从20多年前的有线电话和猫,再到2000年的ADSL带宽加速,到2011年的光纤、WiFi、4G网络,及我们即将要进入的5G时代,我们国家实现了网络从无到有,网速从每秒约7k的下载速度到每秒4-5G的下载速度,可谓是快如闪电啊!网速的大大提高也造成了互联网行业的PV量(page view访问量)大大增多,尤其以百度,天猫,新浪等网站为代表,这个时候我们单台服务器或者少数服务器已经承受不住现有的压力,所以高并发大型互联网站的架构设计就显得尤为重要了。 大型互联网站往往具有高并发,大流量等特点[2]。其实大多数的大型网站在刚开始时规模并没有很大,而是随着业务量的增大慢慢扩展的。谷歌的第一台服务器部署在斯坦福大学的实验室里;脸书是扎克伯格在哈弗大学的宿舍里开发;阿里巴巴是在马云家的客厅里诞生的[3]。 大型网站分为三类

heartbeat之part4

本秂侑毒 提交于 2020-03-05 18:29:27
实现web高可用 [root@data-1-2 ha.d]# yum install httpd -y [root@data-1-1 ha.d]# yum install httpd -y root@data-1-1 ha.d]# /etc/init.d/httpd start root@data-1-2 ha.d]# /etc/init.d/httpd start [root@data-1-1 ha.d]# cd /var/www/html [root@data-1-1 html]# echo data-1-1 >index.html访问测试 输入虚拟ip http://192.168.0.7/ [root@data-1-2 ha.d]# cd /var/www/html [root@data-1-2 html]# echo data-1-2 >index.html访问测试 /usr/share/heartbeat/hb_standby data1 /usr/lib64/heartbeat/hb_standby 高可用 [root@data-1-2 ha.d]# vi haresources data-1-1 IPaddr::192.168.0.7/24/eth0 httpd控制程序启动 data-1-2 IPaddr::192.168.0.8/24/eth0 httpd

京东架构深度讲解:分布式Java应用基础与实践

不想你离开。 提交于 2020-03-04 21:37:46
【推荐】2020年最新Java电子书集合.pdf(吐血整理) >>> 前言 本书介绍分布式Java应用涉及的知识点,分为基于Java实现网络通信、RPC:基于SOA实现大型分布式Java应用:编写高性能Java应用:构建高可用、可伸缩的系统4个部分,共7章内容。作者结合自己在淘宝网的实际工作经验展开论述,既可作供初学者学习,也可供同行参考。 目标读者 本书涵盖了编写高性能、高可用以及可伸缩的分布武Java应用所需的知识点,适合希望掌握这些知识点的读者。 在介绍各个知识点时,作者尽量结合自己的工作,分享经验与心得,希望能够对那些有相关工作经验的读者有所帮助。 内容导读 本书按照介绍的知识点分为五个部分:第一部分 介绍基于Java实现系统间交互的相关知识,这些知识在第1章中进行介绍:第二部分为基于SOA构建大型分布式Java应用的知识点,这些在第2章中介绍:第三部分为高性能Java应用的相关知识,这些在第3、4、5章中介绍:第四部分介绍高可用Java应用的相关知识,这些在第6章中介绍:第五部分介绍可伸缩Java应用,这些在第7章介绍,读者也.可根据自己的兴趣选择相应的章节进行阅读。 分布式Java应用 大型分布式Java应用与SOA 深入理解JVM 分布式Java应用与Sun JDK类库 性能调优 构建高可用系统 构建可伸缩的系统 来源: oschina 链接: https://my

Redis面试必知必会

廉价感情. 提交于 2020-03-04 20:22:00
1. 在项目中缓存是如何使用的? 结合自己的公司的项目, 回答以下问题: 项目哪里用了缓存? 为什么要用? 用了可能会带来什么问题? 怎么解决这些问题? 项目的缓存架构是怎么样的? 如果面试官没有问这些问题, 我们也要主动和面试官聊聊. 2. 为什么要在项目中用缓存? (1) 高性能 如果不使用缓存, 每次请求都有较大的延迟, 比如600ms, 而如果每次请求都走缓存, 可能2ms就搞定了. (2) 高并发 在高并发场景下, 比如秒杀之类的促销活动, 如果所有请求都直接查询数据库, 会导致数据库宕机, 这个时候就需要缓存来分担数据库的压力. 3. 用了缓存之后可能会带来什么问题? 如何解决? (1) 缓存与数据库双写不一致 我们先了解下最经典的缓存和数据库的读写模式: 读的时候先读缓存, 再读数据库. 如果缓存中没有, 则从数据库中读取数据写入缓存. 修改数据的时候, 先删除对应的缓存, 再更新数据库. (或者先更新数据库, 再删除缓存) 从上面这个读写模式中我们可以发现, 在修改数据的时候, 只会更新数据库, 而不会同步更新缓存, 缓存是下次读的时候再更新. 这样做的原因是更新缓存的代价比较大, 比如对于一些比较复杂的业务场景, 缓存数据可能涉及到多张表的查询计算, 同时这个缓存数据还不一定会被频繁的访问, 所以综合考虑, 修改数据的时候直接删除缓存,

MySQL高可用群集----MHA

纵然是瞬间 提交于 2020-03-03 02:48:54
文章目录 前言: 一、MHA概述 1.1 MHA简介 1.2 MHA特点 1.3 MHA作用 二、MHA实验 2.1 实验环境 2.2 拓扑图 2.3 实验目的 2.4 案例配置思路 2.5 实验配置 2.5.1 定义节点服务器名称 2.5.2 安装编译依赖环境 2.5.3 手工编译安装MySQL5.6 2.5.4 修改MySQL配置文件 2.2.5 新增数据库授权 2.5.6 配置主从同步 2.5.7 安装MHA 2.5.8 配置无密码认证 2.5.9 配置MHA 2.6 验证配置 2.6.1 验证密钥对 2.6.2 测试mysql主从复制 2.6.4 启动MHA 2.6.5 模拟故障 总结: 前言: MHA目前在MySQL高可用方面是一个相对成熟的解决方案 但是在搭建的过程中容易报错,且MHA的构建综合了主从复制,所以MHA安装时需要严格执行每一个部署 一、MHA概述 1.1 MHA简介 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,MHA是由日本人开发,是一套优秀的MySQL故障切换和主从复制的高可用软件 在MySQL故障切换的过程中,MHA能做到0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能够最大程度上保证数据库的一致性,以达到真正意义上的高可用 MHA由perl语言编写

用Keepalived搭建高可用集群

点点圈 提交于 2020-03-02 21:09:24
一、集群介绍 1、根据功能划分为两大类:高可用和负载均衡 2、高可用:一台工作,另一台冗余,当一台服务器故障宕机时,另一台服务器提供服务。开源软件有heartbeat,keepalived. 3、负载均衡:有一台服务器做分发器,负责把用户的请求发送给后端处理,其他的服务器给用户提供服务。开源软件有LVS,keepalived,haproxy,nginx.商业的有F5,Netscaler. 二、keepalived介绍 1、keepalived 是采用VRRP协议实现高可用。keepalived 有三个模块,core ,check,vrrp。core模块是keepalived的核心,负责主进程启动,维护和全局模块的加载和解析,check模块负责健康检查,vrrp模块用来实现VRRP协议。 三、用keepalived搭建高可用集群。 1、为两台机器安装keepalived yum install -y keepalived 2、为两台机器安装nginx,其中IP为130的主机已经在之前安装过,只需为另一台安装 yum install -y nginx 3、编辑130主机的keepalived的配置文件 vim /etc/keepalived/keepalived.conf 1)首先清空keepalived.conf > keepalived.conf 2)加入以下内容: global

(三)Kubernetes/K8s 高可用架构

≯℡__Kan透↙ 提交于 2020-03-01 20:41:26
高可用架构 采用多master+多lb+keepalive的方案实现(注意其中lb的ip 地址的证书) 1,多master安装 将原master 1 部署文件拷贝到新master,修改bind 地址 启动 注意 由于需要连接etcd 需要拷贝etcd 的证书 scp –r /opt/kubernetes root@192.168.0.102:/opt scp –r /opt/etcd/ssl root@192.168.0.102:/opt/etcd scp /usr/lib/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service root@192.168.31.64:/usr/lib/systemd/system ##修改apiserver配置文件为本地IP vim /opt/kubernetes/cfg/kube-apiserver.conf --bind-address=192.168.0.102 \ --secure-port=6443 \ --advertise-address=192.168.0.102 \ #启动 for i in $(ls /opt/kubernetes/bin/);do systemctl start $i;systemctl enable $i;

搭建 Kubernetes 高可用集群

人盡茶涼 提交于 2020-03-01 12:32:51
搭建 Kubernetes 高可用集群 https://www.cnblogs.com/dudu/p/12168433.html挺好的资料。 使用 3 台阿里云服务器(k8s-master0, k8s-master1, k8s-master2)作为 master 节点搭建高可用集群,负载均衡用的是阿里云 SLB ,需要注意的是由于阿里云负载均衡不支持后端服务器自己转发给自己,所以 master 节点的 control-plane-endpoint 不能走负载均衡。 先在 k8s-master0 上安装好 k8s ,安装步骤见 Ubuntu 安装 k8s 三驾马车 kubelet kubeadm kubectl ,然后打快照创建阿里云 ecs 镜像。 确定 control-plane-endpoint 主机名,这里假设是 k8s-api ,在 k8s-master0 的 hosts 中添加 k8s-api 的解析。 10.0.1.81 k8s-api 在 k8s-master0 上创建集群, kubeadm init \ --control-plane-endpoint "k8s-api:6443" --upload-certs \ --image-repository registry.aliyuncs.com/google_containers \ --pod-network

nginx——keepalived

ぐ巨炮叔叔 提交于 2020-02-29 14:39:40
nginx——keepalived 1.keepalived高可用基本概述 什么是高可用 一般是指2台机器启动着完全相同的业务系统,当有一台机器down机了,另外一台服务器就能快速的接管,对于访问的用户是无感知的。 高可用通常使用什么软件 硬件使用F5 软件使用keepalived keepalilved是如何实现高可用的 keepalived软件是基于VRRP协议实现的,VRRP虚拟路由冗余协议,主要用于解决单点故障问题 那么vrrp是如何诞生的,原理又是什么? 比如公司的网络是通过网关进行上网的,那么如果该路由器故障了,网关无法转发报文了,此时所有人都无法上网了,怎么办? 通常做法是给路由器增加一台北街店,但是问题是,如果我们的主网关master故障了,用户是需要手动指向backup的,如果用户过多修改起来会非常麻烦。 问题一:假设用户将指向都修改为backup路由器,那么master路由器修好了怎么办? 问题二:假设Master网关故障,我们将backup网关配置为master网关的ip是否可以? 其实是不行的,因为PC第一次通过ARP广播寻找到Master网关的MAC地址与IP地址后,会将信息写到ARP的缓存表中,那么PC之后连接都是通过那个缓存表的信息去连接,然后进行数据包的转发,即使我们修改了IP但是Mac地址是唯一的,pc的数据包依然会发送给master。