Java
文章平均质量分 76
大唐荣华
爱技术,爱生活
展开
-
阿里P9白慕,阿里云原生开发技术分享
时间2020/09/19 下午 籍海楼四楼:快速入职白慕:阿里云原生开发技术负责人,原中间件项目java研发主管阿里的业务开发在阿里业务开发幸福的:代理 中间件实现分库分表java sdk 客户端阿里体系介绍:淘系、阿里云、蚂蚁原共享业务事业部 ==> 中台 ==> 业务中台、中间件、数据中台公司内部没有中台口号,为了营销中台优势:提升稳定性云原生云原生:开源、开放、标准化、弹性 (serverless用户屏蔽底层细节)基础设施、基础网络原创 2021-09-25 21:18:34 · 798 阅读 · 0 评论 -
21年3月-北京-内推京东iot团队面试题
个人介绍相关自我介绍+项目详细介绍(估计就是看你项目的真实情况,问的业务细节比较多)java基础+底层java多态(重载重写区别)spring boot的优缺点syncronized实现原理lock实现原理volitile实现原理网络编程相关跳表结构concurrentHashMap相关垃圾回收器有哪些,原理优缺点数据库线程池原理,经常用哪些线程池,为什么mysql做过哪些优化, 为什么mysql索引都用过哪几种,用索引排查思路分原创 2021-03-22 19:17:26 · 2669 阅读 · 0 评论 -
BIGO 面试题(已offer)
一面1.泛型 泛型方法 上限、下限2.java8特性 我答的stream和lambda 代码什么地方用了lambda,怎么用的3.jvm内存模型 各个部分存储的内容4.垃圾回收算法 标记-复制算法用到了堆的哪一部分5.spring mvc处理请求的流程6.mybatis #{} ${}的区别,举一个SQL注入的例子7.什么时候用ThreadLocal,使用ThreadLocal注意事项8.数据库连接池用的什么 - ThreadLocal9.什么是cookie,什么场景下使用,怎么删除coo原创 2021-03-15 15:59:31 · 1262 阅读 · 1 评论 -
小白在 mysql 安装路上的9大坑
为什么这么多原因导致失败?楼主上学学习时用的是5,目前都已经8了!进来家妻要学习一些数据分析的知识,我就梳理写了这篇文章来填一下她(小白)在安装路上会出现的问题。客观原因:Mysql从5—>8,中间还被Oracle收购。由于软件版本升级,界面不同,自定义安装步骤也不一样,客户端链接方式不同。主要原因:个人电脑基础认知薄弱,或者不熟悉,不细心。主要可能就是之前安装失败过,文件始终残留;按照教程操作,步骤露细节,反而衍生更多报错,进而影响心情崩溃。坑1.安装时输入密码那一环节卡住原因:之原创 2021-01-26 10:29:05 · 1736 阅读 · 3 评论 -
谈谈分布式事务相关的一致性与 实战解决方案
一、分布式的一致性理论最早加州大学伯克利分校 Eric Brewer教授提出一个分布式系统特性的CAP理论。1.CAP 理论的不可能三角一致性(Consistency)可用性(Availability)分区容错性(Partition tolerance)在分布式系统中,是不存在同时满足一致性 Consistency、可用性 Availability和分区容错性 Partition Tolerance三者的。一句话总结:一致性、可用性和分区容错在分布式事务中不可兼得。在绝大多数的场景,原创 2020-11-25 19:06:18 · 417 阅读 · 0 评论 -
Dubbo 用到哪些设计模式?
Dubbo 框架在初始化和通信过程中使用了多种设计模式,可灵活控制类加载、权限控制等功能。主要采用的设计模式有工厂模式、装饰器模式、观察者模式、动态代理模式。工厂模式Provider 在 export 服务时,会调用 ServiceConfig 的 export 方法。ServiceConfig 中有个字段:private static final Protocol protocol =ExtensionLoader.getExtensionLoader(Protocol.class).getAd原创 2020-11-25 18:50:39 · 882 阅读 · 0 评论 -
2020年10月-上海-彩贝壳-面试题汇总
彩贝壳,核心团队来自支付宝、腾讯、美团点评和普华永道,优质平台,有很大成长空间。Thread run 和 start方法有什么区别你觉得你在自己的项目,你还可以做哪些优化如果你的业务线越来越多了,你觉得你的代码会有什么问题?如何排查问题,如果用户a和用户b同时使用一个功能,用户b出错了,用户a正常,你从哪些方面排查?有没有印象深刻的bug?怎么解决的?说下常用的数据结构的底层原理线程安全问题怎么解决?你在项目中,Redis是怎么用的?Redis的运行.原创 2020-11-17 18:31:15 · 2016 阅读 · 4 评论 -
2020年10月-北京-京东总部-面试题
jdk1.6升到1.8 还有 tomcat6升到8分别都有什么变化?jdk1.8新特性?为什么要用stream?并发场景使用stream有做压测吗?线程池参数怎么配置?为什么这么配置?做过压测吗?遇到过线程池拒绝的情况吗?怎么处理的?mysql索引类型?需要对索引优化,你会怎么做?explain解释字段含义?项目中如何发现慢sql的?在项目中你是怎么优化的?linux指令?maven指令?git指令?在使用springboot遇到了什么问题?为什么推出springboot,使用sprin.原创 2020-10-31 18:17:49 · 237 阅读 · 1 评论 -
2020年4-10月-杭州-阿里巴巴-面试题汇总
智能云平台1.redis雪崩,缓存击穿以及解决方案2.redis缓存怎么使用的?有用过redis的二级缓存吗,你们使用的哪种高可用部署方式,几个哨兵?假设10g内存,导入20g的数据,会发生什么3.mysql主从复制过程,binlog和redolog中的一样吗4.zk的核心概念5.在你们项目中es用来做什么?脑裂咋解决的?大数据量下的查询优化6.dubbo的工作过程,如何服务治理的,spi,哪里使用了spi?和jdk的区别?有哪些负载均衡策略以及实现原理7.网关使用的什么,鉴权如何做的阿里原创 2020-10-31 18:13:23 · 737 阅读 · 1 评论 -
JAVA面试中的数据一致性问题
1.redis一致性(容灾)原面试题:redis集群数据一致性如何保证,如果挂了一台机会怎样?可以从故障检测和从节点选举说起。故障检测:集群中每个节点都会定期的向集群中的其他节点发送PING信息。如果在一定时间内,发送ping的节点A没有收到某节点B的pong回应,那么A将B标识为pfail。A在后续发送ping时,会带上B的pfail信息,通知给其他节点。如果B被标记为pfail的个数大于集群主节点个数的一半(N/2 + 1)时,B会被标记为fail,A向整个集群广播,该节点已经下原创 2020-10-31 18:07:33 · 877 阅读 · 0 评论 -
推荐几个MySQL 数据库的运维工具
1. YearningYearning 是一个开源的MySQL SQL语句审核平台,提供数据库字典查询、查询审计、SQL审核等多种功能。在目前 Yearning 有两个版本,1.x 和 2.x。其中 1.x 基于 Python 实现,并且已经不再提供官方的维护,因此强烈建议使用 2.x 版本,2.0 基于 golang 实现。了解更多Yearning工具的安装和使用,详情可参考官网文档:https://guide.yearning.io2. Canalcanal 英文译意为水道/管道,主要用途是基原创 2020-08-03 15:57:12 · 3770 阅读 · 1 评论 -
Tomcat 的体系结构(超详细)
1.Tomcat架构1.整体架构HTTP 服务器接收到请求之后把请求交给Servlet容器来处理,Servlet 容器通过Servlet接⼝调⽤业务类。Servlet接⼝和Servlet容器这⼀整套内容叫作Servlet规范。注意:Tomcat既按照Servlet规范的要求去实现了Servlet容器,同时它也具有HTTP服务器的功能。Tomcat的两个重要身份 1)http服务器也可以看成一个连接器(Connector) 2)Servlet容器(Container)2.请求处理流程原创 2020-07-31 20:43:28 · 3018 阅读 · 0 评论 -
Mybatis的插件运行原理以及如何编写一个Mybatis的插件
Mybatis作为一个优秀的ORM插件有很强大的灵活性,通过插件可以很方便地扩展Mybatis的功能。Mybatis的插件相当于拦截器,是使用JAVA动态代理来实现的。Mybatis对持久层的操作借助于四大组件(Executor,StatementHandler,ParameterHandler,ResultSetHandler)。在创建这四类对象时会判断是否有配置好的插件,若是有则返回被插件代理的动态代理对象。在执行这四类对象的方法时,先判断执行的方法是否是需要代理的方法,如果是则执行插件类的增强方法。原创 2020-07-30 18:28:54 · 1140 阅读 · 0 评论 -
Mybatis都有哪些Executor执行器?它们之间的区别是什么?
Mybatis有三种基本的Executor执行器:SimpleExecutor:每执行一次update或select,就开启一个Statement对象,用完立刻关闭Statement对象。ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Map内,供下一次使用。简言之,就是重复使用Statement对象。BatchExecutor:执行update(没有select,JDB原创 2020-07-30 17:55:37 · 2923 阅读 · 0 评论