• 互联网公司的技术体系


     互联网,是个较为明确且范围有限的概念。因此,互联网技术相对也是有限的,互联网公司的技术体系也是有限的。

    站得更高一点看,它也就“那么点技术”。

    But,现在的我们依旧渺小。o(︶︿︶)o

    对于互联网公司的技术体系,我有以下认识,仅供参考。

    本文只是想表达一种观点互联网公司的技术体系是相对明确的,大多数公司就在“大圈里画小圈”。


    第一层:终端设备

    终端设备,是用户直接操作的工具,包括硬件设备、操作系统、应用程序3个部分。

    常见的有5种:

    1、PC客户端

        硬件(台式机+笔记本)+操作系统(Windows,Linux,iOS)+本地应用(QQ、酷我音乐盒、有道云笔记)

    2、PC浏览器

       硬件(台式机+笔记本)+操作系统(Windows,Linux,iOS)+浏览器(IE、360、QQ、Chrome)

    3、移动客户端

       硬件(手机+平板)+操作系统(Windows,Android,iOS)+本地应用(微信App、京东金融App、支付宝App)

    4、移动浏览器

       硬件(手机+平板)+操作系统(Windows,Android,iOS)+浏览器(QQ、UC)

    5、其它设备

        大型主机、路由器、互联网电视、车载导航系统、智能手表等多种设备。

    第2层:域名解析

    用户请求,需要先找到服务方的IP地址。但是,IP地址不够友好,大部分请求的地址URL是用域名来表示的,比如http://jd.com/article/xiaolei.jpg。

    域名解析,是由全球无数个有层级节点的DNS服务器共同合作完成的。

    国内的域名解析,注册域名之后,可以直接“解析”。但是,不能用作网站用途。

    解析:把jd.com域名映射到11.12.13.254这个ip。

    网站用途:访问jd.com。如果没有备案,运营商会提示“请首先备案”。

    网站备案:最常见的是指域名备案,提交域名基本资料,到工信部备案。

    其它备案,包括ICP证、电信增值业务许可证、公网安备等几十种。

    没有相关“证书”和“牌照”的网站,都是处于“灰色地带”,随时会出事。


    第3层:网络协议

    信息传输过程中,会遵循各种网络协议。最常见的有,HTTP和TCP/IP。

    第4层:请求分发

     软件和硬件实现的负载均衡机制,会把请求分发到其中一台服务设备上。

     负载均衡,常见的至少有2个层次,比如直接把域名解析到不同的IP上,可能直接交给了某台应用服务器,也可能是交给了Nginx,再转发给某台应用服务器。

    第5层:应用容器

    Weblogic、Tomcat、Apache等应用服务器和容器,通过容器中的程序来响应互联网请求。

    这里需要简单提一下“内部分发网络CDN”。

    用户请求,如果访问的是静态内容,可以直接去CDN获取,而不一定会到应用服务器这里。

    第6层:展示交互层

    Web请求,交给了Web容器比如Tomcat里的Java程序处理。

    Java程序中,有一层专门用来接收请求,解析数据,在内部处理完成之后,把结果数据交给用户。

    这一层,可以叫做Controller层、展示层、界面交互层等。

    第7层:业务服务

    第6层的展示交互层,只做数据的接收和简单封装,请求的核心响应逻辑,通常在“业务服务层”,这一层才是真正的处理“业务逻辑”的地方。

    比如,用户购物、理财产品回款报表、物流运输路线等。

    需要特别说明的是,随着互联网的发展,出现了各种各样的SaaS平台,第三方API,第三方可用服务,展示交互层和业务服务层,可以调用第三方的API,满足自身的需求。

    第8层:数据层

    数据库,MySQL和MongoDB等。

    缓存,Redis和Memcache等。

    文件系统,本地和远程。

    第9层:硬件和网络设备

    主机、云主机、应用容器、虚拟容器、应用引擎、网络、IP、机房。

    全局观:对于咱们有工作经验的人来说,先全局后局部,可以更有效率地学习和实践。

     


  • 相关阅读:
    H5 20-属性选择器上
    H5 19-序选择器下
    H5 18-序选择器
    算法基础部分整理-《图解算法》
    iOS 内存管理之属性关键字
    多线程 ---基础定义部分
    Mongodb基本命令总结
    MySQL四种隔离级别和MVCC
    python同步原语--线程锁
    python进程间通信--信号Signal
  • 原文地址:https://www.cnblogs.com/qitian1/p/6462272.html
Copyright © 2020-2023  润新知