zoukankan      html  css  js  c++  java
  • 《分布式服务框架原理与实践》阅读笔记1

    应用框架演进

    • MVC (Modle View Controller) 架构: 当业务规模很小时,将所有功能都部署在同一个进程中,通过双机或者前置负载均衡器实现负载分流;此时,用于分离前后台逻辑的 MVC 架构是关键。
    • RPC (Remote Procedure Call)架构:当垂直应用越来越多,应用之间交互不可避免,将核心和公共业务抽取出来,作为独立的服务,实现前后台逻辑分离。此时,用于提高业务复用及拆分的 RPC 框架是关键。
    • SOA (Service Oriented Architecture)架构:随着业务发展,服务数量越来越多,服务生命周期管控和运行态的治理成为瓶颈,此时用于提升服务质量的 SOA 服务治理是关键。
    • 微服务架构:随着敏捷开发、持续支付、DevOps 理论的发展和实践,以及基于 Docker 等轻量级容器 (LXC) 部署应用和服务的成熟,微服务架构开始流行,逐渐成为应用架构的未来演进方向。通过服务的原子化拆分,以及微服务的独立打包、部署和升级,小团队敏捷交付,应用的交付周期将缩短,运营成本也将大幅下降。

    分布式服务框架入门

      技术是为商业目标服务的,业务发展到什么规模,就有什么样的技术与之匹配。所以,分布式服务框架实际并没有标准,不同的业务场景会有不同的特性需求。

      尽管行业、业务规模不同会导致架构存在一-定差异,但是差异是相对的,共性是绝对的。通过对阿里的Dubbo、淘宝的HSF和亚马逊的Coral Service 进行分析,我们惊讶地发现三者存在很多共性,例如配置化发布服务、基于服务注册中心的订阅发布机制、内部私有二进制协议通信、灵活的路由策略、服务治理等。正因为如此,设计与开发通用的分布式服务框架是完全可行的。

    通信框架

      绝大多数的分布式服务框架(RPC框架)都推荐使用长连接进行内部通信。

      如果我们要构建高性能、低时延、支持大并发的应用系统,使用同步阻塞I/O模型是无法满足性能线性增长和可靠性的,应使用更高效的NIO非阻塞I/O。

      除了基础功能,通信框架的可靠性和性能也是非常重要的指标。高性能通信框架的构建成功,为分布式服务框架后续的设计打下了坚实的基础,也为上层的应用层协议栈开发提供了良好的基础设施。

  • 相关阅读:
    Android 去除最上面应用名称及图标
    Android 仿QQ消息界面
    多线程断点续传及下载
    android 断点下载---XUtils
    Android判断网路是否畅通加权限
    Android_按两次返回键退出程序和长按返回键退出程序
    Android JPush(极光推送)的使用教程
    使用VS2013自带的PreEmptive Dotfuscator and Analytis来混淆C#代码
    Entity Framework 6连接Oracle、Postgresql、SQLite、LocalDB数据库字符串详解
    Fluent Nhibernate 数据库配置
  • 原文地址:https://www.cnblogs.com/dream0-0/p/13097179.html
Copyright © 2011-2022 走看看