C#.NET 权限管理系统组件 - 大数据读写分离实现的例子

简介:

  当web服务器的每天的访问量超过10万ip时对服务器主机的性能要求就非常高了,而且这些访问量又不是平均分布在24个小时里,往往有一个集中的访问高峰,晚上服务器的访问量又很低甚至是深夜连续好几个小时没访问量!

   例如我们平时维护的网站的日平均访问量是30万ip、访问高峰时并发的用户量非常大,数据库主机的压力非常大,虽然我们采取了分库措施,但是有些大表、核 心业务表的访问压力又非常大,例如有同时有1千个用户在读取数据库又同时这1千个用户在写入数据库,往往读取的次数比写入的更多一些。

   1:购买更好的服务器硬件提升性能(硬件性能越高价钱越高,这个是无止境的投资,而且闲置下来的服务器有时候也无法发挥更好的作用,同时还需要购买相同配置的备份服务器,以防止硬件突然损坏,所以这个代价不只是购买1台就可以了,要购买2台才可以)。

   2:利用读写分离进行性能优化,例如数据库的复制机制,把主数据库复制出一份到另外一个服务器上,写入操作都写主数据库,读取操作都从另外一个服务器读 取,这样并不需要非常牛的服务器,就可以把1千人同时读取,同时又写入的操作,分给2台服务器来承担。这样主服务器的压力明显可以减少了,性能下降也会明 显得到改善。一台主机可能处理起来要接近死机了,2台主机来承担这个压力,可能2个主机都活得好好的,而且还可以承担的更大的并发压力了。

   3:数据库的复制同步可以让数据库管理员来设置配置了,我们写程序主要是改我们的源码,原来的1个数据库连接 UserCenterDbConnection读写在一起的修改一下,UserCenterWriteDbConnection(写入)、 UserCenterReadDbConnection(读取)的进行分离,当然我们的系统刚开始设计的时候就足够健壮那就耗费1天2天就可以修改过来 了,再仔细测试一下就可以重新发布了,读写分离就这么搞定了,心里舒坦了很多。

   4: 读写分离也不是那么100%绝对的,主要目的是为了降低主服务器的性能压力,尽量把读取操作集中在另外一个读取的数据库服务器上,解放主服务器;例如一个 操作需要马上写入服务器,然后需要及时读取到值的,也直接写入读取主服务器就可以了,读写分离也是相对的,我们的主要目的是把主服务器的并发访问压力减 缓、提高主服务器的数据处理性能。 

下图是大数据读写分离的示意图,做得非常好看,我喜欢

下面是数据库连接到2个服务器的配置方法,第一个是写入的服务器,第二个是读取的服务器。

这里是连接2个服务器的例子

下面是读写分离的服务器上监控只读服务器上的sql语句运行情况的例子抓图




本文转自 jirigala 51CTO博客,原文链接:http://blog.51cto.com/2347979/1188403,如需转载请自行联系原作者

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
9月前
|
前端开发 JavaScript 关系型数据库
使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统
使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统
250 0
|
12月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
491 0
|
前端开发 C# 开发者
.NET使用Umbraco CMS快速构建一个属于自己的内容管理系统
.NET使用Umbraco CMS快速构建一个属于自己的内容管理系统
257 12
|
Web App开发 前端开发 调度
一款基于 .NET + Blazor 开发的智能访客管理系统
一款基于 .NET + Blazor 开发的智能访客管理系统
239 8
|
开发框架 JavaScript 前端开发
精选2款.NET开源的博客系统
精选2款.NET开源的博客系统
286 8
|
前端开发 JavaScript C#
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET8+Vue3开发的权限管理&个人博客系统
231 7
|
开发框架 安全 Java
.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力
本文深入探讨了.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力。.NET不仅支持跨平台开发,具备出色的安全性和稳定性,还能与多种技术无缝集成,为企业级应用提供全面支持。
509 3
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
573 5
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
626 0
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
331 7