zoukankan      html  css  js  c++  java
  • 关于api接口以及页面数据通信域名,缓存cdn设置优化

    以B站为例:

    主域名:www.bilibili.com

    账户登录注册相关域名,包括app登录:passport.bilibili.com

    静态资源css,js,img等相关域名:static.bilibili.com

    用户中心相关域名:space.bilibili.com

    webapi接口相关域名:api.bilibili.com

    app接口相关域名:app.bilibili.com

    另外有一些隐性的域名:

    例如数据库连接相关的:db.bilibili.com

    redis缓存相关的:redis.bilibili.com

    由此可见:

    系统的架构无非就是一个“拆”字,合理的将不同的模块拆分成不同的域名,有以下几点好处

    1、每个域名配置独立的服务器,服务器的业务更加专注,扩展更加方便。

    2、针对特定的业务,可以更方便的对服务器进行优化。

    相关分析

    1、登录状态,设置cookie,范围域名未.bilibili.com,保证跨域名能登录状态

    2、用户中心用特定域名,增加url的友好性,防止url过长,能直接https://space.bilibili.com/2374194这种域名+id的格式,url表现力极强。

    3、api相关用api.bilibili.com域名。

    4、动态数据,例如首页,各分区页,数据变更频繁的页面,全部用ajax请求数据的方式,因为数据变换频繁,也就没有渲染兼容seo的必要了。

    5、播放页,最重要的一个页面,相关标题和简介等,则需要用到渲染的方式,兼容seo,其他一些动态数据,例如评论,播放量等数据,统一用ajax加载。

    6、cdn,静态资源css,js,img等统一设置了很长的cdn缓存,更新用url参数版本号来控制。

    7、甚至一些非动态的接口数据,也可以用cdn来缓存,从而减少db和redis的压力。

  • 相关阅读:
    Vue创建三:组件间bus传值
    vue创建二:引入本地图片
    Vue创建一:创建项目及样式引入
    jQuery源码解析之on事件绑定
    浏览器的同源策略与跨域处理
    常见的contentType编码类型【转】
    CSS预处理器Sass -- sass的基本语法(4)
    CSS预处理器Sass -- Sass工程的创建及sass文件编译(3)
    CSS预处理器Sass -- Sass、Less、Stylus比较(2)
    CSS预处理器Sass -- Sass、compass初识及其安装(1)
  • 原文地址:https://www.cnblogs.com/zenghansen/p/7545147.html
Copyright © 2011-2022 走看看