Java面试题收集(二)
四.Redis简介

redis为什么这么快


4.1 Redis数据类型

String

hash 字典,适用于存储对象

list 安照String元素插入顺序排序,最新插入的最先显示。如热点数据

set String元素组成的无序集合,不允许重复。如微博共同关注等功能

zset 从小到大的排序,分数一样先插入的在前面,不可重复

4.2 海量数据模糊查询 keys太慢,需要用scan
keys k1* 找出含有k1*的key 太慢


4.3 如何通过Redis实现分布式锁

多线程



expire locknx 生存时间

2.6版本开始可以保证原子性 将setnx 和expire结合起来
命令 set key value ex 10 nx



4.4 使用Redis做异步队列


blpop 等待生产者生产再消费

发布订阅模式

subscribe topic publish topic 消息


4.5 持久化 RDB(做快照) AOF(保存写状态)
查看redis.conf
持久化时间策略:900秒内 有1条写入就触发产生一次快照(备份)


235行 yes 当备份进程出错了,主进程停止接受新的写入操作,为了保护持久化
241 是否rdb压缩 建议设置为no 提升性能

快照文件:dump.rdb
bgsave非阻塞

只要数据发生变化,就写aof文件




Redis4.0 之后 RDB全量+AOF增量
五.Linux

5.1 查找特定的文件 find
find / -name 文件名 精确查找文件
find ~ -name "target*" 模糊查找target打头的文件
fibd ~ -iname "target*" 忽略大小写
man find 更多参考

5.2 检索文件内容 grep
grep 文本内容 文件名

5.3 管道操作符 |
find ~ |grep "target"
grep 查找的内容 查找的文件名
进一步筛选 grep -o

ps -ef | grep tomcat
5.4 对文件内容做统计 awk


获取第一列和第四列
awk '{print $1,$4}' netstat.txt


把表头打出来 NR

删选第二列 -F 逗号分隔

统计不同engine文件数量


六.Java知识考点
6.1 谈谈你对Java的理解

6.2 Java的平台无关性

6.3 JVM如何加载.class文件

Java面试题收集(二)的更多相关文章
- 经典Java面试题收集(二)
经典的Java面试题(第二部分),这部分主要是与Java Web和Web Service相关的面试题. 96.阐述Servlet和CGI的区别? 答:Servlet与CGI的区别在于Servlet处于 ...
- 经典Java面试题收集
1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些 ...
- java面试题(二)
21.描述一下JVM加载class文件的原理机制? 答:JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时 ...
- Java面试题收集以及参考答案(100道)
不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题. 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Cl ...
- java面试题实战二
1.spring 是如何创建bean的? 在IoC容器中,bean的获取主要通过BeanFactory和ApplicationContext获取,这里ApplicationContext实际上是继承自 ...
- Java面试题 corejava(二)
65.JAVA 语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try 块中可以抛出异常吗?[基础] 答:Java 通过面向对象的方法进行 ...
- java面试题收集
http://www.cnblogs.com/yhason/archive/2012/06/07/2540743.html 2,java常见面试题 http://www.cnblogs.com/yha ...
- Java面试题整理二
一.io有几种流? 有两种流:字节流和字符流. 字节流继承自inputstream和outstream. 字符流继承自write和read. 二.Jdbc的开发流程? JDBC编程的六个步骤: 1)加 ...
- java笔试题(二)
1.写出一维数组初始化的两种方式 int[] arr={1,2,3}; String[] str=new String[2]; str[1]="23"; 2.写出二维数组初始化的两 ...
随机推荐
- .Net高并发解决思路
转自: 本文如有不对之处,欢迎各位拍砖扶正.另源码在文章最下面,大家下载过后先还原一下nuget包,需要改一下redis的配置,rabbitmq的配置以及Ef的连接字符串.另外使用的是CodeFirs ...
- 分布式的几件小事(二)dubbo的工作原理
1.dubbo的工作原理 ①整体设计 图例说明: 图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的接口. 图中从下至上分为十层,各层均为单 ...
- mysql复习(2)
一.数据定义: SQL数据的定义包括模式的定义.表定义.视图定义和索引的定义. 1.基本的模式定义情况如下表. 2.一个关系数据库管理系统的实例中可以创建多个数据库,一个数据库中可以建立多个模式,一个 ...
- Caffe之prototxt
1.可视化工具: http://ethereon.github.io/netscope/quickstart.html 2.常用网络模型caffe-model之.prototxt: https://g ...
- ELF文件格式理解
ELF(Executable and Linking Format)是一种对象文件的格式,用于定义不同类型的对象文件(Object files)中都放了什么东西.以及都以什么样的格式去放这些东西.它自 ...
- TypeScript如何添加自定义d.ts文件(转)
方法一:https://dingyuliang.me/angular-6-typescript-2-9-typings-d-ts-cant-find-names/ 方法二:https://www.be ...
- 仿造email后缀自动添加功能(1)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- pg数据库data文件夹达到32G
最近工作中遇到pg数据库data文件夹大小达到32G,大致的排查流程如下: 1.首先查看是哪个文件或者那些文件比较大: 2.根据文件的名称找到对应的数据表a: 3.确认数据表a中数据实际上只有3000 ...
- python、第五篇:数据备份、pymysql模块
一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...
- tensorflow源码分析
前言: 一般来说,如果安装tensorflow主要目的是为了调试些小程序的话,只要下载相应的包,然后,直接使用pip install tensorflow即可. 但有时我们需要将Tensorflow的 ...