首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
Javayyds
获赞
27
粉丝
29
关注
4
看过 TA
23
男
北京理工大学
2015
Java
IP属地:湖南
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑Javayyds吗?
发布(329)
评论
刷题
收藏
Javayyds
关注TA,不错过内容更新
关注
2021-04-08 08:11
已编辑
北京理工大学 Java
Uber——面向领域的微服务架构
介绍 最近,围绕面向服务的架构(尤其是微服务架构)的缺点进行了大量讨论。虽然就在几年前,采用微服务架构是比较流行的,因为它们提供了许多好处,例如以独立部署的形式带来的灵活性、职责清晰、系统稳定性和更好的关注点分离,但近年来,人们开始声讨微服务极大地增加了系统复杂性,有时构建微小的特性也会变得困难。 随着 Uber 发展到大约有 2200 多个关键的微服务,期间我们也经历了一些权衡。在过去的两年里,Uber 一直在试图降低微服务的复杂性,同时仍然保持微服务架构带来的好处。通过这篇博客文章,我想介绍我们对微服务架构的一些通用的方法,我们称之为“面向领域的微服务架构”(DOMA)。 由于这些缺点,近...
0
点赞
评论
收藏
分享
2021-04-08 08:11
已编辑
北京理工大学 Java
实战技巧——如何优雅使用VUE?
本文会从以下三个方面,来进阶我们对vue的运用能力: 组件 : 全局组件注册 Render函数 : 拯救繁乱的template Vue权限控制:高精度全局权限控制 全 局 组 件 注 册 组件是我们非常常用的东西,很多人使用组件都是通过一个一个文件去引用和注册。如果一个组件在整个项目里面的使用次数较多,每一次使用都需要引用并注册,就会显得特别麻烦。 一般组件应用弊端: 傻瓜式,太笨拙; 繁琐,低效。 <template> <div> <h1>I am HelloWorld</h1> <Child1></Child1> &...
0
点赞
评论
收藏
分享
2021-04-08 08:10
北京理工大学 Java
设计模式——浅谈模板方法模式与建造者模式的异同
说到模板方法模式,它可能是一个让我们深入骨髓而又不自知的模式了,因为它在我们开发过程中会经常遇到,并且也非常简单。只不过,很多时候我们并不知道它就是模板方法模式而已。不负责任的说,当我们用到override关键字重写父类方法的时候,十有***就跟模板方法模式有关了。 定义 先看一下模板方法模式的定义,模板方法模式定义了一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些步骤。 这里延迟到子类说的玄乎,其实就是子类继承并实现父类中的抽象方法(abstract),而重定义该算法的某些步骤指的就是子类重写父类的虚方法(virtual)。不过,不管是...
0
点赞
评论
收藏
分享
2021-04-08 08:10
北京理工大学 Java
看完这篇,你可能对这个全能效率神器会有 全新认识
导语:最近工作上的事是真滴忙,连之前情人节那天都没腾出空,几个大老爷们对着电脑凑合凑合过的。趁现在闲下来,赶紧来给大家絮叨絮叨。这次我们就来讲一个效率神器。 作为一个以懒为美德的程序猿,我是想尽办法提高自己的办公效率,要不你说咋挤出时间去偷懒呢。 入职这两年以来,我用过的工具是越来越多,电脑桌面也是越来越杂。 更不凑巧的是,我还是个 Win10、macOS 双系统用户。 所以这些年我一直在寻找一个支持快速搜索、快速启动的轻量级、跨平台的效率工具。 看看上面的定语有多少,大概就知道这样的工具有多难找了吧。 之前我都是 Mac 上 Alfred,主机上 Wox 的搭配方式,光热键就记的我头疼。 ...
0
点赞
评论
收藏
分享
2021-04-08 08:10
北京理工大学 Java
几段代码,轻松玩转rpc通信协议
RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。 2.基本概念 RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务 本地过程调用...
0
点赞
评论
收藏
分享
2021-04-08 08:09
北京理工大学 Java
数据库缓存最终一致性的四种方案
背景 缓存是软件开发中一个非常有用的概念,数据库缓存更是在项目中必然会遇到的场景。而缓存一致性的保证,更是在面试中被反复问到,这里进行一下总结,针对不同的要求,选择恰到好处的一致性方案。 缓存是什么 存储的速度是有区别的。缓存就是把低速存储的结果,临时保存在高速存储的技术。 如图所示,金字塔更上面的存储,可以作为下面存储的缓存。 我们本次的讨论,主要针对数据库缓存场景,将以redis作为mysql的缓存为案例来进行。 为什么需要缓存 存储如mysql通常支持完整的ACID特性,因为可靠性,持久性等因素,性能普遍不高,高并发的查询会给mysql带来压力,造成数据库系统的不稳定。同时也容易产生延...
0
点赞
评论
收藏
分享
2021-04-08 08:09
已编辑
北京理工大学 Java
不要再重复造轮子了,这款开源工具类库贼好使!
摘要 Hutool是一个小而全的Java工具类库,它帮助我们简化每一行代码,避免重复造轮子。如果你有需要用到某些工具类的时候,不妨在Hutool里面找找。本文总结了平时常用的16个工具类,希望对大家有所帮助! 安装 Hutool的安装非常简单,Maven项目中只需在pom.xml添加以下依赖即可。 <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.4.0</version> </...
0
点赞
评论
收藏
分享
2021-04-08 08:09
已编辑
北京理工大学 Java
浅谈高性能无锁并发框架Disruptor
Disruptor是一个开源框架,研发的初衷是为了解决高并发下队列锁的问题,最早由LMAX提出并使用,能够在无锁的情况下实现队列的并发操作,并号称能够在一个线程里每秒处理6百万笔订单 目前,包括Apache Storm、Camel、Log4j2在内的很多知名项目都应用了Disruptor以获取高性能 为什么会产生Disruptor框架 「目前Java内置队列保证线程安全的方式:」 ArrayBlockingQueue:基于数组形式的队列,通过加锁的方式,来保证多线程情况下数据的安全; LinkedBlockingQueue:基于链表形式的队列,也通过加锁的方式,来保证多线程情况下数据的安全; ...
0
点赞
评论
收藏
分享
2021-04-08 08:08
已编辑
北京理工大学 Java
MySQL避免重复插入数据的4种方式你是否都知道?
MySQL避免重复插入数据最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下: 这里为了方便演示,我新建了一个user测试表,主要有id,username,sex,address这4个字段,其中主键为id(自增),同时对username字段设置了唯一索引: 01 insert ignore into 即插入数据时,如果数据存在,则忽略此次插入,前提条件是插入的数据字段设置了主键或唯一索引,测试SQL语句如下,当插入本条数据时,MySQL数据库会首...
0
点赞
评论
收藏
分享
2021-04-08 08:08
北京理工大学 Java
Spring 自定义注解你了解过吗?(附源码解读)
在业务开发过程中我们会遇到形形***的注解,但是框架自有的注解并不是总能满足复杂的业务需求,我们可以自定义注解来满足我们的需求。根据注解使用的位置,文章将分成字段注解、方法、类注解来介绍自定义注解。 字段注解 字段注解一般是用于校验字段是否满足要求,hibernate-validate依赖就提供了很多校验注解 ,如@NotNull、@Range等,但是这些注解并不是能够满足所有业务场景的。 比如我们希望传入的参数在指定的String集合中,那么已有的注解就不能满足需求了,需要自己实现。 自定义注解 定义一个@Check注解,通过@interface声明一个注解 @Target({ Elemen...
0
点赞
评论
收藏
分享
2021-04-08 08:07
已编辑
北京理工大学 Java
如何将线程池里面的每个响应对象传递给相应等待的用户线程,且不出错呢?
一道面试题 让我们开门见山,直面主题:Dubbo 服务里面有个服务端,还有个消费端你知道吧? 服务端和消费端都各有一个线程池你知道吧? 那么面试题来了:一般情况下,服务提供者比服务消费者多吧。一个服务消费方可能会并发调用多个服务提供者,每个用户线程发送请求后,会进行超时时间内的等待。多个服务提供者可能同时做完业务,然后返回,服务消费方的线程池会收到多个响应对象。这个时候要考虑一个问题,如何将线程池里面的每个响应对象传递给相应等待的用户线程,且不出错呢? 先说答案。 这个题和答案其实就写在 Dubbo 的官网上: http://dubbo.apache.org/zh-cn/docs/sour...
0
点赞
评论
收藏
分享
2021-04-08 08:07
已编辑
北京理工大学 Java
程序员想要提升自己,这份阿里爆款架构师进阶笔记一定不要错过!
前言 关于技术人如何成长的问题,一直以来都备受关注,因为程序员职业发展很快,即使是相同起点的人,经过几年的工作或学习,会迅速拉开极大的差距,所以技术人保持学习,提升自己,才能够扛得住不断上赶的后浪,也不至于被“拍死”在沙滩上。 近日,经过一朋友的透露,Alibaba也首发了一份限量的“Java成长笔记”,里面记载的知识点非常齐全,看完之后才知道,差距真的不止一点点! Java成长笔记主要是将Java程序员按照年限来进行分层,清晰的标注着Java程序员应该按照怎样的路线来提升自己,需要去学习哪些技术点。 下面会介绍这份Java成长笔记的主要内容涵盖的知识点,由于文章篇幅,所以只展示了截图内容,...
0
点赞
评论
收藏
分享
2021-04-08 08:06
已编辑
北京理工大学 Java
开发一个渐进式Web应用程序(PWA)前都需要了解什么?
自苹果推出了iPhone应用商店以来,App成为了我们生活中不可或缺的一部分,而对于实体业务也是如此,现在各行业都在推出自己的App,但有没有人想过这样一种场景,如果自己的潜在客户还没有安装你的App亦或是即便安装但因为客户的手机存储空间紧张而卸载掉了你的App?那有没有使App更轻量,更易安装的技术实现呢?答案是“有的”。 渐进式Web应用程序就是为此而生的,它同时具备了Web应用功能和以前只有在原生应用才有的功能的特点,渐进式Web应用程序通过从主屏幕上的图标启动,也可以根据推送通知启动,加载时间几乎可以忽略不计,而且除了可以在线使用外,也可以打包成可离线使用。 最重要的是,渐进式Web应...
0
点赞
评论
收藏
分享
2021-04-08 08:06
已编辑
北京理工大学 Java
开发经验分享:撸了一个Feign增强包
前言 最近准备将公司的一个核心业务系统用 Java 进行重构,大半年没写 Java ,JDK 都更新到 14 了,考虑到稳定性等问题最终还是选择的 JDK11。 在整体架构选型时,由于是一个全新的系统,所以没有历史包袱,同时团队中也有多位大牛坐镇,因此我们的选项便大胆起来。 最终结果就是直接一把梭,直接上未来的大趋势:Service Mesh,直接把什么 SpringCloud、Dubbo 这类分布式框架全部干掉。 本次的重点不是讨论 Service Mesh 是什么、能解决什么问题、为什么选择它,毕竟我也在学习阶段,啥时候整明白线上也稳定了再和大家来交流。 问题 既然方向定了就开始实际撸码了...
0
点赞
评论
收藏
分享
2021-04-08 08:05
已编辑
北京理工大学 Java
有一说一!SpringAOP+源码解析,切就完事了
一、AOP、SpringAOP、AspectJ的区别 AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 文有文的,没用过确实很懵,但是用过之后,不说清晰,起码有点意思了。 Spring AOP: 它基于动态代理来实现。默认的,如果使用接口的,用 JDK 提供的动态代理实现,如果没有接口,使用 CGLIB 实现。大家一定要明白背后的意思,包括什么时候会不用 JDK...
0
点赞
评论
收藏
分享
1
2
3
4
5
6
22
创作者周榜
更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务