摘要:
redis简介 redis是一个性能非常优秀的内存数据库,通过key value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set 有序集合)和hashs(哈希类型)。这些数据类型都支持 阅读全文
摘要:
系统开发到一定的阶段,线上的机器越来越多,就需要一些监控了,除了服务器的监控,业务方面也需要一些监控服务。Metrics作为一款监控指标的度量类库,提供了许多工具帮助开发者来完成自定义的监控工作。 举个例子,一个图片压缩服务: 每秒钟的请求数是多少(TPS)? 平均每个请求处理的时间? 请求处理的最 阅读全文
摘要:
背景 在互联网教育行业,做内容相关的项目经常碰到的一个问题就是如何解析word文档。 因为系统如果无法智能的解析word,那么就只能通过其他方式手动录入word内容,效率低下,而且人工成本和录入出错率都较高。 疑难点 word解析可以预见的困难主要有以下几个方面: word 结构问题 —— word 阅读全文
摘要:
1、编译机制 分析和输入到符号表: 词法分析:将代码转化为token序列 语法分析:由token序列生成抽象语法树 输入到符号表:将类中出现的符号输入到类的符号表 注解处理: 处理用户自定义注解,之后继续第一步 根据符号表进行语义分析并生成class文件,并进行相关优化 虚拟机数据类型、字节码文件格 阅读全文
摘要:
最近安装了API文档工具swagger,因为Github上已有详细安装教程,且安装过程中没有碰到大的阻碍,所以此文仅对这次安装做一份大致记录 相关网站 Swagger 官方地址: http://swagger.wordnik.com Github安装详解【springmvc集成swagger】: h 阅读全文
摘要:
init进程 init进程是非内核进程中第一个被启动运行的,因此它的进程编号PID的值总是1。init读它的配置文件/etc/inittab,决定需要启动的运行级别(Runlevel)。从根本上说,运行级别规定了整个系统的行为,每个级别(分别由0到6的整数表示)满足特定的目的。如果定义了initde 阅读全文
摘要:
常见排序之间的关系: 1、直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n 1)[n =2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 也是排好顺序的。如此反复循环,直到全部排好顺序。 (2)实例 (3)用java实现 7、归并排序 (1)基本排序:归并 阅读全文
摘要:
前言 通常,对于一个给定的算法,我们要做两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二就是分析算法的时间复杂度。算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,在很大程度上能很好反映出 阅读全文
摘要:
通常情况下,MyBatis 的增删改查操作需要自己在相应xml中写相关语句, 但是运用相关工具,其实可以很方便的自动生成单表的所有增删改查(通用的多表联合查询还是需要自己写)。 也可以根据具体环境,设计相关模板,自动生成符合要求的controller和service。 使用教程 : "http:// 阅读全文
摘要:
公司之前有个用Lucene实现的伪分布式项目,实时性很差,后期数据量逐渐增大的时候,数据同步一次需要十几小时。当时项目重构考虑到的是Solr和ES,我参与的是Solr技术的预研。因为项目实时性要求很高,最终选择的是ES。 Elasticsearch 简介 Elasticsearch是一个实时的分布式 阅读全文