节点服务器

App后台开发运维——架构设计

六眼飞鱼酱① 提交于 2020-01-15 00:06:05
QQ 1285575001 Wechat M010527 技术交流 QQ群599020441 纪年科技aming 1.设计app架构 1.梳理app业务流程 2.整理业务流程可能遇到的问题 3.根据问题,探讨可执行的解决方案 4. app后台 初步架构 :3中所有技术进行有机融合 api编写: 1.api的作用(功能) 2.api需要输入的参数 3.api返回的数据 2.服务器选择 1.传统的IDC 在传统的IDC,要加cpu或内存,流程如下:   1.和客户经理商商谈所需硬件的价格   2.汇款过去,等IDC的财务确认   3.确认后,等待IDC安排工作人员升级硬件   这个流程走一次,最少也要1至2天。延迟了1至2天升级硬件,怎么保证可以快速应付爆发的业务 2.云服务器 升级硬件: 1.在用户后台选择需要的硬件配置   2.通过网络支付   3.重启服务器,升级就完成了。如果只是升级带宽,甚至不用重启。   整个过程合起来不用5分钟,简单,快捷,方便。   而且,现在的云服务器提供商,除了服务器外,还提供下面的服务:   负载均衡   云数据库   云内存存储   这些服务在app上线初期,在一台服务器上自己搭建就行了,   但随着app的发展,这些服务都需要部署在不同的服务器。      规模的增大,也要面对高可用,高并发,监控报警等问题。   这些问题如果都要后端人员处理

hadoop源代码分析(1)-hdfs.server.datanode包-DataNode类【原创】

我怕爱的太早我们不能终老 提交于 2020-01-13 12:59:22
一 准备   hadop版本:1.0.3,DataNode所在的包:org.apache.hadoop.hdfs.server.datanode   学习方法:整理datanode类重要的方法、属性并理解,参考相关博客分析,最终理解datanode功能,再深入研究具体代码。   时间:2013-01-22 -- 2013-01-28 二 DataNode功能描述   DataNode是一个为分布式文件系统的调用存储数据块集的类。简单的调用就能启动一个或很多个数据节点。每个数据节点通常和一单个主节点通信,同时它也随时和客户端、其他数据节点保持通信。   数据节点存储着一系列数据块,它允许客户端去读这些数据块或者写入新的数据块。数据节点也可能收到namenode的指令,删除数据块或从其他datanodes拷贝数据块。   datanode维护着一张临界表:block->字节流   这个信息存储在本地磁盘上,数据节点在启动和每隔一段时间把这张表的内容报告给主节点。   Datanodes在它们的生命周期内维持着一个请求NameNode安排事情让他们去做。主节点不能直接和datanode连接,它只简单地返回数据节点的函数请求值。   数据节点维护着一个开放的服务socket,因此client或其他datanodes能够读/写数据。这个主机/端口会被报告给主节点

OpenStack(理论篇)

梦想与她 提交于 2020-01-13 01:22:22
OpenStack基础理论 云计算概述 概念 狭义的云计算是指IT基础设施的交付和使用模式 广义的云计算是指服务的交付和使用模式 云资源 网络资源 存储资源 服务器资源 云计算服务模型 IaaS(基础架构即服务) 提供底层IT基础设施服务,包括处理能力、存储空间、网络资源等 一般面向对象是IT管理人员 PaaS(平台即服务) 把安装好开发环境的 系统平台作为一种服务通过互联网提供给用户 一般面向对象是开发人员 SaaS(软件即服务) 直接通过互联网为用户提供软件和应用程序的服务 一般面向的对象是普通用户 OpenStack概述 一款云计算模型中的一个项目 NASA和Rackspace合作研发并发起 以Apache许可证授权的自由软件和开放式源代码项目 旨在为公共及私有云的建设与管理提供软件的开源项目 覆盖了网络、虚拟化、操作系统、服务器等各个方面 OpenStack服务框架 服务 项目名称 描述 Compute (计算服务) Nove 负责实例生命周期的管理,计算资源的单位。对Hypervisor进行屏蔽,支持多种虚拟化技术(红帽默认为KVM),支持横向扩展 Network(网络服务) Neutron 负责虚拟网络的管理,为实例创建网络的拓扑结构。是面向租户的网络管理,可以自己定义自己的网络,各个租户之间互不影响 Identity(身份认证服务) Keystone

OpenStack(理论篇)

一个人想着一个人 提交于 2020-01-12 20:46:19
OpenStack基础理论 云计算概述 概念 狭义的云计算是指IT基础设施的交付和使用模式 广义的云计算是指服务的交付和使用模式 云资源 网络资源 存储资源 服务器资源 云计算服务模型 IaaS(基础架构即服务) 提供底层IT基础设施服务,包括处理能力、存储空间、网络资源等 一般面向对象是IT管理人员 PaaS(平台即服务) 把安装好开发环境的 系统平台作为一种服务通过互联网提供给用户 一般面向对象是开发人员 SaaS(软件即服务) 直接通过互联网为用户提供软件和应用程序的服务 一般面向的对象是普通用户 OpenStack概述 一款云计算模型中的一个项目 NASA和Rackspace合作研发并发起 以Apache许可证授权的自由软件和开放式源代码项目 旨在为公共及私有云的建设与管理提供软件的开源项目 覆盖了网络、虚拟化、操作系统、服务器等各个方面 OpenStack服务框架 服务 项目名称 描述 Compute (计算服务) Nove 负责实例生命周期的管理,计算资源的单位。对Hypervisor进行屏蔽,支持多种虚拟化技术(红帽默认为KVM),支持横向扩展 Network(网络服务) Neutron 负责虚拟网络的管理,为实例创建网络的拓扑结构。是面向租户的网络管理,可以自己定义自己的网络,各个租户之间互不影响 Identity(身份认证服务) Keystone

MYSQL 之 MHA架构搭建

你。 提交于 2020-01-12 13:34:45
文章目录 一、MHA的简介 1.1、MHA的组成 1.2、MHA特点 二、MHA的案例 2.1、案例需求 2.2、案例实现思路 2.3、案例环境 三、具体搭建过程 3.1、实现MySQL的一主两从 3.2、安装 MHA 3.3、配置无密码访问 3.4、配置MHA 3.5、故障模拟 一、MHA的简介 目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本人youshimaton开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。 在MySQL故障 切换过程中,MHA能做到0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能最大程度上保证数据库的一致性,以达到真正意义上的高可用。 当Master出现故障时,它可以自动将最新数据的Slave提升为新的Master,然后将所有其他的Slave重新指向新的Master。整个故障转移过程对应用程序是完全透明的。 1.1、MHA的组成 MHA Manager (管理节点): Manager可以单独部署在一台独立的机器上管理多个master-slave集群,也可以部署在一台slave节点上。 MHA Node (数据节点): Node运行在每台MySQL服务器上,MHA Manager会定时探测集群中的master节点,当master出现故障时

Redis面试题(含答案):哨兵+复制+事务+集群+持久化等

二次信任 提交于 2020-01-12 04:48:21
Redis主要有哪些功能? 哨兵(Sentinel)和复制(Replication) Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制。 Sentinel可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能,Replication则是负责让一个Redis服务器可以配备多个备份的服务器。 Redis也是利用这两个功能来保证Redis的高可用的 事务 很多情况下我们需要一次执行不止一个命令,而且需要其同时成功或者失败。redis对事务的支持也是源自于这部分需求,即支持一次性按顺序执行多个命令的能力,并保证其原子性。 LUA脚本 在事务的基础上,如果我们需要在服务端一次性的执行更复杂的操作(包含一些逻辑判断),则lua就可以排上用场了 持久化 redis的持久化指的是redis会把内存的中的数据写入到硬盘中,在redis重新启动的时候加载这些数据,从而最大限度的降低缓存丢失带来的影响。 集群(Cluster) 单台服务器资源的总是有上限的,CPU资源和IO资源我们可以通过主从复制,进行读写分离,把一部分CPU和IO的压力转移到从服务器上,这也有点类似mysql数据库的主从同步。 在Redis官方的分布式方案出来之前,有twemproxy和codis两种方案,这两个方案总体上来说都是依赖proxy来进行分布式的

001.Kubernetes简介

半腔热情 提交于 2020-01-11 18:40:18
一 Kubernetes概述 名称 Kubernetes 源于希腊语,意为 “舵手” 或 “飞行员”。Google 在 2014 年开源了 Kubernetes 项目,Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。 1.1 容器发展由来 传统部署时代: 早期,组织在物理服务器上运行应用程序。无法为物理服务器中的应用程序定义资源边界,这会导致资源分配问题。例如,如果在物理服务器上运行多个应用程序,则可能会出现一个应用程序占用大部分资源的情况,结果可能导致其他应用程序的性能下降。一种解决方案是在不同的物理服务器上运行每个应用程序,但是由于资源利用不足而无法扩展,并且组织维护许多物理服务器的成本很高。 虚拟化部署时代: 作为解决方案,引入了虚拟化功能,它允许您在单个物理服务器的 CPU 上运行多个虚拟机(VM)。虚拟化功能允许应用程序在 VM 之间隔离,并提供安全级别,因为一个应用程序的信息不能被另一应用程序自由地访问。 因为虚拟化可以轻松地添加或更新应用程序、降低硬件成本等等,所以虚拟化可以更好地利用物理服务器中的资源,并可以实现更好的可伸缩性。 每个 VM 是一台完整的计算机,在虚拟化硬件之上运行所有组件

redis概念及安装部署

亡梦爱人 提交于 2020-01-11 01:07:05
第1章 Redis介绍 1.1 Redis是什么 Redis是一种基于键值对的NoSQL数据库,与很多键值对数据库不同,redis中的值可以有string,hash,list,set,zset,geo等多种数据结构和算法组成. 因为Redis会将所有的数据都放在内存中,所以他的读写性能非常惊人. 不仅如此,Redis还可以将内存中的数据利用快照和日志的形式保存到硬盘上 Redis还提供了键过期,发布订阅,事务,流水线等附加功能. 1.2 Redis重要特性 1.速度快 Redis所有的数据都存放在内存中 Redis使用C语言实现 Redis使用单线程架构 2.基于键值对的数据结构服务器 5中数据结构:字符串,哈希,列表,集合,有序集合 3.丰富的功能 提供了键过期功能,可以实现缓存 提供了发布订阅功能,可以实现消息系统 提供了pipeline功能,客户端可以将一批命令一次性传到Redis,减少了网络开销 4.简单稳定 源码很少,3.0版本以后5万行左右. 使用单线程模型法,是的Redis服务端处理模型变得简单. 不依赖操作系统的中的类库 5.客户端语言多 java,PHP,python,C,C++,Nodejs等 6.持久化 RDB和AOF 7.主从复制 8.高可用和分布式 哨兵 集群 1.3 Redis应用场景 1.缓存-键过期时间 缓存session会话 缓存用户信息

Haproxy搭建web群集

喜夏-厌秋 提交于 2020-01-10 11:53:43
Haproxy搭建web群集 常见的Web集群调度器 目前常见的Web集群调度器分为软件和硬件,软件通常使用开源的LVS,Haproxy,Nginx,硬件一般使用比较多的是F5,也有很多人使用国内的一些 产品,如梭子,绿盟等 Haproxy应用分析 LVS在企业应用中负载能力很强,但存在不足 LVS不支持正则处理,不能实现动静分离 对于大型网站,LVS的实施配置复杂,维护成本相对较高 Haproxy是一款可提供高可用性,负载均衡,及基于TCP和HTTP应用的代理软件 特别适用于负载特别大的Web站点 运行在当前的硬件上可支持数以万计的并发连接连接请求 Haproxy的三种算法 RR (Round Robin) RR算法是最简单最常用的一种算法,轮询调度 举例理解 有三个节点A,B,C第一个用户访问会被指派到节点A,第二个用户访问会被指派到节点B,第三个用户访问会被指派到节点 第四个用户访问继续指派到节点A,轮询分配访问请求实现负载均衡 LC (Least Connections ) LC算法即最小连接算法,根据后端的节点连接数大小动态分配请求 举例理解 有三个节点A,B,C,各节点的连接数A:4,B:5,C:6,此时如果有第一个用户连接请求,会被指派到A上,连接数为A:5,B:5,C:6 第二个用户请求会继续分配到A上,连接数变为A:6,B:5,C:6,再有新的请求会分配到B

MongoDB windows基础配置及集群搭建

非 Y 不嫁゛ 提交于 2020-01-10 11:32:13
由于公司业务的发展MSSQL已处于瓶颈。因为没钱买牛逼服务器只能靠软件来实现最大优化了。原来的系统架构如下图: 现在准备把读写数据库和只读数据换成Nosql数据库。最终选择了Mongodb. 下面开始了Mongodb的学习。 1. Mongodb下载: https://www.mongodb.org/downloads?_ga=1.159678843.794950141.1434346788 2.具体安装就不多说了。网上太多介绍的。没必要浪费键盘了。 3.搭建复制集 一个简单的复制集最少包括三个节点。 1.primary 2. secondary,3.arbiter节点 primary: 存储数据。 secondary:同步主节点数据 arbiter: 当主节点故障时,arbiter会投票选择一个secondary充当priary节点。 大致如下: 注意:三个节点其实就是三个Mongod实例。 (1). 创建主节点配置文件内容如下: 文件名:rs0.conf dbpath = D:\RuntimeServices\MongoDB_Ad\shard00\db //指定数据存储目录   logpath = D:\RuntimeServices\MongoDB_Ad\shard00\log\shard00.log //指定数据库日志目录   journal = true /