偏移量

limit简要分析

Deadly 提交于 2019-11-27 15:44:29
limit简要分析 limit分析: 查询分页,limit [offset] rows ,offset 是偏移量,rows是需要的数据行数,当偏移量较大时,就会发现limit是从头开始查询到offset+rows,然后舍弃前面的行数返回最后的rows行,这样在小量数据是没有太大问题的,但是在百万或者千万级的数据表中进行查询就会非常吃力, 从上面表可以看出,效率极差,即使经过优化,比如加上 “ order by id ”,使用主键索引进行查询优化,经过测试表明,当偏移量较大时也是很慢,所以进来避免在2000000以上的数据表中使用。反向查找的结果是是降序desc的,并且InputDate是记录的插入时间,也可以用主键联合索引,但是不方便。 limit推荐优化1: SELECT * FROM t_limitgate3 WHERE id >=( select id from t_limitgate3 limit 9000000 , 1 ) limit 100 使用该语句对: select * from t_limitgate3 limit 9000000 , 100 进行优化对比 由第九百万行开始一百条 使用优化前 使用优化后 第一次执行 1:00 14.976s 第二次执行 1:00 7.332s 1钟与14秒的差距还是很大的嘛,真的快了很多~~差不多快了4倍, 第二次执行

sizeof()

妖精的绣舞 提交于 2019-11-27 13:50:47
这是初学者问得最多的一个问题,所以这里有必要多费点笔墨。让我们先看一个结构体: struct S1 { char c; int i; }; 问sizeof(s1)等于多少聪明的你开始思考了,char占1个字节,int占4个字节,那么加起来就应该是5。是这样吗你在你机器上试过了吗也许你是对的,但很可能你是错的!VC6中按默认设置得到的结果为8。 Why为什么受伤的总是我 请不要沮丧,我们来好好琢磨一下sizeof的定义——sizeof的结果等于对象或者类型所占的内存字节数,好吧,那就让我们来看看S1的内存分配情况: S1 s1 = { 'a', 0xFFFFFFFF }; 定义上面的变量后,加上断点,运行程序,观察s1所在的内存,你发现了什么 以我的VC6.0为例,s1的地址为0x0012FF78,其数据内容如下: 0012FF78: 61 CC CC CC FF FF FF FF 发现了什么怎么中间夹杂了3个字节的CC看看MSDN上的说明: When applied to a structure type or variable, sizeof returns the actual size, which may include padding bytes inserted for alignment. 原来如此,这就是传说中的字节对齐啊!一个重要的话题出现了。

Redis主从同步

你说的曾经没有我的故事 提交于 2019-11-27 13:33:57
Redis系列深度好文: 深入学习Redis 一. 概念   在主从复制中,数据库分为两类,一类是 主库(master) ,另一类是同步主库数据的 从库(slave) 。   主库可以进行读写操作,当写操作导致数据变化时会自动同步到从库。而从库一般是只读的(特定情况也可以写,通过参数slave-read-only指定),并接受来自主库的数据,   一个主库可拥有多个从库,而一个从库只能有一个主库。 二. 配置方式 2.1 客户端命令   在从服务器上执行 slaveof masterIP masterPort; 2.2 配置文件   在配置文件中配置 slaveof <masterip> <masterport>;除了IP和端口信息外,还可以配置其他主从信息; 三. 旧版复制功能的实现(Redis2.8以前的版本)   slave 向 master 发送 slaveof 命令后,slave先进行同步操作,再进行命令传播;   Redis的复制功能主要分为 同步 (sync)和 命令传播 (command propagate)两个操作;   先通过同步将master和slave的数据库状态达到一致,然后通过命令传播实时的将master的变化同步到slave;   同步:将 slave 的状态更新为和 master 一样的状态;   命令传播:master 被修改时将变化实时的同步到

preadv与pwritev

独自空忆成欢 提交于 2019-11-27 13:23:04
preadv()和pwritev ()   pwritev()系统调用结合了writev()和的功能pwrite ()。它执行与writev()相同的任务,但是添加了第四个参数偏移量,指定输出所在的文件偏移量要进行操作。这些系统调用不会更改文件偏移量。该文件fd所指的必须能够查找。 返回值   成功时,readv()和preadv()返回读取的字节数;   writev()和pwritev()返回写入的字节数。 注意   对于传输更少字节的成功调用,这不是一个错误超过要求。在出现错误时,返回-1,并适当地设置errno。 错误   所给出的错误用于read() 、 write()。此外,preadv()和pwritev()也可能因为与lseek()相同的原因而失败。 此外,定义了以下错误:   iov_len值的和溢出ssize_t值。   向量计数iovcnt小于零或大于允许的最大值。 C库/内核差异   原始preadv()和pwritev()系统调用具有这样的调用签名与相应的GNU C库包装器稍有不同功能简介中所示。最后一个参数offset是由包装器函数解压缩成系统中的两个参数 calls:    无符号长pos   这些参数分别包含低阶偏移量和高阶偏移量32位。 来源: https://www.cnblogs.com/jest549/p/11365518.html

jquery的offset().top与javascript的offsetTop区别?

邮差的信 提交于 2019-11-27 13:17:29
offset().top是jquery的方法,需引入jquery,它获取你绑定元素上边框 相对于html上边界 的 偏移量 offsetTop是原生js的方法,它获取你绑定元素上边框相对于离自己最近且position属性为非static的祖先元素的偏移量 区别一:offset().top与offsetTop偏移量参照对象不同,offset().top始终是html,而offsetTop相对于其祖先position 的 来源: https://www.cnblogs.com/sjzgk/p/11365200.html

Ckpalyer 视频列表循环播放

孤者浪人 提交于 2019-11-27 02:21:14
采用版本为 ckpalyer6.8, 可在网上自行下载,也可直接复制底下 ckpalyer6.8 的 js 代码 1、ckpalyer6.8 js代码 /* ------------------------------------------------------------------------- 说明: 正式使用时可以把该文件的注释全部去掉,节省加载时间 ckplayer6.8,有问题请访问http://www.ckplayer.com 请注意,该文件为UTF-8编码,不需要改变编码即可使用于各种编码形式的网站内 ------------------------------------------------------------------------- 第一部分,加载插件 以下为加载的插件部份 插件的设置参数说明: 1、插件名称 2、水平对齐方式(0左,1中,2右) 3、垂直对齐方式(0上,1中,2下) 4、水平方向位置偏移量 5、垂直方向位置偏移量 6、插件的等级,0=普通图片插件且跟随控制栏隐藏而隐藏,显示而显示,1=普通图片插件且永久显示,2=swf插件,默认显示,3=swf插件,默认隐藏,swf插件都可以交互 7、插件是否绑定在控制栏上,0不绑定,1绑定,当值是1的时候该插件将会随着控制栏一起隐藏或缓动 8、插件为swf并且可交互时,默认调用的类所在的包名称

Java中的魔法类-Unsafe

梦想的初衷 提交于 2019-11-26 23:15:54
Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。 但是,这个类的作者不希望我们使用它,因为我们虽然我们获取到了对底层的控制权,但是也增大了风险,安全性正是Java相对于C++/C的优势。因为该类在 sun.misc 包下,默认是被 BootstrapClassLoader 加载的。如果我们在程序中去调用这个类的话,我们使用的类加载器肯定是 AppClassLoader,问题是在Unsafe中是这样写的: private static final Unsafe theUnsafe; private Unsafe() { } @CallerSensitive public static Unsafe getUnsafe() { Class var0 = Reflection.getCallerClass(); if (!VM.isSystemDomainLoader(var0.getClassLoader())) { throw new SecurityException("Unsafe"); } else { return theUnsafe; } } 将构造函数私有,然后提供了一个静态方法去获取当前类实例。在

深入浅出系列之 -- kafka消费者的三种语义

旧时模样 提交于 2019-11-26 14:17:15
本文主要详解kafka client的使用,包括kafka消费者的三种消费语义at-most-once,at-least-once,和exact-once message,生产者的使用等。 创建主题 bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic normal --partitions 2 --rerelication-factor 1 生产者 private static Producer < String,String > createProducer(){ Properties props = new Properties(); props.put(“bootstrap.servers”,“localhost:9092”); props.put(“acks”,“all”); props.put(“retries”,0); //控制发送者在发布到Kafka之前等待批处理的字节数。 props.put(“batch.size”,10); props.put(“linger.ms”,); props.put(“key.serializer”,“org.apache.kafka.common.serialization.StringSerializer”); props.put(“value