zoukankan      html  css  js  c++  java
  • 架构实战

    一、架构演进

    影响一个企业业务的发展主要有 3 个因素:市场、技术、管理,这三者构成支撑业务发展的铁三角,任何一个因素的不足,都可能导致企业的业务停滞不前。

    在这个铁三角中,业务处于三角形的中心,毫不夸张地说,市场、技术、管理都是为了支撑企业业务的发展。

    技术创新推动业务发展!

    业务发展推动技术的发展!

    对于框架的选择,有一个总的原则:优选成熟的框架,避免盲目追逐新技术!

    二、技术实践

    Hadoop 的生态圈

    Docker:

    腾讯万台规模的 Docker 应用实践(http://www.infoq.com/cn/articles/tencent-millions-scale-docker-application-practice)、

    新浪微博红包的大规模 Docker 集群(http://www.infoq.com/cn/articles/large-scale-docker-cluster-practise-experience-share)。

    负载均衡:

     有实力的公司可能会尝试实现 HTTP-DNS 的功能,即使用 HTTP 协议实现一个私有的 DNS 系统。HTTP-DNS 主要应用在通过 App 提供服务的业务上,因为在 App 端可以实现灵活的服务器访问策略,如果是 Web 业务,实现起来就比较麻烦一些,因为 URL 的解析是由浏览器来完成的,只有 Javascript 的访问可以像 App 那样实现比较灵活的控制。

    CDN:

    CDN 是为了解决用户网络访问时的“最后一公里”效应,本质上是一种“以空间换时间”的加速策略,即将内容缓存在离用户最近的地方,用户访问的是缓存的内容,而不是站点实时的内容。

    存储云和图片云通常的实现都是“CDN + 小文件存储”

    三、平台

    运维平台

    运维平台核心的职责分为四大块:配置、部署、监控、应急,每个职责对应系统生命周期的一个阶段,如下图所示:

    配置:主要负责资源的管理。例如,机器管理、IP 地址管理、虚拟机管理等。

    部署:主要负责将系统发布到线上。例如,包管理、灰度发布管理、回滚等。

    监控:主要负责收集系统上线运行后的相关数据并进行监控,以便及时发现问题。应急:主要负责系统出故障后的处理。例如,停止程序、下线故障机器、切换 IP 等。

     测试平台

     测试平台核心的职责当然就是测试了,包括单元测试、集成测试、接口测试、性能测试等,都可以在测试平台来完成。

    四、

    软件开发领域有一个流行的原则:DRY,Don’t repeat yourself。翻译过来更通俗易懂:不要重复造轮子。

    不要重复发明轮子,但要找到合适的轮子

  • 相关阅读:
    java用write()拷贝一个文本文件
    java代码简单练习
    java代码GUI简单的。。。
    java"=="与equals()方法的对照
    java代码Math.sqrt
    java代码for循环+缓冲流类
    java代码JFrame练习
    java 代码。= -=
    java流类
    java代码throws异常
  • 原文地址:https://www.cnblogs.com/developer-qin/p/14663733.html
Copyright © 2011-2022 走看看