• 漫谈分布式系统


           系统为了获取更大存储、更大计算量比如Google、百度等搜索引擎、共享资源(共享打印机)、移动

    通信我们现在每时每刻都离不开的手机,都需要用到分布式系统。

           分布式系统是一个涵盖硬件、网络、算法、分布式计算,一个宽广而且有意思领域。分布式系统是

    复杂系统,但设计出来给用户使用,要简单明了,易于在实际中进行使用。

           分布式系统设计透明性:例如分布式文件系统HDFS,整个文件系统暴露给用户与单机系统没有差别,

    提供给用户接口是读、写、复制、删除,路径创建、删除、路径下文件列表,与本地文件系统没有差别,

    将内部复杂状态一致性、节点问题、节点不可用、数据一致性、存储位置,全部对用户透明。

           分布式系统高可用:分布式系统由许多硬件构成,众多硬件必然会有不可用比如机器硬件出问题,系

    统设计要将硬件失效作为设计一个提前考量。MapReduce计算时,机器出问题后,能将任务重定向,继续

    进行计算,而不是整个程序重新进行计算。

           分布式系统中一致性:分布式系统中节点数据保持一致,例如分布式缓存系统,数据有多个副本,这

    时存在一个缓存更新问题,当需要更新缓存时,需要将所有节点缓存更新成功。

           分布式时钟同步,数据复制,数据一致性,任务执行很多都依赖于系统时钟,分布式系统,系统时钟

    不一致,会导致很多操作很难进行。

           分布式事务,对于交易或者涉及人身以及生命财产安全系统,需要分布式相关操作是事务。比如网银

    转账、或者网上购物,钱花出去了,对方却没收到,这是完全无法接受的。

           分布式系统存储,有分布式文件系统比如GFS,主要用于存储文件,计算主要面向离线。百度开源分

    布式数据库Tera是面向实时计算。以及支持实时存取数据,本身实现对内存、SSD、SATA进行相应优化,

    读取能保证到10ms以内,进行相应设置甚至能到1ms,技术水平还是相当之高的。

           分布式计算,因数据规模达到数T甚至P级别,单机计算已经不能满足系统需求,分布式计算是分布式

    系统重要应用,google、百度搜索引擎对于网页排序,今日头条、电子商务系统中个性化推荐系统排序,

    都离不开分布式计算,离线比如MapReduce计算框架,实时比如Storm等计算框架。

           分布式通信rpc,分布式系统当数据与计算不在一起时需要移动数据,当多个节点多个任务需要进行

    通信时,当需要知道机器状况时都需要进行通信,机器间通信少不了rpc,rpc不只是作为微服务,本身也

    是分布式系统重要组成部分。

           分布式协调服务,比如Zookeeper,可用于主从选取、分布式事务、消息队列、配置管理等多个领域。

           分布式消息队列,比如Kafka,用于消息传递,消息队列好处是多个业务系统之间解耦。并且消息队

    列也是IM系统核心,IM类应用可以借鉴开源消息队列并扩展以保证消息不丢失不重复,海量消息存储以及

    发送接收。

           分布式缓存redis,JD 基于redis开发自己缓存数据库jimdb,线上很多服务直接将所有数据存储在缓

    存中,奢侈但性能确实刚,c语言开发,大部分情况下核心是时间复杂度为O(1)Hash结构,get操作基本是

    1ms,并且redis能同时支持超大量写以及读qps,为线上服务性能保驾护航。

           AI时代,深度学习计算一是计算量大一是处理数据量大,本身都离不开分布式系统,分布式系统是工

    业界基石,是搜索引擎、推荐系统、广告系统、人工智能、AI背后英雄。是一个值得花时间去探索领域,

    是一个价值极大领域,对分布式系统感兴趣同学可以去研究,越深入价值越大。

    微信搜索:debugme123

            扫描二维码关注:

  • 相关阅读:
    Leetcode 第135场周赛解题报告
    程序员如何当好面试者
    程序员如何当好面试官
    Leetcode 第133场周赛解题报告
    如何高效工作——团队篇
    程序员如何高效工作——个人软件篇
    程序员如何高效工作——个人硬件篇
    HTTP协议:从原理到流程|乐字节
    Tomcat详解|乐字节
    说说Java Web中的Web应用程序|乐字节
  • 原文地址:https://www.cnblogs.com/freedommovie/p/7894380.html
Copyright © 2020-2023  润新知