04 2019 档案

摘要:1. solr查询 or and要大写 阅读全文
posted @ 2019-04-03 18:07 song123666 阅读(74) 评论(0) 推荐(0) 编辑
摘要:1, 存储过程 定义是编译一次 快 一次多条sql减少网络负载 重复使用 安全性高 2, 3nf 阅读全文
posted @ 2019-04-03 17:18 song123666 阅读(87) 评论(0) 推荐(0) 编辑
摘要:1, ReentrantReadWriteLock是Lock的另一种实现方式,我们已经知道了ReentrantLock是一个排他锁,同一时间只允许一个线程访问,而ReentrantReadWriteLock允许多个读线程同时访问,但不允许写线程和读线程、写线程和写线程同时访问。相对于排他锁,提高了并 阅读全文
posted @ 2019-04-03 17:16 song123666 阅读(119) 评论(0) 推荐(0) 编辑
摘要:ApplicationContext接口常用实现类***ClassPathXmlApplicationContext: 它是从类的根路径下加载配置文件 推荐使用这种***FileSystemXmlApplicationContext: 它是从磁盘路径上加载配置文件,配置文件可以在磁盘的任意位置。* 阅读全文
posted @ 2019-04-03 17:11 song123666 阅读(61) 评论(0) 推荐(0) 编辑
摘要:1,DispatcherServlet初始化的主要工作就是为了创建Spring容器 阅读全文
posted @ 2019-04-03 17:10 song123666 阅读(66) 评论(0) 推荐(0) 编辑
摘要:如果是一个大型的网站,内部子系统较多、接口非常多的情况下,RPC框架的好处就显示出来了,首先就是长链接,不必每次通信都要像http 一样去3次握手什么的,减少了网络开销;其次就是RPC框架一般都有注册中心,有丰富的监控管理;发布、下线接口、动态扩展等,对调用方来说是无感知、统 一化的操作。第三个来说 阅读全文
posted @ 2019-04-03 17:06 song123666 阅读(99) 评论(0) 推荐(0) 编辑
摘要:1, response.sendRedirect() 重定向 返回后重新生成一个请求 request。getRequestDispatcher.forward 类似于方法调用 同一个请求 直接返回 2, filter取你所想取 拦截器(代理) 拒你所想拒 3, cookie session cook 阅读全文
posted @ 2019-04-03 16:45 song123666 阅读(89) 评论(0) 推荐(0) 编辑
摘要:1,RabbitMq:它比kafka成熟,支持AMQP协议(跨语言)处理,在可靠性上,RabbitMq超过kafka,在性能方面超过ActiveMQ。 数据一致性 完整性好Kafka:Kafka设计的初衷就是处理日志的,不支持AMQP事务处理,可以看做是一个日志系统,针对性很强,所以它并没有具备一个 阅读全文
posted @ 2019-04-03 16:42 song123666 阅读(137) 评论(0) 推荐(0) 编辑
摘要:nginx反向代理 负载均衡 keepalive高可用 lvs负载均衡算法 mvn build自定义命令 install安装到本地仓库 阅读全文
posted @ 2019-04-03 16:34 song123666 阅读(165) 评论(0) 推荐(0) 编辑
摘要:1,信号量是限制访问共享资源的线程数,Semaphore.acquire()获得许可,release释放许可同步集合 Collections.synchronizedList 2, java.util.concurrent.Executors类的4种实现方法线程池可以控制数目 即对线程安全有好处(1 阅读全文
posted @ 2019-04-03 16:32 song123666 阅读(102) 评论(0) 推荐(0) 编辑
摘要:1,HASH函数是这么一种函数,他接受一段数据作为输入,然后生成一串固定长度的数据作为输出 最好保存的就是数据的内存地址 查询快 可能会有冲突 hashmap数组 数组的每一项是链表 来了一个map 根据KEY计算放到哪个位置 为了防止链表过长 hashmap会扩容(16*0.75) 均匀分布 移位 阅读全文
posted @ 2019-04-03 16:25 song123666 阅读(103) 评论(0) 推荐(0) 编辑
摘要:1,面向过程重点在于设计方法,面向对象讲方法和数据合在一起构造成对象,即对象包括方法和数据 2,相同类型的变量 / 调用 同一个方法时呈现出多种不同的行为特征, 这就是多态. 父类引用指向子类对象 3,代理 方法增强 继承对类增强 阅读全文
posted @ 2019-04-03 16:23 song123666 阅读(83) 评论(0) 推荐(0) 编辑
摘要:冒泡算法,每次比较如果发现较小的元素在后面,就交换两个相邻的元素。而选择排序算法的改进在于:先并不急于调换位置,先从A[1]开始逐个检查,看哪个数最小就记下该数所在的位置P,等一躺扫描完毕,再把A[P]和A[1]对调,这时A[1]到A[10]中最小的数据就换到了最前面的位置。所以,选择排序每扫描一遍 阅读全文
posted @ 2019-04-03 16:20 song123666 阅读(90) 评论(0) 推荐(0) 编辑
摘要:1, SSH是一种网络协议,用于计算机之间的加密登录。a,输入口令b,公钥登录:登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。 2, linux目录 etc配置文 阅读全文
posted @ 2019-04-03 16:19 song123666 阅读(83) 评论(0) 推荐(0) 编辑
摘要:1, 乐观锁的特点先进行业务操作,不到万不得已不去拿锁。即“乐观”的认为拿锁多半是会成功的,因此在进行完业务操作需要实际更新数据的最后一步再去拿一下锁就好。乐观锁在数据库上的实现完全是逻辑的,不需要数据库提供特殊的支持。一般的做法是在需要锁的数据上增加一个版本号,或者时间戳 悲观锁 对数据库加锁 s 阅读全文
posted @ 2019-04-03 16:17 song123666 阅读(126) 评论(0) 推荐(0) 编辑
摘要:1,分布式按照业务来拆分,方便迭代开发 和集群一样有多台计算机 小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关系是集群。为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分 阅读全文
posted @ 2019-04-03 16:14 song123666 阅读(166) 评论(0) 推荐(0) 编辑
摘要:1, redis单线程为什么快 io多路复用技术 单线程避免多线程的频繁切换问题 memcache缺点 kv形式数据 没有持久化mongodb 海量数据的访问效率 mr的计算模型文档就是类似json的键值对形式的数据写操作MongoDB比传统数据库快的根本原因是Mongo使用的内存映射技术 - 写入 阅读全文
posted @ 2019-04-03 16:10 song123666 阅读(471) 评论(0) 推荐(0) 编辑
摘要:1, io:阻塞,非阻塞:进程/线程要访问的数据是否就绪,进程/线程是否需要等待;同步,异步:访问数据的方式,同步需要主动读写数据,在读写数据的过程中还是会阻塞;异步只需要I/O操作完成的通知,并不主动读写数据,由操作系统内核完成数据的读写。同步是指线程不断轮询 IO 事件是否就绪,非阻塞是指线程在 阅读全文
posted @ 2019-04-03 16:07 song123666 阅读(139) 评论(0) 推荐(0) 编辑
摘要:1,StringBuffer修改缓冲区的方法是同步的 单任务使用StringBuilder更有效 2,replace和replaceAll方法区别 3,spilt方法 a,b,c,,, 后面,号也起作用 需要传递参数-1 4,ThreadLocal 给每个线程创建自己的副本 互不影响 5,switc 阅读全文
posted @ 2019-04-03 15:34 song123666 阅读(244) 评论(0) 推荐(0) 编辑
摘要:1,全文检索算法(倒排索引算法): 将文件中的内容提取出来, 将文字拆封成一个一个的词(分词), 将这些词组成索引(字典中的目录), 搜索的时候先搜索索引,通过索引找文档,这个过程就叫做全文检索. 分词: 去掉停用词(a, an, the ,的, 地, 得, 啊, 嗯 ,呵呵),因为搜索的时候搜索这 阅读全文
posted @ 2019-04-03 15:31 song123666 阅读(101) 评论(0) 推荐(0) 编辑
摘要:1, mybatis逆向工程 生成 pojo 单表的mapper接口和xml example添加条件 sqlsession connectmapper相当于jdbc的语句statement 通用mapper 单表的增删改查 没有mapper.xml文件了 mapper接口需要 继承mapper<po 阅读全文
posted @ 2019-04-03 15:30 song123666 阅读(94) 评论(0) 推荐(0) 编辑
摘要:1,volatile修饰的变量(共享变量,非线程安全),在工作内存发生了变化后,必须要马上写到主内存中,而线程读取到volatile修饰的变量时,必须去主内存中去获取最新的值,而不是读工作内存中主内存的副本,这就有效的保证了线程之间变量的可见性适用条件:对变量的写操作不依赖当前值内存模型:线程的工作 阅读全文
posted @ 2019-04-03 15:24 song123666 阅读(164) 评论(0) 推荐(0) 编辑
摘要:面相对象6大原则 1 单一职责只有一个原因引起类的变化接口尽量单一 实现类单一可能累的数量增多 反而不易维护 增加耦合 2 里式替换 LSP能用父类的的地方就能用子类,不引起任何错误即子类需要重写所有的父类方法增加子类 不影响原来的运行 参数是父类类型 3 依赖倒置原则依赖接口 不依赖类 降低与具体 阅读全文
posted @ 2019-04-03 15:19 song123666 阅读(155) 评论(0) 推荐(0) 编辑
摘要:1,springmvc 组件扫描component-scan @controller 意味着这些对象给spring容器管理了 @service也会被扫描 映射器 @requestMapping 适配器也是扫描 @requestMapping 注解驱动包含映射器和适配器 springmvc基于方法开发 阅读全文
posted @ 2019-04-03 15:16 song123666 阅读(72) 评论(0) 推荐(0) 编辑
摘要:1, Spring的Java配置方式是通过 @Configuration 和 @Bean 这两个注解实现的:对付java繁多的配置文件,底下的开发效率,复杂的部署流程,第三方集成难采用习惯优于配置的理念,如springboot的redis配置 2,自动配置的原理 启动后SpringApplicati 阅读全文
posted @ 2019-04-03 15:10 song123666 阅读(107) 评论(0) 推荐(0) 编辑
摘要:1, 网络有5层7层架构之说,以五层为例 一般来说,物理层和数据链路层是由计算机硬件(如网卡mac)实现的,网络层ip和传输层tcp/udp socket由操作系统软件实现,而应用层http由应用程序或用户创建实现。 ping主机通不通 telnet端口是否开放 2, OSI的7层从上到下分别是 7 阅读全文
posted @ 2019-04-03 15:00 song123666 阅读(148) 评论(0) 推荐(0) 编辑
摘要:1,单机版 先安装gcc yum install gcc-c++ 然后解压源码包,执行编译命令make(C语言写的,需要gcc环境),最后安装Redis,需要通过PREFIX指定安装路径make install PREFIX=/usr/local/redis 2, 集群版环境 使用管理工具redis 阅读全文
posted @ 2019-04-03 14:05 song123666 阅读(405) 评论(0) 推荐(0) 编辑
摘要:1, 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务 l 原子性:构成事务的的所有操作必须是一个逻辑单元,要么全部执行,要么全部不执行。 l 稳定性(一致性):数据库在事务执行前后状态都必须是稳定的。 l 隔离性:事务之间不会相互影响。 l 可靠性(持久性):事务执行成 阅读全文
posted @ 2019-04-03 12:56 song123666 阅读(786) 评论(0) 推荐(0) 编辑
摘要:1, 红黑树 同一层级的黑树到根结点经历的黑树数目一样 最坏情况的时间复杂度 lg n 是二叉树b树 结点可以有多个孩子 b+树 父节点不存储数据聚集索引)的叶子节点会存储数据行,也就是说数据和索引是在一起 非聚集索引存储的是数据行的指针 2,InnoDB存储引擎支持两种常见的索引。一种是B+树,一 阅读全文
posted @ 2019-04-03 12:03 song123666 阅读(1406) 评论(0) 推荐(0) 编辑