• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

2019年02月5日的内容

大牛是怎么思考设计SQL优化方案的?

在进行MySQL的优化之前,必须要了解的就是MySQL的查询过程,很多查询优化工作实际上就是遵循一些原则,让MySQL的优化器能够按照预想的合理方式运行而已。图-MySQL查询过程一、优化的哲学注:优化有风险,涉足需谨慎11、优化可能带来的问题?优化不总是对一个单纯的环境进行,还很可能是……

如何判断一个元素在亿级数据中是否存在?

前言最近有朋友问我这么一个面试题目:现在有一个非常庞大的数据,假设全是 int 类型。现在我给你一个数,你需要告诉我它是否存在其中(尽量高效)。需求其实很清晰,只是要判断一个数据是否存在即可。但这里有一个比较重要的前提:非常庞大的数据。常规实现先不考虑这个条件,我们脑海中出现的第一种方案是什么?我想大多数想到的都是用 HashM……

常被问到的十个 Java 面试题

在这篇文章中,我试图收录最有趣和最常见的问题。此外,我将为您提供正确的答案。接下来,就让我们来看看这些问题。1. 以满分十分来评估自己——你有多擅长 Java?如果你并不完全确信你自己或是你对 Java 的熟练程度,那么这会是一个非常棘手的问题。如果有这种情况,你应该把打分调低一点。之后,你大概会得到与你承认的水平相符的问题。因此,……

Java爬取网易云音乐民谣并导入Excel分析

前言考虑到这里有很多人没有接触过Java网络爬虫,所以我会从很基础的Jsoup分析HttpClient获取的网页讲起。了解这些东西可以直接看后面的“正式进入案例”,跳过前面这些基础。我导入的是“Excel转换工具XXL-EXCEL”这个开源项目然后在这个基础上写的这个Demo(下面会详细分析).项目分析几天前用HttpClien+Jsoup……

设计一个百万级的消息推送系统!

  一、前言先简单说下本次的主题,由于我最近做的是物联网相关的开发工作,其中就不免会遇到和设备的交互。最主要的工作就是要有一个系统来支持设备的接入、向设备推送消息;同时还得满足大量设备接入的需求。所以本次分享的内容不但可以满足物联网领域同时还支持以下场景:基于 WEB 的聊天系统(点对点、群聊)。WEB 应用中需……

Web应用运行原理

web应用启动做了什么?读取web.xml文件– web.xml常用配置参数:1).context-param(上下文参数)2).listener(监听器配置参数)3).filter(过滤器配置参数)4).servle(servlet页面参数)5).其他– 读取顺序:1)>>>……

关于Java锁机制面试官会怎么问

乐观锁与悲观锁悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。再比如Java里面的同步原语synchronized关键字的实现也是悲观锁。乐观锁:顾名思……

深入浅出Java分布式系统通信

对java分布式系统通信的理解:1.集群模式,将相同应用模块部署多份2.业务拆分模式,将业务拆分成多个模块,并分别部署3.存储分布式由于分布式概念太大,我们可以缩小下讨论的范围。以下分布式的狭义定义为:业务拆分,但不限于水平拆分,而是拆分出底层模块,功能模块,上层模块等等。一个系统功能繁多,且有层次依赖,那么我们需要将其分为很多……

Java 虚拟机对锁优化所做的努力

作为一款公用平台,JDK 本身也为并发程序的性能绞尽脑汁,在 JDK 内部也想尽一切办法提供并发时的系统吞吐量。这里,我将向大家简单介绍几种 JDK 内部的 “锁” 优化策略。1、 锁偏向锁偏向是一种针对加锁操作的优化手段。如果一个线程获得了锁,那么锁就进入偏向模式。当这个线程再次请求锁时,无须再做任何同步操作。……

面试投行的20个Java问题

如果你需要准备面试,可以看一下这篇博客中20个为Java开发人员准备的面试投行的问题。大量的Java开发人员面试例如巴克莱银行(Barclays)、瑞士信贷集团(Credit Suisse)、花旗银行(Citibank)这样的投行的Java开发岗位,但是大多数人都不知道会被问什么问题。这篇文章中,我将分享一些对于3年经验以上的程序员会被问的最……

Docker 基础 : 网络配置

大量的互联网应用服务包含多个服务组件,这往往需要多个容器之间通过网络通信进行相互配合。Docker 目前提供了映射容器端口到宿主主机和容器互联机制来为容器提供网络服务。接下来我们将讲述 Docker 的网络功能,包括使用端口映射机制来将容器内应用服务提供给外部网络,以及通过容器互联系统让多个容器之间进行快捷的网络通信。端口映射实现访问容器从外……

掌握分布式场景下的秒杀架构与秒杀实践

分析,在做秒杀系统的设计之初,一直在思考如何去设计这个秒杀系统,使之在现有的技术基础和认知范围内,能够做到最好;同时也能充分的利用公司现有的中间件来完成系统的实现。我们都知道,正常去实现一个WEB端的秒杀系统,前端的处理和后端的处理一样重要;前端一般会做CDN,后端一般会做分布式部署,限流,性能优化等等一系列的操作,并完成一些网络的优化……

四种JavaEE架构解析

 1、传统三层架构(all in one项目)传统三层架构大致可以分为表现层,业务层和持久层(数据访问层)。其中表现层负责接受请求和转发请求。业务层负责处理请求(注:事务管理,日志记录等AOP类型的操作均封装在这一层)。持久层主要负责数据库与实体之间的操作。struts典型的mvc三层架构:模型层,视图层,控制层。SpringMVC中的……

Docker 基本命令

Docker是一个近年来非常火热的开源项目,使用Docker作为容器并将我们的应用程序运行在Docker中方便部署及测试,也利于开发环境的隔离。最近简单地学习了一下Docker的基本使用,在此做一个学习笔记。安装使用的第一步当然就是安装了,可以到Docker的官网上,根据不同操作系统下载安装即可。安装完成之后可以在命令行中运行……

那些没说出口的研发之痛,做与不做微服务的几大理由

如果在诸多热门云计算技术中,诸如容器、微服务、DevOps等,找出一个最火的方向,那么非微服务莫属。在小数推荐的这篇文章里,做与不做微服务好像理由都很充分。另外,诞生几十年的康威定律,在组织结构调整和变革方面,依然神采奕奕。创建一种新的软件项目架构,来封装离散服务,对于全新的项目来说,这是非常简单的。但是,对于大多数软件开发者来说,谁又有……

Java精选笔试题(三)

1,下列说法正确的是()A.一个文件里可以同时存在两个public修饰的类B.构造函数可以被重写(override)C.子类不能访问父类非public和protected修饰的属性D.final修饰的类可以被继承答案:C        一个Java源文件中最多只能有一个public类,当有一个public类时,源文件名必须与之一致,……

可能是把Docker的概念讲的最清楚的一篇文章

正文本文只是对Docker的概念做了较为详细的介绍,并不涉及一些像Docker环境的安装以及Docker的一些常见操作和命令。我觉得是很适合当做睡前读物了~~~~?阅读本文大概需要15分钟,通过阅读本文你将知道一下概念:容器什么是Docker?Docker思想、特点Docker容器主要解决什么问题……

深入分析 ConcurrentHashMap 1.8 的扩容实现

ConcurrentHashMap相关的文章写了不少,有个遗留问题一直没有分析,也被好多人请教过,被搁置在一旁,即如何在并发的情况下实现数组的扩容。什么情况会触发扩容当往hashMap中成功插入一个key/value节点时,有可能触发扩容动作:1、如果新增节点之后,所在链表的元素个数达到了阈值 8,则会调用treeifyBin方法把……

送你 11 道常见的 Java 基础面试题!

大家在平常面试java的过程中都会遇到哪些难题呢?还有一些即将去面试java的童鞋们,你们想知道技术面试中会涉及到哪些点吗?为你整理Java面试中会被问到的几个技术难题。1、一个”.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?可以有多个类,但只能有一个public的类,并且pub……

Java微服务框架选型(Dubbo 和 Spring Cloud?)

微服务(Microservices)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。以往我们开发应用程序都是单体型(可以看作是一个怪兽?),虽然开发和部署比较方便,但后期随着业……

【分布式】数据库和缓存双写一致性方案解析

引言为什么写这篇文章?首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存。又或者是先删除缓存,再更新数据库,其实大家存在很大的争议。目前没有一篇全面的博客,对这几种方案进行解析。于是博主战战兢兢……

一组考算法的面试题(寻求最优解)

1、要几架飞机(据说是微软的面试题)每个飞机只有一个油箱,飞机之间可以相互加油(注意是相互,没有加油机),一箱油可供一架飞机绕地球飞半圈。 问:为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机? (所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场)解答:我们把全程划分为多个4分之1段,可……

Java四大基本特性

秋招面试时经常被问到 「Java有哪些基本特性?面向对象的特征有哪些?谈谈对Java中多态的理解?在项目中哪些地方用到过多态?」,这个问题还是比较基础的,但基础问题不见得每个人都能回答的很好,最重要的还是要足够理解并准确表达。建议重点关注Java中「多态性」的相关问题。Java有哪些基本特性?等价于,面向对象的特征有哪些?抽象:将一……

Java提供的排序算法是怎么实现的?快排?

一、Arrays.sort()的排序算法先来看看Arrays.sort(),sort方法拥有很多的重载,有十几种,以int查看如下:可以看到这里有一个DualPivotQuicksort,DualPivotQuicksort翻译过来就是双轴快速排序(关于双轴快速排序我们后期在讨论,可以认为是对我们普通使用的快排的一种改进,另外还有一种改进是……

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00