面试点
面试点比较多少的要求:
Java基础扎实,精通核心类库的使用,熟悉JVM原理,包括内存模型、类加载机制以及相关性能优化
熟练MongoDB、Redis等数据库及分布式缓存
熟悉J2EE设计模式、理解常用的设计模式
深入了解Spring, Spring MVC, myBatis, Spring boot、Elasticsearche架提供的特性及其实现原理
多线程开发以及原理,缓存以及消息队列技术
熟悉Dubbo, Spring Cloud等服务治理框架
熟悉MongoDB 的自动扩展以及常用数据库集群应用和调优经验
了解NIO,AIO,BIO工作原理,了解Tomcat, Netty等等中间件
熟悉Kubernetes/docker者优先
一.Callable与Runnable
二.Future,配合ExecutorService来使用的
三.FutureTask,RunnableFuture继承了Runnable接口和Future接口,而FutureTask实现了RunnableFuture接口。所以它既可以作为Runnable被线程执行,又可以作为Future得到Callable的返回值
Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程)
用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆:
只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作。
mongobd是一个分布式存储的数据库
mongos路由信息