-
如何在mysql 造1亿条记录的大容量数据表?
背景及目标:现有数据1000w单表,为压力测试准备1亿条数据。步骤:1.将1000w条记录,除id外都导入到多个文件中://DELIMITER DROP PROCEDURE if EXISTS createManyTable; create PROCEDURE createManyTable() BEGIN DECLARE i int; DECLARE fileName VAR...
-
VUE 实现高性能的 PDF 在线预览
最近在实现共享 PDF 文档的需求,存在主讲人这样一个角色,上传 PDF 文档后,通知其它连接中的终端,进行实时同步展示的功能。对于这样的需求,pdf.js 成功的让我想起了它。PDF 文档的预览,总的就是要加载速度快,尽最快的速度完成渲染,呈现给用户看,不要出现长时间的白屏或 Loading 状态的现象,另外 PDF 文档需要支持翻页等操作。具体看看一步步的实现。文档分片下载...
-
Springboot+MybatisPlus高效实现增删改查
Mybatis-Plus基于mybatis做了增强,大大简化了单表CRUD操作,而且Mybatis-Plus是无侵入性的,不会影响现有项目,Mybatis-Plus提供了代码生成器,可以根据数据库表一键生成对应的service、mapper、xml文件,service和mapper提供了丰富的CRUD操作方法,xml文件也是非常简洁。目前最新版本是3.4.1版本。最新版本蛮看一...
-
完美的分布式监控系统——普罗米修斯
DevOps工程师或SRE工程师,可能都知道Prometheus普罗米修斯。Prometheus于2012年由SoundCloud创建,目前已经已发展为最热门的分布式监控系统。Prometheus完全开源的,被很多云厂商(架构)内置,在这些厂商(架构)中,可以简单部署Prometheus,用来监控整个云基础架构设施。比如DigitalOcean或Docker都是普罗米修斯作为基...
-
动态高并发时为什么推荐重入锁而不是Synchronized?
前言碎语Synchronized和 ReentrantLock 大家应该都不陌生了,作为java中最常用的本地锁,最初版本中 ReentrantLock 的性能是远远强于 Synchronized 的,后续java在一次次的版本迭代中 对 Synchronized 进行了大量的优化,直到 jdk1.6 之后,两种锁的性能已经相差无几,甚至 Synchronized 的自动释放锁...
-
自定义ElementUI选择器选项样式的方法
前言最近接了一个需求,基于 ElementUI的选择器,自定义符合需求的样式出来,笔者最终顺利完成了需求,其中踩了不少坑,写本分分享下案例首先展示下本demo的代码结构,以便后续观具体代码,心中数本项目是基于 ElementUI 的 Starter,这个可以开箱即用,里边搭建好 Vue,ElementUI的架子,方便开发者进行后续的开发,不用浪费精力在配置上,具体地址如下:ht...
-
写出好的Join语句,前提你得懂这些
前言最近在读《MySQL性能调优与架构设计》,看到一个关于join的优化原则,如下:大白话解释下:因为驱动结果集越大,意味着需要循环的次数越多,也就是说在被驱动结果集上面所 需要执行的查询检索次数会越多。比如,当两个表(表 A 和 表 B) Join 的时候,如果表 A 通过 WHERE 条件过滤后有 10 条记录,而表 B 有 20 条记录。如果我们选择表 A 作为驱动表,也...
-
Vue学习笔记之路由的keep-alive应用及技巧
keep-alive的应用:作用:keep-alive是Vue内置的一个组件,可以使比包含的组件保留状态,或避免重新渲染,而router-view也是一个组件,如果直接被包在keep-alive里面,所有的路径匹配到的视图组件都会被缓存。生命周期:· 初次进入时:created > mounted > activated;退出后触发 deactivated· 再次进...