首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Mysql主从配置,实现读写分离

大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果更是 不堪设想。这时候,我们会考虑如何减少数据库的联接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached,如果资金丰厚的话,必然会想到假设服务器群,来分担主数据库的压力。Ok切入今天微博主题,利用MySQL主从配置,实现读写分离,减轻数据库压力。这种方式,在如今很多网站里都有使用,也不是什么新鲜事情,今天总结一下,方便大家学习参考一下。

01
您找到你想要的搜索结果了吗?
是的
没有找到

MySQL主从同步读写分离的集群配置

大型网站为了解决大量的高并发访问问题,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器支持,如此多的数据库连接操作,服务器性能再好数据库必然会崩溃。数据丢失的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached等。如果资金充足的话,必然会想到假设服务器集群,来分担主数据库的压力。或者在硬件设备上,投入大量资金,购买高性能的服务器。出名的有f5,硬件负载,软件负载等。 Ok切入今天的主题,利用MySQL主从配置,实现读写分离,减轻数据库压力。这种方式,在如今很多网站里都有使用,也不是什么新鲜事情,今天总结一下,方便大家学习参考一下。 读写分离: 1.多个服务器肯定比一个服务器好。 2.在数据库写入的时候,会加入大量的锁(排它锁,共享锁等等),从而影响性能。 3.数据更安全,多数据库存在备份数据。 搭建环境: 1.搭设一台Master服务器(win7系统64bit,Ip:10.10.2.33) 2.一台台Slave服务器(winXp系统32bit,ip:10.10.2.157) 原理:主服务器(Master)负责网站写操作,从服务器负责查询操作。主从服务器利用MySQL的二进制日志文件,实现数据同步。二进制日志由主服务器产生,从服务器响应获取同步数据库。

02

运维往事 公司生产服务器不让连公网

15年毕业,就莫名其妙做了运维,也成为了阿里最后一批业务运维(pe)。刚开始做运维的时候由于基础知识太差,很多事情做了就做了,但也不理解为什么那么做了,知道后来跳出运维的圈子,自己做了开发,思路、见识、视野渐渐开阔之后也就慢慢明白了之前好多不懂的东西,想着想着也觉得比较有意思,这里记录下。   在阿里干过运维的人都只知道阿里有七网隔离,具体是哪七网我也记不全了,大概就是办公网、生产网、公网、阿里云、蚂蚁金服……,隔离也就意味着这些网络之间是无法直接访问的。当时做运维的时候没有经过任何系统的培训,摸着黑干活,好多事只有遇到了才能接触到,说实话我也是干了好久才看到七网隔离的。为什么要做七网隔离,最主要一点就是网络安全,不把所有鸡蛋放一个篮子里,即便黑客入侵了其中一个网络,剩下的其他网络也是安全的。除了生产隔离之外,我觉得七网隔离也带来一些其他的好处,比如业务系统的强制解耦,更安全的发布规范………   但七网隔离也有有些不便的地方,比如我们经常要在各个网络间就跳转,最常见就是从办公网进入生产网,公司为我们提供了跳板机,相当于开了一扇从办公网进入生产网的门。再比如,我们有些应用可能需要从外网去获取有些资源,服务器默认都是不能连外网的,这就悲剧了,之前好多应用做迁移的时候,换到新服务器上,结果就不能正常运行了。最开始做应用迁移的时候我也不知道,出问题了才有人告诉我有这个坑。     解决方案就是到我们一个系统上去提交安全外联申请,然后主管审批+安全部门同事审批后就可以连到公网了。我开始做运维的时候这些都已经变成一个走流程的事了,提个单子,点吧点吧就好了,当时也不理解点几下按钮的背后到底发生了什么,直到后来有一次有个同事让我查一个网络问题,大概是他的应用需要从互联网下载一个jar包,但是一直下不下来,我居然当时没意识到这是受七网隔离的限制,但最后让我发现了网络隔离的秘密。   当时知道肯定是网络的问题,但也不知道怎么查,还有有台正常的机器可以对比,;然后google+百度找方法,两台机器做对比,最后终于让我发现两者的差别了。 在服务器上执行route这个命令可以看到本机的静态路由表,大概如下

01

使用 Nexus3镜像搭设私有仓库(Bower 、Docker、Maven、npm、NuGet、Yum、PyPI)

Nuget 是免费、开源的包管理工具,专注于在 .Net、.Net Core 平台应用开发过程中第三方组件库的管理,相对于传统单纯的 dll 引用要方便、科学得多。  其中 nuget.org 是最著名的 NuGet 公开库,但是企业内部开发的(业务)公共组件因为私密性或商业机密不能上传到公共库中,所以企业内部需要搭建一个私有的 NuGet 仓库【私服】来支持。虽然微软有提供的 NugetServer,但 NugetServer 用起来并不那么方便。  而且企业有可能不止使用 C# 一种语言,可能其他的语言组件也需要管理,比如:Java、Docker 镜像 等,NugetServer 就捉襟见肘,本文我给大家带来一款全能型的私服软件 Nexus。

01
领券