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

网站建设大概多少费用/web设计一个简单网页

网站建设大概多少费用,web设计一个简单网页,望野是什么意思,做网站公司(信科网络)数据库分库分表1、数据库分表的基本介绍1.1 为什么分库分表1.2 数据库 库表的拆分方式2、两种技术模式的基本介绍2.1 分库分表的技术模式2.1 Sharding-JDBC2.2 MyCat3、数据库表结构的自动生成3.1为什么要使用数据表自动生成3.2 Freemarker的基本使用3.3 表结构自动生成步骤1、…

数据库分库分表

    • 1、数据库分表的基本介绍
      • 1.1 为什么分库分表
      • 1.2 数据库 库表的拆分方式
    • 2、两种技术模式的基本介绍
      • 2.1 分库分表的技术模式
      • 2.1 Sharding-JDBC
      • 2.2 MyCat
    • 3、数据库表结构的自动生成
      • 3.1为什么要使用数据表自动生成
      • 3.2 Freemarker的基本使用
      • 3.3 表结构自动生成步骤

1、数据库分表的基本介绍

1.1 为什么分库分表

一般mysql单表存储数据量小于1千万左右的时候,它的读写性能是最好的。
但是当业务发展到一定程度,数据增长到一定程度的时候,我们就会发现为什么查询速度越来越慢了,甚至还会出现数据库挂了等其他一系列问题。
此时我们就需要采取一些方案来解决这些问题,一般如下三种:
1、分库分表
2、读写分离
3、利用NoSql

1.2 数据库 库表的拆分方式

数据库拆分方式有两种:垂直拆分和水平拆分
1)垂直拆分
垂直拆分的核心理念是专库专用。拆分之后,则是按照业务将表进行归类,分布到不同的数据库中,从而将压力分散至不同的数据库。

select * from t_usr
Database
select * from t_order
					              由上到下	
select * from t_usr
Database01
select * from t_order
Database02

2)水平拆分
它不再将数据根据业务逻辑分类,而是通过某个字段(或某几个字段),根据某种规则将数据分散至多个库或表中,每个分片仅包含数据的一部分。

select * from t_usr where id = 1
Database
select * from t_usr where id =2
								  由上到下	
id%2=1
id%2=0
select * from t_usr where id = 1
Database01
select * from t_usr where id = 2
Database02

2、两种技术模式的基本介绍

2.1 分库分表的技术模式

1)中间件Proxy模式(MyCat)
Proxy属于中间层方案,在应用程序和MySQL之间搭建一层Proxy。中间层介于应用程序与数据库间,需要做一次转发,基于JDBC协议转发,例如Mycat
2)Client客户端模式(Sharding-JDBC)
Client模式属于客户端直连方案。此方案的优势在于轻便,对兼容性、性能以及DBA影响小。 例如当当网的sharding-jdbc,阿里的TDDL

2.1 Sharding-JDBC

Sharding-JDBC的基本使用总结

2.2 MyCat

MyCat的基本使用总结

3、数据库表结构的自动生成

3.1为什么要使用数据表自动生成

在实际业务中譬如日志表,我们希望每月的日志表分开,每当下一个月创建一个新的日志表,这样既可以分担数据库压力,又可以进行分类便于查找。
此时我们就需要用到Freemarker模板引擎技术来解决数据库表的自动生成。

3.2 Freemarker的基本使用

Freemarker的基本使用

3.3 表结构自动生成步骤

1)分析建表语句,提炼数据类型

2)使用工具类:GenerateSqlUtils,生成sql文件

3)在src/main/resources/ftl目录下创建模板文件如:sql.ftl

4)改造模板文件
对于变化位置,相应填充变量即可结果如下:

<#list 0..sqlbean.db_count-1 as db_no>
DROP database if exists `chongba_schedule${db_no}`;
CREATE DATABASE `chongba_schedule${db_no}` DEFAULT CHARACTER SET utf8;
USE `chongba_schedule${db_no}`;<#list 0..sqlbean.taskinfo_count-1 as taskinfo_no>
CREATE TABLE `taskinfo_${taskinfo_no}` (
`task_id` bigint(20) NOT NULL    comment '任务id',
`execute_time` datetime(3) NOT NULL comment '执行时间',
`parameters` longblob   comment '参数',
`priority` int(11) NOT NULL      comment '优先级',
`task_type` int(11) NOT NULL     comment '任务类型',
PRIMARY KEY (`task_id`),
KEY `index_taskinfo_time` (`task_type`,`priority`,`execute_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
</#list>
<#list sqlbean.taskinfo_logs_monthList as month>
CREATE TABLE `taskinfo_logs_${month}` (
`task_id` bigint(20) NOT NULL COMMENT '任务id',
`execute_time` datetime(3) COMMENT '执行时间',
`parameters` longblob  COMMENT '参数',
`priority` int(11) NOT NULL COMMENT '优先级',
`task_type` int(11) NOT NULL COMMENT '任务类型',
`version` int(11) NOT NULL COMMENT '版本号,用乐观锁',
`status` int(11) DEFAULT '0' COMMENT '状态 0=初始化状态 1=EXECUTED 2=CANCELLED',
PRIMARY KEY (`task_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
</#list>
</#list>

4)对应yaml配置文件进行修改

http://www.lbrq.cn/news/1060921.html

相关文章:

  • 个人备案网站可以做商城吗/磁力天堂
  • 重庆网站建设的好处/友情链接分析
  • web开发框架有哪些/seo要点
  • 中小企业解决方案/生哥seo博客
  • 书店如何做网站/系统优化软件推荐
  • 旅游景点网站模板/软件开发工程师
  • 怎样用阿里云服务器做网站/无代码免费web开发平台
  • 第三方微信网站建设/百度长尾关键词挖掘
  • asp.net动态网站开发技术/社群营销的十大案例
  • 做网站外包创业/百度客户端电脑版
  • 怎样做网站备份/网店推广有哪些
  • 深圳快速网站制/上海百度竞价托管
  • 深圳宝安做网站的公司/百度推广客户端怎样注册
  • 新产品开发的流程/seo网站优化培训
  • 企业网站建设方案服务/b2b平台免费推广网站
  • 电商网站建设教案/整合营销方案
  • 莆田网站建设电话/谷歌优化培训
  • 购物网站创建/企业网站的功能
  • 南通企业网站怎么建设/武汉百度快照优化排名
  • flask网站开发视频/seo 是什么
  • 盐城网站建设代理商/浙江搜索引擎优化
  • 深喉咙企业网站生成系统/微指数
  • 网站定位广告/河北网站推广公司
  • 沭阳网站建设多少钱/谷歌搜索引擎下载安装
  • 做网站怎么添加背景图片/友情链接查询工具
  • 做网站领券收佣金/嘉兴seo排名外包
  • 网上赚钱游戏/厦门seo厦门起梦
  • wordpress trash/深圳seo云哥
  • 做海淘的网站做海淘的网站有哪些/网站seo快速排名
  • wordpress 服务器配置/seo技术教程网
  • SAP FI模块凭证增强逻辑的策略
  • Modbus tcp 批量写线圈状态
  • 基于SpringBoot的OA办公系统的设计与实现
  • 多租户字典管理系统完整设计
  • 03.一键编译安装Redis脚本
  • 计算机视觉CS231n学习(2)