zoukankan      html  css  js  c++  java
  • 关于系统架构的一些总结(1)

    1.DB sharding  有两种方式实现

    a)   DB Proxy 

    PHP/.Net ---> dbproxy ---> mysql/Sql server

    dbproxy针对各类查询设计了一套缓冲系统,有效的降低了数据库的负荷,避免某些高并发的应用经常出现 too many connections 的错误,一个dbproxy可以方便的允许大量并 

    b)        客户端自己根据业务选择(是不合理的)

    ESB/OPEN Api 直联与间联

    客户端可以通过ESB作为中间服务调用企业后台各服务。如果客户端都有间联的话,ESB将成为单点中心,一旦ESB出现问题,会出现单点故障。

    这时要弱化客户端对后台各业务服务的间联。客户端只从ESB取得后台业务服务的地址,然后直接调用后台服务。

    另外:ESB/OPEN Api对外只有一般的查询功能。更新功能则使用队列。从而避免客户端重复提交更新,而且避免客户端调用出现异常情况导致数据不一致。

    数据结构化

    标签是一种数据结构化的展现方式,能够提高数据使用效率。

    通过标签与标签结构化关系,使用搜索引擎机制,从而使网站更有个性化。

    PV 与UV 简单计算

    60W UV  X  6  约等于 360W PV   

    基于用户的稳定缓存机制

    如果有10台缓存服务器,它们之间是同步的。但缓存数据有丢失或同步不一致的情况。

    这种情况可以基本 用户cookie + 15分钟 哈希后取一台服务器作为此用户 15分钟内的“专用”缓存命中服务器

     以上,是工作中应用到的一些关于架构的总结,分享一下,欢迎交流。

  • 相关阅读:
    django实例(1)
    django笔记补充
    django笔记
    Docker自学纪实(六)搭建docker私有仓库
    Docker自学纪实(四)搭建LNMP部署wordpress
    Docker自学纪实(三)Docker容器数据持久化
    Docker自学纪实(二)Docker基本操作
    Docker自学纪实(一)Docker介绍
    CentOS 7.4 基于LNMP搭建wordpress
    CentOS7安装配置VSFTP
  • 原文地址:https://www.cnblogs.com/alexyu/p/dbproxy.html
Copyright © 2011-2022 走看看