![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
架构
文章平均质量分 68
star.29
时不我待
展开
-
架构专栏目录
架构专栏目录1.架构2.IaaS、PaaS和SaaS的区别3.DC/OS4.Marathon和Kubernetes的区别5.Docker基础6.Jenkins Pipeline7.Prometheus+Grafana基础8.Nginx原创 2020-11-18 22:15:51 · 261 阅读 · 0 评论 -
网关、微服务、Nginx、OpenResty和Kong
网关是一种高性能、低延迟的流量负载均衡服务,是大型分布式系统中用来保护内部服务的一道安全屏障。它可以对请求实施统一拦截,并帮助开发人员轻松地向外界提供服务,使得开发人员不必考虑路由、版本、缓存、认证、授权、身份验证、限流、熔断、灰度、过滤、转换、计费、审计、脱敏、日志和监控等事情,只需要专注于业务的实现即可。另外,除了将网关应用于常见的代理服务之外,还可以将之广泛应用于WAF(Web应用防火墙)、CDN(内容分发网络)、边缘计算(Edge Computing)、IoT(物联网)、在线聊天、在线直播等多个领域原创 2022-07-28 17:06:31 · 1603 阅读 · 0 评论 -
Etcd+kvadmin的安装和使用
Etcd+kvadmin的安装和使用Etcdetcd 是一个分布式的key-value存储系统,采用 raft 算法选举leader,保证集群数据不丢失。etcd 默认将数据存放到当前路径的 default.etcd/ 目录下在 http://localhost:2380 和集群中其他节点通信在 http://localhost:2379 提供 HTTP API 服务,供客户端交互该节点的名称默认为 defaultheartbeat 为 100ms,后面会说明这个配置的作用electi原创 2021-01-27 17:44:17 · 906 阅读 · 0 评论 -
Etcd基础
Etcd基础Etcd 是一个分布式、可靠 key-value 存储的分布式系统。Etcd不仅用于存储,还提供共享配置及服务发现。Etcd是一个高可用的键值存储系统,主要用于共享配置和服务发现。Etcd是由CoreOS开发并维护的,灵感来自于 ZooKeeper 和 Doozer,它使用Go语言编写,并通过Raft一致性算法处理日志复制以保证强一致性。Raft是一个来自Stanford的新的一致性算法,适用于分布式系统的日志复制,Raft通过选举的方式来实现一致性,在Raft中,任何一个节点都可能成为Le原创 2021-01-27 16:18:29 · 2445 阅读 · 0 评论 -
集群、分布式和微服务概念理解
集群、分布式和微服务概念理解集群是个物理形态,分布式是个工作方式分布式:一个业务分拆多个子业务,部署在不同的服务器上集群:同一个业务,部署在多个服务器上分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。分布式中的每一个节点,都可以做集群。而集群并不一定就是分布式的。而分布式,从狭义上理解,也跟集群差不多,但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器可以顶上来。分布式的每一个节点,都完成不同的业务,一个节点垮了,那这个业务就不可原创 2020-12-25 17:31:50 · 521 阅读 · 1 评论 -
Spark
SparkApache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。Spark 是一种与 Hadoop原创 2020-11-25 17:59:58 · 386 阅读 · 0 评论 -
日志服务CLS
日志服务CLS日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索分析、实时消费、日志投递等多项服务,协助用户通过日志来解决业务运营、安全监控、日志审计、日志分析等问题。用户无需关注资源扩容问题,五分钟便捷接入,即可享受稳定可靠的日志服务。...原创 2020-11-25 17:48:03 · 1364 阅读 · 0 评论 -
Zookeeper
ZookeeperZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。ZooKeeper包含一个简单的原语集,提供Java和C的接口。ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的原创 2020-11-25 16:05:52 · 271 阅读 · 0 评论 -
Hbase
HbaseHBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。原创 2020-11-25 15:54:16 · 250 阅读 · 0 评论 -
Hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),其中一个组件是HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用...原创 2020-11-25 15:19:25 · 1029 阅读 · 0 评论 -
Flink
FlinkApache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。Apache Flink的数据流编程模型在有限和无限数据集上提供单次事件(event-at-a-time)处理。在基础层面,Flink程序由流和转换组成。Apache Flink的API:有界或无界数据流的数据原创 2020-11-20 11:05:04 · 250 阅读 · 0 评论 -
ClickHouse
ClickHouseClickHouse是俄罗斯第一大搜索引擎Yandex开发的列式储存数据库,Yandex在2016年6月15日开源了ClickHouse。ClickHouse是一个用于联机分析处理(OLAP)的列式数据库管理系统(columnar DBMS)。传统数据库在数据大小比较小,索引大小适合内存,数据缓存命中率足够高的情形下能正常提供服务。但残酷的是,这种理想情形最终会随着业务的增长走到尽头,查询会变得越来越慢。你可能通过增加更多的内存,订购更快的磁盘等等来解决问题(纵向扩展),但这只是拖原创 2020-11-19 18:40:19 · 1004 阅读 · 0 评论 -
ELK
ELKELK是一组开源软件的简称,其包括Elasticsearch、Logstash 和 Kibana。ELK已经成为目前最流行的集中式日志解决方案。ElasticSearch简称ES,是一个实时的分布式搜索和分析引擎,可以用于全文搜索,结构化搜索以及分析。它是一个建立在全文搜索引擎 Apache Lucene 基础上的搜索引擎,使用 Java 语言编写。Logstash是一个具有实时传输能力的数据收集引擎,用来进行数据收集(如:读取文本文件)、解析,并将数据发送给ES。Kibana为 Elasti原创 2020-11-18 22:41:14 · 402 阅读 · 0 评论 -
Docker基础
Docker基础在linux虚拟机上安装docker1、检查内核版本,必须是3.10及以上 uname ‐r 2、安装docker yum install docker 3、输入y确认安装 4、启动docker [root@localhost ~]# systemctl start docker [root@localhost ~]# docker ‐v Docker version 1.12.6, build 3e8e77d/1.12.6 5、开机启动docker [root原创 2020-09-21 10:23:45 · 447 阅读 · 1 评论 -
Nginx
NginxNginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名...原创 2019-09-23 12:17:06 · 197 阅读 · 0 评论 -
Prometheus+Grafana基础
Prometheus+Grafana基础Prometheus+Grafana是业内流行的监控开源解决方案,Prometheus以时间序列的方式采集各种监控指标入库,Grafana提供简单拖拽式的前端展示,快速绘制图形图表对Prometheus的监控指标进行展示,非常灵活易用。...原创 2020-10-14 14:26:07 · 574 阅读 · 0 评论 -
Jenkins Pipeline
Jenkins PipelineJenkinsJenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。CICI(Conti原创 2020-11-06 11:34:59 · 326 阅读 · 0 评论 -
Marathon和Kubernetes的区别
Mesos+Marathon和Kubernetes的区别Mesos+MarathonMesosMesos是分布式资源管理框架,它被称为是分布式系统的内核。Mesos能把集群内机器的资源(cpu,内存,磁盘)抽象成一个资源池,然后按容器的需求将其调度到合适的节点,达到资源利用率最大化的目的。Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理。Mesos主要由以下几部分组成:Master: 管理各Slave节点Slave: 为集群提供资源Framework: sched原创 2020-10-14 10:36:21 · 2538 阅读 · 0 评论 -
DC/OS
DC/OSDC/OS在最基础的Marathon和Mesos之上添加了很多的组件,例如DCOS的客户端(kubectl)、API网关admin router(类似apiserver)、服务发现minuteman(类似kube-proxy)、Pod的支持、CNI插件的支持、存储插件的支持等。参考文章:容器平台选型的十大模式:Docker、DC/OS、K8S谁与当先?...原创 2020-11-06 12:55:30 · 385 阅读 · 0 评论 -
IaaS、PaaS和SaaS的区别
IaaS、PaaS和SaaS的区别IaaSIaaS(Infrastructure as a Service基础设施即服务)是指把IT基础设施作为一种服务通过网络对外提供。在这种服务模型中,用户不用自己构建一个数据中心,而是通过租用的方式来使用基础设施服务,包括服务器、存储和网络等。在使用模式上,IaaS与传统的主机托管有相似之处,但是在服务的灵活性、扩展性和成本等方面IaaS具有很强的优势。IaaS,最简单的云计算交付模式,它用虚拟化操作系统、工作负载管理软件、硬件、网络和存储服务的形式交付计算资原创 2020-10-23 18:31:17 · 882 阅读 · 0 评论 -
架构
架构IaaS层x86LinuxNetworkStorageMesosDC/OSPaaS层k8smarathon开源组件SaaS层开发语言:Java、C#、Python、PHP、Go开发框架:React、Vue、Angular、SpringCloud、HSF、Istio集成:Maven、Gradle代码库:Gitlab代码质量检查:Sonar持续集成:Jenkins镜像仓库:Habor容器:Docker负载均衡:Nginx分享配置和服务发现:Etcd、C原创 2020-11-18 22:07:14 · 338 阅读 · 1 评论