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

海南城乡和住房建设厅网站有下划线的网址是什么网站

海南城乡和住房建设厅网站,有下划线的网址是什么网站,电子商务与网络营销,wordpress 装饰模板首先祝大家新年快乐#xff0c;身体健康#xff0c;万事如意。一般来说一个系统最先出现瓶颈的点很可能是数据库。比如我们的生产系统并发量很高在跑一段时间后#xff0c;数据库中某些表的数据量会越来越大。海量的数据会严重影响数据库的读写性能。这个时候我们会开始优化… 首先祝大家新年快乐身体健康万事如意。一般来说一个系统最先出现瓶颈的点很可能是数据库。比如我们的生产系统并发量很高在跑一段时间后数据库中某些表的数据量会越来越大。海量的数据会严重影响数据库的读写性能。这个时候我们会开始优化系统一般会经过这么几个过程找出SQL慢查询针对该SQL进行优化比如改进SQL的写法查看执行计划对全表扫描的字段建立索引引入缓存把一部分读压力加载到内存中读写分离引入队列把并发的请求使其串行化来减轻系统瞬时压力分表/分库对于第五点优化方案我们来细说一下。分表分库通常有两种拆分维度1.垂直切分垂直切分往往跟业务有强相关关系比如把某个表的某些不常用的字段迁移出去比如订单的明细数据可以独立成一张表需要使用的时候才读取 2.水平切分比如按年份来拆分把数据库按年或者按某些规则按时间段分成多个表。拆分表之后每个表的数据量将会变小带来的好处是不言而喻的。不管是全表扫描还是索引查询都会有比较高的提升。如果把不同的表文件落在多个磁盘上那数据库的IO性能还能进一步提高。如果纯手工拆分比如按年份拆分成多个表那么上层业务代码也得进行调整。每次读写都得判断该使用哪张表。如果是跨多个年份的分页查询更加难搞。人肉分表基本上不可能实现的对于上层编码简直是个噩梦。所以针对分表分库我们通常会使用某些中间件比如MycatSharding-JDBC等中间件。使用这些组件确实能实现分表分库并且对业务层代码屏蔽了数据库架构的改动但是配置略显麻烦。如果你使用的是SQL Server数据库并且目前还不需要分库只需要分表那么其实使用内置的分区表功能是最简单的方案。只需要打开SQL Server Management Studio简单设置几下就可以了对于你上层应用完全是无感的你的代码、数据库连接串都不需要改动。以下我们通过2个简单的测试来简单的演示下如何进行表分区操作以及测试下分区前后性能变化。测试写性能我们的测试方案新建一张logs表按年份写入数据。2019年写入1000000数据2020年也写入100000数据。为了加快写入的速度每个年份并行10个线程同时写每个线程写100000数据一共1000000数据。然后把logs表改成分区表再用同样的方式写入2000000数据。记录耗时 比较两次的耗时。硬件为一台14年产的笔记本OS为win10。挂载2块硬盘1块为5400转的机械硬盘1块为15年加的SSD。磁盘性能可以说极为垃圾。未分区时表文件会落在机械硬盘上。未分区情况下测试使用脚本建表CREATE TABLE [dbo].[logs]([id] [uniqueidentifier] NOT NULL,[log_txt] [varchar](200) NULL,[log_time] [datetime] NULL,CONSTRAINT [PK_logs] PRIMARY KEY CLUSTERED ([id] ASC )WITH (PAD_INDEX OFF, STATISTICS_NORECOMPUTE OFF, IGNORE_DUP_KEY OFF, ALLOW_ROW_LOCKS ON, ALLOW_PAGE_LOCKS ON) ON [PRIMARY] ) 新建一个控制台程序编写代码class Program{static void Main(string[] args){Console.WriteLine(Hello World!);Task.Run(() {InsertData(2019);});Task.Run(() {InsertData(2020);});Console.ReadLine();}static void InsertData(int year){var tasks new ListTask();Stopwatch sw new Stopwatch();sw.Start();for (int i 0; i 10; i){tasks.Add(Task.Run(() {using (var conn new SqlConnection()){conn.ConnectionString Persist Security Info False; User ID sa; Password dev123; Initial Catalog fq_test; Server .\\mssql2016;conn.Open();int index 0;for (int j 0; j 100000; j){var logtime new DateTime(year, new Random().Next(1, 12), new Random().Next(1, 28));conn.Execute(insert into logs2 values (newid(),下订单,logtime), new{logtime});Console.WriteLine(logtime:{0} index {1}, logtime, index);}}}));}Task.WaitAll(tasks.ToArray());sw.Stop();Console.WriteLine(Year {0} complete , total time: {1}., year, sw.ElapsedMilliseconds);}} 写完2000000数据耗时1369454毫秒。分区情况下进行测试开始分区把一个表设置为分区表大概有5个步骤添加文件组在文件组添加文件新建分区函数新建分区方案开始分区以下演示下如何使用SQL SERVER Management Studio管理器进行表分区选中数据库属性文件组添加group1group2两个文件组。选中数据库属性文件。添加file1文件组选group1路径选择一个文件目录。这里选择E盘data目录。添加file2文件组选择group2路径选择一个文件目录。这里选择X盘的data目录。这样当分区的时候数据就会落在这2个目录下。这里的路径可以选择在同一个硬盘但是为了更高的读写性能如果有条件建议直接指定在不同的硬盘下。选中logs表存储创建分区启动分区向导工具。新建一个分区函数点击下一步。新建一个分区方案点击下一步。选择一个分区列数据会根据该列进行水平拆分。这里选择logtime因为时间是比较适合水平切分的一个维度。值得数据拆分的范围。范围选择“右边界”。右边界跟左边界的差异在于对边界值的处理。右边界是左边界是也就是包含边界值。我们这里设置group1存储2019的数据group2存储2020的数据。所以group1的边界值设置为2020-01-01group2的边界值设置为2021-01-01 。设置完是这个样子需要3个文件组。当出现不在group1group2范围内的数据就会存储在第三个文件组内。建好分区函数、分区方案后可以选择生成脚本或者立即执行。这里选择“立即执行”。当执行完成后表里的数据会按照分区方案设置的边界分散到多个文件上。在分区情况下进行测试先清空logs表所有的数据然后使用同样的代码进行测试。测试结果显示写完2000000数据耗时568903毫秒。可以看到数据库写性能大副提高大概提高了1倍不止的性能。这也比较符合两块磁盘同时IO的预期。测试读性能我们的测试方案新建一张log2表使用上面的代码按年份写入2000000数据。然后使用select语句同时读取2019,2020年的数据。把log表转换成分区表重新测试select的时间。比较两次读取数据的时间。sql语句select * from log2 where (logtime  2019-05-01 and logtime  2019-06-01) or (logtime  2020-05-01 and logtime  2020-06-01)首先在未分区的表上测试查询性能花费时间为3s。把表按前面的方法进行分区拆分查询花费时间为1s。读性能大概为未分区时的3倍。总结经过简单的测试SQL Server的分区表功能能大副提高数据库的读写性能。通过SQL Server Management Stduio的简单设置就可以对数据库表进行分区操作并且对应用层的代码完全是无感的比用分表分库中间件来说简单多了。
http://www.yutouwan.com/news/450337/

相关文章:

  • 南宁做网站培训十大不收费看盘软件排名
  • 如何做网站访问量的统计网站建设中的功能模块描述
  • seo建站需求怎么样做国外推广网站
  • 专业门户网站建设wordpress 栏目打不开
  • 个人备案网站可以做淘宝客网站建设外包还是自建
  • 中国电力建设企业协会网站wordpress做微信小程序商店
  • 做神马网站快苏州高新区核酸检测
  • 南京网站工作室做设计去那些网站找素材
  • 网站导航包括WordPress443端口免备案
  • 免费行情网站大全下载ps4gta5网站建设中
  • 城乡建设部网站甘红刚中国建设银行网站登录不了
  • 电商网站分析报告怎么做网站风格化设计方案
  • 网站蜘蛛来访纪录公司名字大全列表
  • 搭建科技网站价格国外 网站有做验证码吗
  • 建立网站就是制作网页做网站公司未来的发展方向
  • ppt免费模板哪个网站好自己接单赚钱app
  • 哪做网站比较便宜门户网站建设好如何维护
  • 大型网站建设翻译英文网站建设文化哪家好
  • 网站空间如何买网站建设的公司如何选
  • 赞叹天河网站建设公司服务器主机管理系统建好后如何用它搭建网站
  • delphi 可做网站吗wordpress固定连接出错
  • 网站建设购物车互联网推广是什么
  • 网站建设应该注意的问题uc下载的视频禁止自动播放
  • Divi WordPress企业建站主题郑州网站建设专业公司
  • 免费自己制作网站网络营销公司做得比较好的
  • 普陀网站建设哪家便宜淄博网站建设公司羊肉片机
  • 建立网站站点的步骤微信开发 微网站开发的详细流程
  • 讯杰网站建设哪一个网站有做实验的过程
  • 建筑给排水代做网站直播开放平台公会
  • 哪些网站可以做网店做彩票网站违法的吗