架构

SpringCloud(六)搭建Zuul动态服务网关

时光总嘲笑我的痴心妄想 提交于 2019-12-10 11:53:02
1.Api网关服务 1.1.网关作用 网关可以拦截客户端所有的请求,对该请求进行权限控制,负载均衡、路由转发、日志管理、监控等。 一般公司的网关分为外网网关和内网网关,外网网关是对公共接口(对外接口)的控制,而内网网关是对内部接口(对内接口)的控制。 一般会把项目(比如会员项目,订单项目等)和zuul网关放在同一个局域网中,只将zuul网关开放一个对外端口,由外部客户端访问,以达到拦截器的作用,可以把微服务项目中的一些公共功能放在网关中,比如权限校验,日志管理等。外部客户端不能直接访问微服务项目,以保证项目的安全性,必须通过网关,由网关进行转发到微服务项目中。功能类似于nginx。 1.2.网关与过滤器区别 网关是拦截所有服务器请求进行控制 过滤器拦截某单个服务器请求进行控制 1.3.Nginx与Zuul的区别 Nginx是采用服务器负载均衡进行转发 Zuul依赖Ribbon和eureka实现本地负载均衡转发 相对来说Nginx功能比Zuul功能更加强大,能够整合其他语言比如lua脚本实现强大的功能,同时Nginx可以更好的抗高并发,Zuul网关适用于请求过滤和拦截等。 1.4.网关分类 1)开放 A pi 开放api(openApi) 企业需要将自身数据、能力等作为开发平台向外开放,通常会以rest的方式向外提供,最好的例子就是淘宝开放平台、腾讯公司的QQ开发平台、微信开放平台。

分布式系统与架构

落爺英雄遲暮 提交于 2019-12-10 11:29:57
1. 分布式系统架构有哪些优势? 1)增大系统容量 2)加强系统可用性 3)因为模块化,所以系统模块重用度更高 4)因为软件模块化被拆分,开发和发布速度可以并发而变得更快 5)系统扩展性更高 6)团队协作流程也会得到改善 2. 分布式系统架构有哪些劣势? 1)架构设计变得复杂(尤其是其中的分布式事务) 2)部署单个服务会比较快,但如果一次部署多个服务,流程会变得复杂 3)系统的吞吐量会变大,但响应时间会边长。 4)运维复杂度会因为服务变多而变得复杂 5)架构复杂导致学习曲线变大 6)测试和查错的复杂度增大 7)技术多元化,这会带来维护和运维的复杂度 8)管理分布式系统中的服务和调度变得困难和复杂 来源: https://www.cnblogs.com/Jtianlin/p/12015390.html

《App后台开发运维与架构实践》第1章 App后台入门

旧街凉风 提交于 2019-12-10 11:29:04
1.1 App后台的功能 远程存储数据 消息中转 1.2 App后台架构 如何快速提炼架构核心点,掌握架构的精髓? 是在什么业务逻辑遇到哪些问题; 采用了哪些技术解决方案。 架构设计有哪些特点? 架构是和业务紧密相关 架构的演变是由业务驱动 架构不是为了炫耀技术 1.3 App和App后台的通信 一般情况下,选择 HTTP协议 足够了;除非对App的安全性和性能要求极高,而选择私有协议。 App和服务器通信使用 短连接 ,除手游和聊天推送服务外,使用长连接。 App后台以 API的形式 提供给App使用。 App后台API以 JSON作为返回数据的格式 ,它比XML格式更省流量 。 1.4 App后台和Web后端的区别 App后台要慎重考虑网络传输的流量,主要在API设计、图片处理上 移动手机弱网络环境 手机电量有限 1.5 选择服务器 App产品经常会出现在毫无征兆的App访问量爆发的情况,解决访问的压力最快、最有效的方法是升级服务器的硬件,如升级CPU,升级内存容量或者升级带宽。 传统的IDC要升级CPU或升级内存容量的流程如下。 和客户经理商谈所需硬件的价格或在线选择具体的配置。 在线支付或银行转账。 确认钱到帐后,等待IDC安排工作人员升级硬件。 这个流程由于需要人工介入,很难做到几分钟内完成硬件升级。 而使用云服务器升级硬件就很简单,流程如下。

数字化转型赋能传统工业,引领行业颠覆性变革

谁说胖子不能爱 提交于 2019-12-10 11:12:13
5G、大数据、工业互联网、云计算、人工智能等新一代信息技术与行业经济深度融合,加快了工业经济数字化、网络化、智能化进程,从根本上改变了经济发展方式。重塑了全球产业链分工。 数字经济正以“变局者”的姿态,给全世界带来巨大变化,数字化转型已经成为企业首要且不可回避的命题。据IDC调查报告显示,在全球TOP2000的企业中,2/3的CEO 将数字化转型作为企业战略的核心。 就如前一阵子“阿里新掌门”张勇在2019杭州云栖大会上强调的 “在数字化驱动和承载的新经济和新社会当中,一切都在被重新定义。” 各行各业都在全面走向数字化运营、数字化产业升级。 在资金和技术的推动之下,有些行业已经找到了“头部模式”,但是对于众多的工业企业来说是机会也是挑战。 2019——工业互联网动荡的一年 在经济下行的压力下,工业企业也开始依靠企数字化转型来达到提升效率,降低成本,提升经济效益。 工业互联网平台向上承载应用生态,向下接入系统设备,是连接工业用户企业、设备厂商、服务提供商等的枢纽,是工业互联网建设和发展的核心。 目前,我国已经成为世界上工业互联网产业培育土壤最为旺盛的过国家,截止2019年上半年,已经有超过84.9%的中国制造型企业开始了数字化转型。已经诞生出具有一定影响力的平台50余家,部分平台的工业设备连接数量超过了10万套,然而,在进行数字化转型的过程中,大部分企业都和预期相差甚远。

rest基本介绍和使用

夙愿已清 提交于 2019-12-10 10:58:40
一、REST(Representational State Transfer)表象化状态转变(表述性状态转变),在2000年被提出,基于HTTP、URI、XML、JSON等标准和协议,支持轻量级、跨平台、跨语言的架构设 计。是Web服务的一种新的架构风格(一种思想)。 二、REST架构的主要原则 对网络上所有的资源都有一个资源标志符。 对资源的操作不会改变标识符。 同一资源有多种表现形式(xml、json) 所有操作都是无状态的(Stateless) 符合上述REST原则的架构方式称为RESTful 三、RESTful请求格式或规则: uri中无动词,均使用名词,无动词,相对一些名词存在复数需要加s http://127.0.0.1/user/1 GET 根据用户id查询用户数据 http://127.0.0.1/user POST 新增用户 http://127.0.0.1/user PUT 修改用户信息 http://127.0.0.1/user DELETE 删除用户信息 四、协议:用http或https 五、示例: 来源: https://www.cnblogs.com/yingxiongguixing/p/12015240.html

MAS(转)

谁说胖子不能爱 提交于 2019-12-10 10:35:28
1、为什么要使用微服务? 要说为什么要使用微服务,我们要先说下传统的企业架构模式-垂直架构/单块架构模式,简单点说:我们一般将系统分为三层架构,但是这是逻辑上的三层,而非物理上的三层,这就意味着经过编码后,我们需要将这三层的代码打包部署,最终还是运行在同一台机器的同一个进程中。即单块架构模式就是功能集中,代码数据集中,一个发布包、部署运行在同一个进程中的应用程序,重点是同一个进程。 这种架构存在自己的优势也有弊端,优势是:易于开发,易于测试,易于部署,易于水平伸缩。 弊端:维护成本高,修改一处代码就需要重新部署;持续交付周期长;信任培养周期长;技术选型成本高,可扩展性差。 正是因为有了这些弊端,后期出现了SOA(面向服务的架构),但是SOA是粗粒度的服务模式,后面又出现了MSA,所以微服务是SOA的一个子集,是SOA的一个细化,是细粒度的服务。 2、什么是微服务? 这个没有什么明确的定义,可以这么理解:微服务是一种架构模式,将单一的应用程序划分成多个小组服务,这些小组服务互相协调,互相配合,最终完成整个项目。这些小的服务可以根据上下文选用自己适合的语言、工具来进行实现,实现了高度自治。个人认为:类似于中国有56个民族,这56个民族构成了中国整个大国,但是每个民族有自己的语言自己的风俗习惯,实现了民族自治。 3、微服务有哪些优势? 对比传统的单一架构模式,我们可以看到微服务的不同

Hadoop 大数据学习笔记

不想你离开。 提交于 2019-12-10 09:39:35
Hadoop 大数据学习笔记1 大数据部门组织架构 Hadoop Hadoop是什么 Hadoop的优势 Hadoop的组成 HDFS架构 YARN架构 MapReduce 大数据技术生态体系![在这里插入图片描述](https://img-blog.csdnimg.cn/20191209135301229.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Z1eWlhcg==,size_16,color_FFFFFF,t_70) 大数据部门组织架构 Hadoop Hadoop是什么 Hadoop 是一个由Apache基金会所开发的分布式系统基础架构。 主要解决,海量数据的存储和海量数据的分析计算问题。 广义上来说,Hadoop通常是指一个广泛的概念———Hadoop生态圈。 Hadoop的优势 1)高可靠性。 2)高扩展性。 3)高效性。 4)高容错性。 Hadoop的组成 MapReduce(计算) Yarn(资源调度) HDFS(数据存储) HDFS架构 1)NameNode(nn):存储文件的元数据,数据索引。 2)DataNode(dn):数据本身。 3)Secondary NameNode(2nn)

不同于混合云,你了解云计算的下一阶段——“多云”吗?

走远了吗. 提交于 2019-12-10 04:57:06
也许你会认为“多云”和“混合云”是一个意思,其实在云计算的发展演进过程中,这二者处于的是不同阶段。 人们喜欢给一切东西命名。在云计算领域,一项技术或产品的命名通常反映着它的使用方式:公有云,私有云,混合云。现在,“多云”这个新术语又出现了,它象征的是云计算的另一种新兴模式。 术语及定义 “多云”意味着使用多个公有云。当企业试图避免依赖单个公有云提供商,或当企业需要从每个公有云中选择不同的、特定的功能或服务,又或者上述两个目的兼而有之时,就会出现“多云”这种使用模式。 “多云”与“混合云”的区别 那么,多云(multicloud)和混合云(hybrid cloud)是什么关系?有些人会互换使用这两个词,但实际上它们确实有不同的含义。 混合云是私有云(基于云技术构建的本地数据中心)与公有云的配对。 如果您将多个公有云与私有云一起使用,那么这仍然是一个“多云”。 (有些人可能会称它为混合多云,这也是可以的。) “实用混合云”的定义 近期还有一种新出现的概念/架构叫做“实用混合云(pragmatic hybrid cloud)”,它是指将传统企业数据中心与公有云的配对一起使用。这样用法的企业很多是对私有云感到失望,因此寻求一种将现有的云与公有云相结合的方法。 相比之下,多云架构使用的两个或更多公有云。 多云趋势的背后是什么 云计算正在变得越来越复杂,这是大家无可否认的趋势

分布式架构设计

自古美人都是妖i 提交于 2019-12-10 04:17:25
分布式架构设计 1.分布式架构的基本理论 2.SOA架构和微服务架构 3.领域驱动设计及业务驱动划分 ==================================== 一. 分布式架构的基本理论 1.CAP理论 一个经典的分布式系统理论。CAP 理论告诉我们:一个分布式系统不可能同时满足一致性(C:Consistency)、可用性(A:Availability)和分区容错性(P:Partition tolerance)这三个基本需求,最多只能同时满足其中两项。 一致性(Consistency) 所有节点上的数据必须时刻保持一致 可用性(Availability) 可用性是指服务一直可用,而且是正常的响应时间 分区容错性(Partition tolerance) 系统应该持续提供服务,即时系统内部(某个节点分区)有消息丢失。比如交换机失败、网址网络被分成几个子网,形成脑裂;服务器发生网络延迟或死机,导致某些 server 与集群中的其他机器失去联系 总结: CAP 并不是一个普适性原理和指导思想,它仅适用于原子读写的 NoSql 场景中,并不适用于数据库系统。 2.BASE理论 从前面的分析中知道:在分布式(数据库分片或分库存在的多个实例上)系统下,CAP 理论并不适合数据库事务(因为更新一些错误的数据而导致的失败,无论使用什么样的高可用方案都是徒劳

从零开始编写自己的C#框架(28)——建模、架构与框架

家住魔仙堡 提交于 2019-12-10 03:48:19
  文章写到这里,我一直在犹豫是继续写针对中小型框架的设计还是写些框架设计上 的进阶方面的内容?对于中小型系统来说,只要将前面的内容进行一下细化,写上二三十章具体开发上的细节,来说明这个通用框架怎么开发的就已完全足够了,因 为对于中小型系统来说,并不是很复杂,简单的了解三层架构就已经够用了,而使用太多的设计反而有点罗嗦,因为基本上没有什么人会为中小型系统花费太多的设 计工作。而对于设计大型平台的框架设计,又深深感到自己的积累还远远不够,写出来怕会误导大家。但不换个思维来讲述也很难说清框架的设计思想,别人拿到一 个框架源码后,也很难让人能清晰的理解这个框架到底是什么东东,怎么去改造它。所以只能抱着和大家共同学习的心态,来抛砖引玉,希望能更好的总结一下自己 的学习成果,当然有些观点并不一定是正确的,也希望大家能直接拍砖指出来。 前言   很多朋友看到标题可能会很奇怪,为什么弄一个开发框架首先要做的是建模?建模就能做一个框架出来吗?直接的人可能会说,这个2B,设计一个开发框架讲解的核心应该是三层、五层架构,每个层应该有什么用处,他们之间该如何解耦如何协作调用......   如果以前有人告诉我设计一个框架这样做的话,我也会觉得弄一个开发框架搞得这么复杂做什么,直接弄几个层和工具类出来,然后写一些常见功能不就行了。   实际上写本系列以来,理论部分一直在琢磨怎么才能用更通俗易懂的方式讲解出