当前位置: 首页 > news >正文

响应式网站开发周期网络营销外包收费

响应式网站开发周期,网络营销外包收费,女生学ui设计好就业吗,域名后缀cn做网站一、微服务的原理 1.什么是微服务架构 微服务架构区别于传统的单体软件架构,是一种为了适应当前互联网后台服务的「三高需求:高并发、高性能、高可用」而产生的的软件架构。 单体式应用程序 与微服务相对的另一个概念是传统的单体式应用程序( Monolithic application ),…

一、微服务的原理

1.什么是微服务架构

微服务架构区别于传统的单体软件架构,是一种为了适应当前互联网后台服务的「三高需求:高并发、高性能、高可用」而产生的的软件架构。

单体式应用程序

与微服务相对的另一个概念是传统的单体式应用程序( Monolithic application ),单体式应用内部包含了所有需要的服务。而且各个服务功能模块有很强的耦合性,也就是相互依赖彼此,很难拆分和扩容。

单体应用程序的优点

开发简洁,功能都在单个程序内部,便于软件设计和开发规划。

容易部署,程序单一不存在分布式集群的复杂部署环境,降低了部署难度。

容易测试,没有各种复杂的服务调用关系,都是内部调用方便测试。

单体应用程序的缺点

单体程序的缺点一开始不是特别明显,项目刚开始需求少,业务逻辑简单,写代码一时爽,一直爽。噩梦从业务迭代更新,系统日益庞大开始,前期的爽没有了,取而代之的是软件维护和迭代更新的无尽痛苦。

由于单体式应用程序就像一个大型容器一样,里面放置了许多服务,且他们都是密不可分的,这导致应用程序在扩展时必须以「应用程序」为单位。

当里面有个业务模块负载过高时,并不能够单独扩展该服务,必须扩展整个应用程序(就是这么霸道),这可能导致额外的资源浪费。

此外,单体式应用程序由于服务之间的紧密度、相依性过高,这将导致测试、升级有所困难,且开发曲线有可能会在后期大幅度地上升,令开发不易。相较之下「微服务架构」能够解决这个问题。

2.微服务特点

微服务 (Microservices) 就是一些协同工作小而自治的服务。

2014年,Martin Fowler 与 James Lewis 共同提出了微服务的概念,定义了微服务是由以单一应用程序构成的小服务,自己拥有自己的行程与轻量化处理,服务依业务功能设计,以全自动的方式部署,与其他服务使用 HTTP API 通信。同时服务会使用最小的规模的集中管理 (例如 Docker) 能力,服务可以用不同的编程语言与数据库等组件实现

微服务的优点:

1)技术异构性

不同服务内部的开发技术可以不一致,你可以用java来开发helloworld服务A,用golang来开发helloworld服务B,大家再也不用为哪种语言是世界上最好的语言而争论不休。

隔离性

一个服务不可用不会导致另一个服务也瘫痪,因为各个服务是相互独立和自治的系统。这在单体应用程序中是做不到的,单体应用程序中某个模块瘫痪,必将导致整个系统不可用,当然,单体程序也可以在不同机器上部署同样的程序来实现备份,不过,同样存在上面说的资源浪费问题。

2)可扩展性

庞大的单体服务如果出现性能瓶颈只能对软件整体进行扩展,可能真正影响性能的只是其中一个很小的模块,我们也不得不付出升级整个应用的代价。这在微服务架构中得到了改善,你可以只对那些影响性能的服务做扩展升级,这样对症下药的效果是很好的。

3)简化部署

如果你的服务是一个超大的单体服务,有几百万行代码,即使修改了几行代码也要重新编译整个应用,这显然是非常繁琐的,而且软件变更带来的不确定性非常高,软件部署的影响也非常大。在微服务架构中,各个服务的部署是独立的,如果真出了问题也只是影响单个服务,可以快速回滚版本解决。

4)易优化

微服务架构中单个服务的代码量不会很大,这样当你需要重构或者优化这部分服务的时候,就会容易很多,毕竟,代码量越少意味着代码改动带来的影响越可控。

5)服务注册与发现

微服务之间相互调用完成整体业务功能,如何在众多微服务中找到正确的目标服务地址,这就是所谓「服务发现」功能。

常用的做法是服务提供方启动的时候把自己的地址上报给「服务注册中心」,这就是「服务注册」。服务调用方「订阅」服务变更「通知」,动态的接收服务注册中心推送的服务地址列表,以后想找哪个服务直接发给他就可以。

6)服务监控

单体程序的监控运维还好说,大型微服务架构的服务运维是一大挑战。服务运维人员需要实时的掌握服务运行中的各种状态,最好有个控制面板能看到服务的内存使用率、调用次数、健康状况等信息。

这就需要我们有一套完备的服务监控体系,包括拓扑关系、监控(Metrics)、日志监控(Logging)、调用追踪(Trace)、告警通知、健康检查等,防患于未然。

7)服务容错

任何服务都不能保证100%不出问题,生产环境复杂多变,服务运行过程中不可避免的发生各种故障(宕机、过载等等),工程师能够做的是在故障发生时尽可能降低影响范围、尽快恢复正常服务。

程序员为此避免被祭天,需要引入「熔断、隔离、限流和降级、超时机制」等「服务容错」机制来保证服务持续可用性。

8)服务安全

有些服务的敏感数据存在安全问题,「服务安全」就是对敏感服务采用安全鉴权机制,对服务的访问需要进行相应的身份验证和授权,防止数据泄露的风险,安全是一个长久的话题,在微服务中也有很多工作要做。

9)服务治理

说到「治理」一般都是有问题才需要治理,我们平常说环境治理、污染治理一个意思

http://www.hrbkazy.com/news/19629.html

相关文章:

  • wordpress 登录挂件抖音seo教程
  • 网站做301跳转的好处seo优化排名工具
  • 哪些网站做的好看的图片微营销平台系统
  • 吉安网络科技有限公司关键词优化的主要工具
  • wordpress live2d换装惠州seo计费
  • 做的比较好的律师网站百度推广投诉电话
  • 邵阳市住房和城乡建设局网站网站推广找哪家公司好
  • 做美食软件视频网站有哪些seo标题优化的心得总结
  • b2c购物网站系统网络营销策划案怎么写
  • 做网站运营昆明网络推广优化
  • 怎么做游戏充值代理网站乌鲁木齐seo
  • 潍坊企业自助建站系统公关服务
  • 大型网站设计公司百度搜索排行榜风云榜
  • 三亚网站开发公司北京seo收费
  • 注册了网站怎么建设鸡西seo
  • 做化工行业网站短视频seo公司
  • 正规网站建设方案详细正规的推文平台
  • 弹幕网站是怎么做的交换链接网站
  • 外贸可以什么网站做怎么才能让百度收录网站
  • vs2015做的网站营销软文范例大全
  • 在百度上怎么建网站海外推广营销平台
  • 嘉定网站建设哪家好网络营销师证书有用吗
  • 我是做颗粒在什么网站上太原seo霸屏
  • 免费网站域名注册个人目录搜索引擎有哪些
  • 杭州网站建设多少钱seo教程自学
  • 您的网站未备案深圳网站建设公司官网
  • 昆山网站建设哪家便宜深圳海外推广
  • 泰州网站建设公司哪个好网站建设需要啥
  • 网站设置了 不能复制策划方案模板
  • 徐州教育学会网站建设seo如何进行优化