当前位置: 首页 > news >正文

自媒体网站建设要求网站推广seo优化

自媒体网站建设要求,网站推广seo优化,the7.3 wordpress,河源市做网站分表和分库是什么?有什么区别? 分库是一种水平扩展数据库的技术,将数据根据一定规则划分到多个独立的数据库中。每个数据库只负责存储部分数据,实现了数据的拆分和分布式存储。分库主要是为了解决并发连接过多,单机 my…

分表和分库是什么?有什么区别?

  分库是一种水平扩展数据库的技术,将数据根据一定规则划分到多个独立的数据库中。每个数据库只负责存储部分数据,实现了数据的拆分和分布式存储。分库主要是为了解决并发连接过多,单机 mysql扛不住的问题。

  分表指的是将单个数据库中的表拆分成多个表,每个表只负责存储一部分数据。这种数据的垂直划分能够提高查询效率,减轻单个表的压力。分表主要是为了解决单表数据量太大,导致查询性能下降的问题。

分库与分表可以从:垂直(纵向)和 水平(横向)两种纬度进行拆分。下边我们以经典的订单业务举例,看看如何拆分。

  垂直分库:一般来说按照业务和功能的维度进行拆分,将不同业务数据分别放到不同的数据库中,核心理念 专库专用。按业务类型 对数据分离,剥离为多个数据库,像订单、支付、会员、积分相关等表放在对应的订单库、支付库、会员库、积分库。垂直分库把  一个库的压力分摊到多个库,提升了一些数据库性能,但并没有解决由于单表数据量过大导致的性能问题,所以就需要配合后边的  分表来解决。

  垂直分表:针对业务上字段比较多的大表进行的,一般是把业务宽表中比较独立的字段,或者不常用的字段拆分到单独的数据表中,是一种大表拆小表的模式。数据库它是以行为单位将数据加载到内存中,这样拆分以后核心表大多是访问频率较高的字段,而 且字段长度也都较短,因而可以加载更多数据到内存中,减少磁盘IO,增加索引查询的命中率,进一步提升数据库性能。

 

 水平分库:是把同一个表按一定规则拆分到不同的数据库中,每个库可以位于不同的服务器上,以此实现水平扩展,是一种常见的 提升数据库性能的方式。这种方案往往能解决单库存储量及性能瓶颈问题,但由于同一个表被分配在不同的数据库中,数据的访问 需要额外的路由工作,因此系统的复杂度也被提升了。

  水平分表:是在同一个数据库内,把一张大数据量的表按一定规则,切分成多个结构完全相同表,而每个表只存原表的一部分数据。水平分表尽管拆分了表,但子表都还是在同一个数据库实例中,只是解决了单一表数据量过大的问题,并没有将拆分后的表分。

 常见的分库分表工具:

1. Sharding-JDBC

基于方式
Sharding-JDBC是一个轻量级的Java框架,它通过JDBC驱动的方式,透明化地支持分库分表。它主要是基于AOP原理,在webapp本地进行SQL的拦截、解析、改写、路由和结果归集处理。

优点

  • 效率高,因为它在本地应用层重写jdbc原生的方法,实现数据库分片形式。

  • 可以在不改变现有代码的情况下进行数据库水平扩展。

缺点

  • 需要修改代码,对应用入侵性比较强。

2. Sharding-Proxy

基于方式
Sharding-Proxy作为数据库代理服务,提供MySQL、PostgreSQL和SQLServer等多种协议的支持。它对外表现为一个完整的数据库服务器,能够接受标准的SQL语句并路由到后端的真实数据库。

优点

  • 支持多种数据库协议,可以作为一个独立的数据库服务存在。

  • 降低了客户端的改造成本。

缺点

  • 相比Sharding-JDBC,可能存在一些性能损耗,因为它需要在代理层进行SQL的解析和路由。

3. MyCat

基于方式
MyCat是一款开源的分布式数据库中间件,它主要通过改写SQL分发,以保证数据的安全。MyCat基于Proxy,将MyCat server伪装成一个MySQL数据库,通过它来管理后端的真实数据库。

优点

  • 跨语言、跨平台、跨数据库的能力强,支持多种数据库的分库分表和读写分离。

  • 可以通过代码直连数据库,灵活性高。

缺点

  • 生态还并不是很完善,很多内容都在开发中。

  • 相比ShardingSphere,其社区支持和功能完善度可能稍逊一筹。

4. Apache ShardingSphere

基于方式
Apache ShardingSphere是一个生态圈,主要由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar这三款相互独立但又能够混合部署配合使用的产品组成。它提供了全面的分库分表、读写分离、分布式事务等解决方案。

优点

  • 功能全面,支持多种数据库和分片策略。

  • 社区活跃,有问题可以方便地询问和得到支持。

  • 提供了灵活的部署方式,可以根据项目需求选择合适的组件进行混合使用。

缺点

  • 相比轻量级的Sharding-JDBC,ShardingSphere的复杂度和学习成本可能稍高。

  • 作为组件存在,需要集成在应用内,意味着作为使用方,必须要集成到代码里,使得开发成本相对较高。

总结

在选择分库分表工具时,需要根据项目的具体需求、技术栈以及团队的技术能力进行综合考虑。每种工具都有其独特的优点和适用场景,选择合适的工具可以大大提升项目的开发效率和系统性能。

http://www.yidumall.com/news/105994.html

相关文章:

  • wordpress3d标签云谷歌seo关键词优化
  • 网站前台与后台建设的先后次序郑州网站建设七彩科技
  • 政府网站建设申论百度快照客服电话
  • 深圳哪家网站建设好南京seo公司教程
  • 适应移动端网站模板信息流广告接单平台
  • 独立站seo外链平台软文关键词排名推广
  • 沧州企业网站建设方案百度快照怎么使用
  • 住房和城乡建设部网站质保金网络推广公司介绍
  • 怎样做网站静态seo难不难学
  • 网站备案半身照国外搜索引擎大全百鸣
  • 徐州 网站建设网站建设及网络推广
  • 荣耀官方网站wordpress建站
  • 网店怎么开店注册百度的关键词优化
  • 韶关住房和城乡建设局网站seo搜索引擎优化哪家好
  • 给个2021站你们懂得不花钱的白酒营销策划方案
  • 服装设计网站有哪些做网站需要什么技术
  • 大丰做网站找哪家好湖南正规关键词优化报价
  • 深圳市专业制作网站公司吗建站系统有哪些
  • 怎样做集装箱网站关键词歌词完整版
  • 网站开发h5技术制作网站的软件叫什么
  • 网站怎么做三个页面营销策划的重要性
  • 自助建网站平台口碑营销经典案例
  • 上海网站建设yuueseo首页优化
  • 网站建设的相关论文女性广告
  • 长春建站最新消息游戏代理免费加盟
  • wordpress国外主题汉化安徽seo优化
  • 做图表用的网站鼓楼网页seo搜索引擎优化
  • node.js做网站好累济南做网站建设的公司
  • 独立站工具怎么做好网络推广销售
  • 网站建设流程和费用推广论坛有哪些