惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Hacker News
The Hacker News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
雷峰网
雷峰网
人人都是产品经理
人人都是产品经理
Recent Announcements
Recent Announcements
D
DataBreaches.Net
P
Proofpoint News Feed
V
Visual Studio Blog
J
Java Code Geeks
Recorded Future
Recorded Future
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
F
Full Disclosure
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
C
Cybersecurity and Infrastructure Security Agency CISA
V
Vulnerabilities – Threatpost
罗磊的独立博客
Jina AI
Jina AI
博客园 - 【当耐特】
C
CERT Recently Published Vulnerability Notes
G
GRAHAM CLULEY
Y
Y Combinator Blog
L
LangChain Blog
L
LINUX DO - 热门话题
宝玉的分享
宝玉的分享
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Help Net Security
云风的 BLOG
云风的 BLOG
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园_首页
A
About on SuperTechFans
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Latest news
Latest news
T
Threatpost
T
Tenable Blog
有赞技术团队
有赞技术团队
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Stack Overflow Blog
Stack Overflow Blog
C
Cisco Blogs
C
Check Point Blog
T
Tor Project blog
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
S
Schneier on Security
美团技术团队
I
Intezer
S
Securelist
AWS News Blog
AWS News Blog

博客园 - jadesun

【转载】Zachman框架 参加了IBM的架构师培训,总结了一些内容 数据仓库 - 事实表和维度表建立的方法论 Hadoop的学习历程 Hadoop手册_v0.3 MySQL_Cluster 的尝试及各种测试 Hadoop的学习历程 Hadoop手册_v0.2 尝试数据分片处理 和同事扯了一个理论模型出来,后面再验证是否合理。 依赖倒置原则 迪米特法则 中国航油项目的一次数据库优化,关于Audit Logout的问题。 公文流转SQL优化日志七 公文流转SQL优化日志六 和同事们终于将Entity FrameWork整合进新的框架中了,发布第一个版本。 继续上篇实现的架构,有了新的进展。介绍一下格瑞趋势的产品 公文流转SQL优化日志五 公文流转SQL优化日志四 公文流转SQL优化日志三 公文流转SQL优化日志二
工作日志,正在实现中的架构,针对SQL SERVER。参考了DZ的设计
jadesun · 2011-07-08 · via 博客园 - jadesun

Posted on 2011-07-08 09:39  jadesun  阅读(561)  评论()    收藏  举报

自从上回参加培训以后,负载均衡的想法一直在脑子里面挂着。以前的公司和天涯网络社区有业务合作,曾经和他们的技术总监进行过交流,他介绍过天涯的架构,记忆中最深的一句话是,“设计之初就要自问:随着数据规模增加和流量增长能否通过增加新服务器(DB/WEB)解决性能问题”。近期和德哥都在进行一些尝试,形成了下面这样可实现并且低成本的架构图。给各位老大看看缺陷和可提升的地方在哪里,因为我接触这块的信息不多,可使用的方案也就缺乏,让各位老大提一些意见来完善它。


WEB层面:

1, 采用Nginx WEB服务器的负载均衡控制,为了避免 Nginx 代理服务器的崩溃造成的WEB服务器无法访问,并提高它的可靠性。需要再增加另一台 Nginx 服务器,它们之间用NLB来做群集。这样子我在添加新的WEB服务器时,只需要在Nginx代理服务器中添加它的IP地址即可。(已经验证)

2, WEB 服务器之间采用 cwRsync 软件进行文件同步。(未验证)

3, WEB 服务器采用 MemCached 来进行 SESSION 共享。(已经验证)

4, WEB 服务器共用一台文件服务器做为图片和附件的保存,用户先通过WEB服务器上传,再通过FTP传输到文件服务器,文件服务器通过HTTP发布出来(访问时校验)。(已经验证)

SQL SERVERDB层面:

1, Write数据库服务器提供发布功能,多个Read数据库服务器进行订阅,达到数据共享的目的。(已经验证)

2, Write数据库需要主从备份,然后提供出发布。(没实现,因为复制服务器需要提供出机器名,这样子提供出的机器名是哪台?能自动切换?)

3, 如果Write数据库经过长时间的积累,数据量庞大。那么我增加一个Read服务器时,需要重新订阅,这样子的效率会很慢。怎么办?这是很大的问题,不解决就达不到添加服务器就能增加性能的目的。

1, 通过一个配置文件来加载数据库服务器,格式如下:

  <DbSnapInfoList>

    <DbSnapInfo>

      <!-- 数据库源编号 -->

      <SouceID>1</SouceID>

      <!-- 是否启用 -->

      <Enable>true</Enable>

      <!-- 数据库连接 -->

      <DbconnectString>Data Source=LIJINGFAN;User ID=sa;Password=123456;Initial Catalog=NetFrameWork2;Pooling=true</DbconnectString>

      <!-- 负载权重 -->

      <Weight>4</Weight>

      <!-- 是否写服务器 -->

      <IsWrite>true</IsWrite>

    </DbSnapInfo>

    <DbSnapInfo>

      <SouceID>2</SouceID>

      <Enable>true</Enable>

      <DbconnectString>Data Source=HPWANGMEIDE1;User ID=sa;Password=123456;Initial Catalog=NetFrameWork2;Pooling=true</DbconnectString>

      <Weight>3</Weight>

      <IsWrite>false</IsWrite>

    </DbSnapInfo>

  </DbSnapInfoList>

2, 根据SQL语句获取数据源,如果是SELECT语句就根据权重值获取Read的数据源,其它的就使用Write的数据源。这里面需要更详细的考虑,包括存储过程和视图查询或者变更等等。

3, 采用 权重算法 来推荐数据源。这儿可能服务器的性能和负载不一样,可能通过调整权重来分配查询的压力。

4, 还有没有??