Baa

怎么压缩PDF文件?迅捷PDF转换器带来压缩新技巧!

回眸只為那壹抹淺笑 提交于 2020-08-12 07:30:54
怎么压缩PDF文件?在通过社交软件分享PDF文件的时候,小编发现PDF文件越大,发送越困难,发送和接收的双方都需要耗费很多时间和流量,甚至在很多软件上,都不支持超大文件的分享。 面对这种情况,小编教大家只需要将PDF文件进行压缩就可以了。在浏览器搜索迅捷PDF转换器,进入官网下载安装,安装完成之后打开软件,就可以进行操作了。 打开软件,在页面的上方选择PDF操作,在左侧的PDF的其他操作栏目中选择PDF压缩,然后通过上方的添加文件将需要提取的PDF文档导入,也可以通过拖拽的方式将文档直接导入进来。 导入完成后,在页码选择下点击默认的全部,就会弹出勾选压缩页码的窗口,在窗口选择需要压缩的PDF页码,也可以通过全选、反选、手动输入页码等操作进行快速选择,选择完成后点击确定。 选择好需要压缩的页码之后,在页面下方选择压缩等级和输出目录。压缩等级包括常规压缩和高级压缩,利用后面的长条可以手动调节压缩的清晰度。点击输出目录栏目中的浏览,选择转换成图片后的文档需要保存的位置。 完成上述步骤后,点击右下角的开始转换,就可以开始进行PDF压缩了,等到PDF文档的状态条升到100%,PDF文档就压缩完成了。 以上就是PDF文件压缩的操作步骤,迅捷PDF转换器并不是只有压缩功能,软件中还有各种文档的分割、加密、文字语音的转换等多种功能,感兴趣的小伙伴赶紧去下载尝试吧。 来源: oschina 链接:

JAVA内存模型

好久不见. 提交于 2020-08-12 04:58:45
JAVA内存模型 线程角度 程序计数器(Program Counter Register) 当前程序所执行的字节码行号指示器(逻辑) 改变计数器的值来选取下一条需要执行的字节码指令 和线程是一对一的关系即“线程私有”,一个明确的时间点,处理器只会执行一个线程的代码,就需要其他线程存储自己的程序计数器,以便处理器在切换线程的时候,可以继续执行上次未执行完的逻辑。 对java方法计数,如果正在执行的方法是native方法则计数器值为undefined 因为只是记录行号,程序计数器不必担心内存泄漏的问题 JAVA虚拟机栈(Stack) JAVA方法执行的内存模型 包含多个栈帧 局部变量表和操作数栈 局部变量表:包含方法执行过程中的所有变量 操作数栈:入栈、出栈、复制、交换、产生消费变量。栈模型,先进后出,当方法中调用其他方法,那么也是后调用的方法先执行完,才会执行外层的方法,这就符合了栈模型。 递归为什么会引发java.lang.StackOverflowError异常? 虚拟机栈过多会引发java.lang.OutOfMemoryError异常 本地方法栈 与虚拟机相似,主要作用于标准了native的方法。 元空间(MetaSpace)与永久代(PermGen)的区别 元空间直接使用本地内存,而永久代使用JVM内存。好处:本地内存剩余多少,元空间就有多大,元空间的数据不再占用JVM内存

数据库范式:三大范式、BC范式和反范式化

限于喜欢 提交于 2020-08-11 20:52:36
一、什么是数据库范式 无规矩不成方圆,同理范式是数据表设计的一些约束和规范。为了让各个属性间的关系更加合理,减少数据冗余。 一般来说,主要满足 3NF 就可以了,因为范式过高,虽然对数据关系有更好的约束,可也会导致数据表的增加,从而让数据库 IO 更加繁忙,冗余度更低。当然,凡事没绝对,有时为了提高某些查询性能,需要反规范化。 二、三大范式和 BC 范式 一般来说,数据表设计主要遵循三大范式:1NF(第一范式)、2NF(第二范式)和 3NF(第三范式)。越高的范式必须要符合比它低的范式要求,比如 2NF 除了要满足自身的要求,还须满足 1NF 的要求。 1NF(第一范式):是范式中最基本的范式,为了避免重复性,要求每个列的值域由原子值组成和每个字段的值都只能是单一值。 2NF(第二范式):要求表数据和表键(主键和候选键)有完全依赖关系。每个非键属性必须独立于任一候选键的一部分属性。 3NF(第三范式):要求非主属性之间应该是独立无关联,只和候选键有关联。不允许非主属性被另一个非主属性决定,但允许主属性被非主属性决定。 BCNF(BC 范式,Boyce-Codd normal from):是基于 3NF 的改进范式。与 3NF 主要区别在于任何属性都不能被非主流属性所决定。 三、反范式化 有时为了提高性能和读取效率,允许少量的数据冗余。也就是要反范式化,用空间换时间。

大数据

和自甴很熟 提交于 2020-08-10 05:41:01
Yarn 主要内容 Yarn 是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的 操作系统平台 ,而 MapReduce 等运算程序则相当于运行于 操作系统之上的应用程序 。 ① Yarn的基本结构 Resource Manager : 整个节点的老大 Node Manager : 单个节点的老大 Application Master : 节点上单个job的老大 Container: 一个容器,job运行需要的资源都封装在容器中 ② Yarn工作机制 / job提交过程 具体流程: 1 将MR程序提交到客户端所在的节点,客户端向RM申请一个application; 2 RM将应用程序的资源路径返还给客户端; 3 客户端将程序运行所需资源提交到HDFS上; 4 客户端将 程序资源提交完毕后,向RM申请运行 mrAppMaster ; 5 RM 将用户的请求初始化成一个 Task 任务,并将任务放到任务队列中; 6 其中一个NodeManager去任务队列领取Task任务; 7 领取完任务后,该 NodeManager 创建容器 Container ,并产生 MRAppmaster ; 8 Container 从 HDFS 上拷贝资源到本地; 9 MRAppmaster 向 RM 申请运行 MapTask 容器; 10 RM将运行MapTask任务并分配给另外两

LBS-查找附近的人-redis命令实现

自古美人都是妖i 提交于 2020-08-09 05:49:08
https://www.jianshu.com/p/a7977f2d8e6f https://www.jianshu.com/p/81bf3baa64e5 在redis的3.2版本开始支持geo的功能,这个功能可以将用户给定的地理位置信息储存起来, 并对这些信息进行操作。 本文环境 MACOS10.13.4+8G内存+2.6GHz+redis4.0.2 命令 redis的geo命令一共是6个,redis-geo在没有被集成到redis中只是一个附属模块的时候有更多的命令,在集成到redis中后被精简到了6个。我们先通过redis的命令熟悉这六条命令,然后再通过spring-data-redis集成到项目中,实现我们要做的查找附近的人。 注意:上一篇讲的mysql版本的Point(纬度,经度),纬度再前,经度在后。而在redis中是经度在前,维度在后。 中文显示乱码解决方案: ./redis-cli -a redis-pass --raw ,就是在命令后加 --raw , 加了 --raw 之后放回结果就没有格式化了,看起来比较不友好。项目中最好不要使用中文, 避免出现一些莫名其妙的问题。 GEOADD GEOADD key longitude latitude member [longitude latitude member ...] 添加一个或多个地理空间位置到sorted

MongoDB介绍与安装(Windows版)

坚强是说给别人听的谎言 提交于 2020-08-09 05:30:27
1. MongoDB介绍 MongoDb是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB指在为web应用提供可扩展的高性能数据存储解决方案。 MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成。 MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。 2. MongoDB的优势 易扩展: NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。 大数据量、高性能: NoSQL数据库都具有非常高的读写性能,尤其是在大数据量下,同样表现优秀。这得益于它的无关系型,数据库的结构简单。 灵活的数据模型: NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。 而在关系数据库里,增删字段是一件非常麻烦的事情。 如果是非常大数据量的表,增加字段简直就是一个噩梦。 3. MongoDB的安装 两种方式: 一个是通过软件安装(msi),一个是直接解压(zip),我这里采用解压的方式 3.1 下载 mongodb官网: https://www.mongodb.com/ 访问该链接,直接下载3.6.18版本 https://www.mongodb.com/dr/fastdl.mongodb

SkyWalking 将方法加入追踪链路(@Trace)

ぐ巨炮叔叔 提交于 2020-08-08 14:35:12
版本:7.0.0 描述 可能存在这样的场景,当前应用中某些方法没有被追踪。但是我们又想看这一部分方法的调用情况。这个时候就可以使用指定方法的追踪来实现。不过这种方式的缺点是对代码有侵入。 Maven 依赖 <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm-toolkit-trace</artifactId> <version>${skywalking.version}</version> </dependency> 使用方式 在项目中加入Maven依赖之后,就可以使用 @Trace 来追踪相关方法了。 @Trace private List<User> trace(){ return userManager.getUsers(); } 验证 场景1:不加入 @Trace @Override public List<User> getUsers() { List<User> users = this.trace(); return users; } private List<User> trace(){ return userManager.getUsers(); } 追踪情况: 场景2:加入 @Trace @Override public List<User> getUsers() {

迅捷PDF转换器收费吗?没想到这么好用!

耗尽温柔 提交于 2020-08-08 04:18:59
经常接触pdf文件的小伙伴一定都有涉及到格式转换或者是添加水印什么的吧?众所周知,对于Windows系统来说,pdf文件是一种不可修改的文件,所以很多朋友编辑pdf的方式,都是先将它转换成另外的格式,转换成Windows系统可以编辑的格式,例如将pdf转换成word、转换成Excel、转换成TXT,或者是直接转换成一张图片,而这个时候,你就需要使用到pdf的格式转换器了。 说到pdf的格式转换器,网上倒是有挺多的,不过真正实用的,功能强大的却并不是很多,如果大家日常办公中也需要经常涉及到pdf格式转换一类的操作的话,小编倒是有一款不错的推荐,小编的电脑中安装的迅捷PDF转换器,就是一款处理PDF文件不错的工具。 对于迅捷PDF转换器,大家可以自行上网搜索下载,双击打开软件之后,你就可以看到如下图中所示的界面了。 先看看界面上方,这 六 个选项就是迅捷PDF转换器包含的六大特色功能了,点击不同的选项,左侧的栏目也会发生相应的变化。例如点击“PDF转换”,左侧出现的就是转换的功能,点击“PDF操作”,左侧出现的就是编辑pdf的相关功能。 看过了迅捷PDF转换器的强大之后,相信很多朋友就会问了,这款软件的功能那么强大,那么它是否是免费的呢? 严格来说,这款软件并不是完全免费的,不过它也提供了一些免费的功能,例如当你想用pdf转换word的时候,如果页面小于5页的话,就是完全免费的

Redis 的命令详解

断了今生、忘了曾经 提交于 2020-08-08 04:06:36
相关文章 Redis 的命令详解 - Key 篇 Redis 的命令详解 - String 篇 Redis 的命令详解 - Hash 篇 Redis 的命令详解 - List 篇 Redis 的命令详解 - SET 篇 欢迎纠错(不管是错字还是内容写的有问题)!!! Sorted Set 命令详解 跟 SET 相关的命令一共有 25 种,这里只介绍常用的,其他请参考 官网 ZADD : 添加成员 起始版本 : 1.2.0 时间复杂度 : O(log(N)),其中N是有序集合中的元素数。 向有序集合(sorted set)中,添加 分数/成员(score/member)对,可以同时指定多个分数/成员(score/member)对。 分数值是一个带符号带双精度浮点型数字字符串。 如果指定的成员已经在有序集合中,则会更新改成员的分数(scrore)并更新到正确的排序位置。 如果key不存在,将会创建一个新的有序集合(sorted set)并将分数/成员(score/member)对添加到有序集合。 历史 redis 版本 >= 2.4 时, ZADD 命令接受多个成员。 在Redis 2.4以前, ZADD 命令只能添加或者更新一个成员。 语法 ZADD key [NX|XX] [CH] [INCR] score1 member1 [score2 member2 ...] score

SWF怎么转换成MP4格式?分享一个简单的SWF转MP4的方法

本小妞迷上赌 提交于 2020-08-05 21:28:32
SWF怎么转换成MP4格式?很多小伙伴对swf文件可能不太熟悉,它是一种基于矢量的Flash动画文件的格式。SWF格式文件包含丰富的视频、声音、图形和动画,一般可用于FLASH软件创作并生成。由于我们在网上看到的很多动画视频大多是SWF格式,在下载后往往需要转换为常用的mp4格式,才能进行其他更便捷的操作。下面小编给大家分享一种简单的转换方法,就是使用它可以快速地将SWF转换成MP4格式,一起看看吧! 第一步:下载安装好需要用的迅捷视频转换器,选择“视频转换”功能。将电脑中下载安装好的软件打开,在进入该软件首页,点击“视频转换”,功能。 第二步:导入文件 进入视频转换的功能后,接下来就是添加SWF格式的文件了。点击添加文件一类的按钮,或是将要转换文件拖拽到指定的位置。 第三步:选择格式和保存位置 添加视频文件后,将输出格式调整为mp4格式,点击“视频”,选择MP4,如果对分辨率有要求的话,可以选择一下。最后,对输出格式和输出目录进行自定义设置,点击右下角的“全部转换”。 第四步:视频格式转换完成 在文件的右侧会显示转换的进度,当进度条达到100%时,那么转换就完成了,可以直接点击“打开”。 OK,上面的教程可以快速让大家学会把swf怎么转换成mp4格式哦,希望对大家有帮助!如果小伙伴有此类文件转换的需求,可以学习一下,或者有需要使用迅捷视频转换器,就上迅捷官网下载吧! 来源: