想进大厂?50个多线程面试题,你会多少?【后25题】(二)

2018-03-21
阅读 22 分钟
11.9k
不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提到。在典型的Java面试中, 面...

为Java程序员金三银四精心挑选的300余道Java面试题与答案

2018-03-21
阅读 6 分钟
11.9k
为Java程序员金三银四精心挑选的300余道Java面试题与答案,欢迎大家向我推荐你在面试过程中遇到的问题,我会把大家推荐的问题添加到下面的常用面试题清单中供大家参考。

Spring 常见的一些面试题整理

2018-03-21
阅读 15 分钟
17.4k
本人收集了一些在大家在面试时被经常问及的关于Spring的主要问题,这些问题有可能在你下次面试时就会被问到。对于本文中未提及的Spring其他模块,我会单独分享面试的问题和答案。欢迎大家向我推荐你在面试过程中遇到关于Spring的问题。我会把大家推荐的问题添加到下面的Spring常用面试题清单中供大家参考。

想进大厂?50个多线程面试题,你会多少?(一)

2018-03-18
阅读 33 分钟
23k
不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提到。在典型的Java面试中, 面...

什么是阻塞队列?如何使用阻塞队列来实现生产者-消费者模型?

2018-03-14
阅读 5 分钟
5.4k
什么是阻塞队列? 阻塞队列是一个在队列基础上又支持了两个附加操作的队列。 2个附加操作: 支持阻塞的插入方法:队列满时,队列会阻塞插入元素的线程,直到队列不满。 支持阻塞的移除方法:队列空时,获取元素的线程会等待队列变为非空。 阻塞队列的应用场景 阻塞队列常用于生产者和消费者的场景,生产者是向队列里添加...

Java 10 新特性解密,引入类型推断机制,2018 年 3 月 20 日发布

2018-03-08
阅读 4 分钟
2.3k
JDK 10 是 Java 10 标准版的部分实现,将于 2018 年 3 月 20 日发布,改进的关键点包括一个本地类型推断、一个垃圾回收的“干净”接口。Oracle 已经为 Java 设定了六个月的发行计划。之前本打算根据发行的年份和月份命名升级版和后续版,这样的话第一个版本就会被称为 Java 18.3, 但这个计划后来被中止了。如何下载 JDK 1...

Spring Boot 学习教程

2018-03-01
阅读 1 分钟
3.3k
Spring Boot 学习教程 spring-boot-mongodb Spring Boot 中使用 MongoDB 增删改查 spring-boot-rocketmq Spring Boot 中使用 RocketMQ spring-boot-redis Spring Boot 中使用 Redis spring-boot-rabbitmq Spring Boot 中使用 RabbitMQ spring-boot-kafka Spring Boot 中使用 kafka spring-boot-solr-cloud Spring Boot ...

Spring Boot 中使用 MongoDB 增删改查

2018-02-05
阅读 8 分钟
15.5k
本文快速入门,MongoDB 结合SpringBoot starter-data-mongodb 进行增删改查 1、什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个...

Spring Boot 中使用 RocketMQ

2018-02-02
阅读 6 分钟
12.7k
本文快速入门,RocketMQ消息系统的安装部署,发送,和接收消息,监控消息,的详细说明。 环境需要 64位操作系统,建议使用Linux / Unix / CentOs7.3 64bit JDK 1.8+ Maven 3.2.x Git 1.8.3.1 环境安装 请参考我的另一篇文章 搭建 Apache RocketMQ 单机环境 [链接] 新加项目 新建一个 maven 项目,这里就不详细操作了,大家都...

搭建 Apache RocketMQ 单机环境

2018-02-02
阅读 5 分钟
4.2k
本文快速入门,RocketMQ消息系统的安装部署,发送,和接收消息的详细说明。 环境需要 64位操作系统,建议使用Linux / Unix / CentOs7.3 64bit JDK 1.8+ Maven 3.2.x JDK Maven 的安装自行 Google 或者去我博客 [链接] 搜索安装 下载和构建 下载4.2.0源码版本: [链接] 下载4.2.0二进制版本: [链接] 现在执行以下命令来解压4....

搭建 MongoDB分片(sharding) / 分区 / 集群环境

2018-02-01
阅读 12 分钟
5.2k
搭建 MongoDB分片(sharding) / 分区 / 集群环境 1. 安装 MongoDB 三台机器 关闭防火墙 {代码...} 192.168.252.121 192.168.252.122 192.168.252.123 mongos mongos mongos config server config server config server shard server1 主节点 shard server1 副节点 shard server1 仲裁 shard server2 仲裁 shard server2...

手把手教你 MongoDB 的安装与详细使用(二)

2018-01-30
阅读 23 分钟
2.3k
上一篇文章练习了,MongoDB 的以下操作 安装 MongoDB 服务 连接 MongoDB MongoDB 创建数据库 MongoDB 删除数据库 MongoDB 插入文档 MongoDB 删除文档 MongoDB 查询文档 MongoDB AND 条件 MongoDB OR 条件 MongoDB AND 和 OR 联合使用 MongoDB 条件操作符 MongoDB (>) 大于操作符 - $gt MongoDB(>=)大于等于操作...

手把手教你 MongoDB 的安装与详细使用(一)

2018-01-26
阅读 14 分钟
3.5k
一、什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。 MongoDB 文档类似于 JSON 对...

保证分布式系统数据一致性的6种方案

2018-01-24
阅读 7 分钟
10.5k
具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、B、C 可能是多个不同部门开发、部署在不同服务器上的远程服务。

分布式和集群区别?什么是云计算平台?分布式的应用场景?

2018-01-23
阅读 3 分钟
6.9k
分布式是指将一个业务拆分不同的子业务,分布在不同的机器上执行,集群是指多台服务器集中在一起,实现同一业务,可以视为一台计算机,一个云计算平台,就是通过一套软件系统把分布式部署的资源集中调度使用。要应对大并发,要实现高可用,既需要分布式,也离不开集群。

常用的分布式事务解决方案介绍有多少种?

2018-01-22
阅读 4 分钟
4.6k
关于分布式事务,工程领域主要讨论的是强一致性和最终一致性的解决方案。典型方案包括: 两阶段提交(2PC, Two-phase Commit)方案 eBay 事件队列方案 TCC 补偿模式 缓存数据最终一致性 一、一致性理论 分布式事务的目的是保障分库数据一致性,而跨库事务会遇到各种不可控制的问题,如个别节点永久性宕机,像单机事务一...

Docker Compose 1.18.0 之服务编排详解

2018-01-18
阅读 9 分钟
5.6k
一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose,不再需要使用shell脚本来启动容器。在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容...

使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上

2018-01-16
阅读 14 分钟
7.2k
使用Maven插件构建Docker镜像,将Docker镜像push到DockerHub上,或者私有仓库,上一篇文章是手写Dockerfile,这篇文章借助开源插件docker-maven-plugin 进行操作

Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo

2018-01-11
阅读 8 分钟
10k
Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4.项目准备 5.编写 Dockerfile 6.发布项目 7.测试服务 环境准备 系统:Ubuntu 17.04 x64 Docker 17.12.0-ce IP:45.32.31.101 一、安装 Docker CE 国内不建议使用:“脚本进行安...

可能是最详细的部署:Docker Registry企业级私有镜像仓库Harbor管理WEB UI

2018-01-08
阅读 8 分钟
6.9k
上一篇文章搭建了一个具有基础功能,权限认证、TLS 的私有仓库,但是Docker Registry 作为镜像仓库,连管理界面都没有,甚至连一些运维必备的功能都是缺失的,还有什么 Docker 镜像仓库管理工具呢?这里有一个简单好用的企业级 Registry 服务器 - Harbor,推荐在生产环境上使用。

Docker Registry Server 搭建,配置免费HTTPS证书,及拥有权限认证、TLS 的私有仓库

2018-01-05
阅读 6 分钟
7.5k
上一篇文章搭建了一个具有基础功能的私有仓库,这次来搭建一个拥有权限认证、TLS 的私有仓库。 环境准备 系统:Ubuntu 17.04 x64 IP:198.13.48.154 域名:hub.ymq.io,此域名需要dns 解析到198.13.48.154 作为私有仓库地址 本文出现的所有:hub.ymq.io 域名。使用时候请替换成自己的域名 Docker 环境 在部署私有仓库之前...

Ubuntu 17.04 编译安装 Nginx 1.9.9 配置 https 免费证书

2018-01-04
阅读 2 分钟
2.9k
Ubuntu 17.04 编译安装 Nginx 1.9.9 配置 https 免费证书 安装 Nginx 安装依赖 {代码...} 下载并解压 {代码...} 编译 {代码...} 安装 {代码...} 默认安装在/usr/local/nginx 里面有四个目录: conf: 配置文件夹,最重要文件是nginx.conf html: 静态网页文件夹 logs: 日志文件夹 sbin: nginx 的可执行文件,启动、停止等...

Docker Hub 仓库使用,及搭建 Docker Registry

2018-01-01
阅读 7 分钟
17.8k
目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了数量超过 15,000 的镜像。大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现。

Docker 容器操作

2018-01-01
阅读 14 分钟
2.8k
容器是 Docker 又一核心概念。简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用。

Ubuntu 17.04 x64 安装 Docker CE 初窥 Dockerfile 部署 Nginx

2017-12-31
阅读 12 分钟
4.1k
Docker 是个划时代的开源项目,它彻底释放了计算虚拟化的威力,极大提高了应用的运行效率,降低了云计算资源供应的成本!使用 Docker,可以让应用的部署、测试和分发都变得前所未有的高效和轻松!

Spring Cloud 简单教程 持续更新中

2017-12-30
阅读 1 分钟
4k
Spring Cloud 简单教程 spring-cloud-eurekaSpring Cloud(一)服务的注册与发现(Eureka) spring-cloud-consulSpring Cloud(二) Consul 服务治理实现 spring-cloud-ribbonSpring Cloud(三) 服务提供者 Eureka + 服务消费者(rest + Ribbon) spring-cloud-feignSpring Cloud(四) 服务提供者 Eureka + 服务消费者...

Spring Cloud(十一)高可用的分布式配置中心 Spring Cloud Bus 消息总线集成(RabbitMQ)

2017-12-25
阅读 11 分钟
5.5k
上一篇文章,留了一个悬念,Config Client 实现配置的实时更新,我们可以使用 /refresh 接口触发,如果所有客户端的配置的更改,都需要手动触发客户端 /refresh ,当服务越来越多的时候,那岂不是维护成本很高,显然不太合适,而使用Spring Cloud Bus 消息总线实现方案,可以优雅的解决以上问题,那就是通过消息代理中间...

在 Linux 上搭建Jekyll静态博客

2017-12-24
阅读 4 分钟
7k
在CentOS,Ubuntu 按照同样步骤安装,Ruby Gems 往往都无法搭建成,每次都是依赖不对,各种奇葩原因,解决办法就是使用 RVM 安装,解决 Ruby 的环境依赖管理,而且每次安装Jekyll基本不会出错

Spring Cloud(十)高可用的分布式配置中心 Spring Cloud Config 中使用 Refresh

2017-12-23
阅读 4 分钟
4.1k
上一篇文章讲了SpringCloudConfig 集成Git仓库,配和 Eureka 注册中心一起使用,但是我们会发现,修改了Git仓库的配置后,需要重启服务,才可以得到最新的配置,这一篇我们尝试使用 Refresh 实现主动获取 Config Server 配置服务中心的最新配置

Dapper,大规模分布式系统的跟踪系统

2017-12-22
阅读 22 分钟
3k
当代的互联网的服务,通常都是用复杂的、大规模分布式集群来实现的。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具。