谷歌十年扫地僧带你学“三高!”:高并发+高性能+高可用

前言很多人做java开发2至3年后,都会感觉自己遇到瓶颈。什么都会又什么都不会,如何改变困境,为什么很多人写了7,8年还是一个码农,工作中太多被动是因为不懂底层原理。公司的工作节奏又比较快,难有机会学习架构原理,也没人教,所以这个时候,学习架构原理,扩展思维,对自己以后职业生涯尤为重要。同样公司的两个新人,一个新人一点就通,学东西很快,有的人,学东西很慢,也很痛苦,处处都是新技术。为什么?因为那个人懂原理,万物都有规律,掌握了规律学其他东西原理相通,一触就会,不懂原理就会处处碰壁,学习很慢还很折磨。
分类: 企业开发 发布时间: 10-18 16:47 阅读次数: 0

5年Java开发,面试4大厂(阿里、拼多多、字节、美团)后,我总结出大厂高频面试真题及解析

毕业转行做开发5年以来, 学到了很多, 加上自己的兴趣爱好, 个人认为已经成为了一个合格的程序员.与刚开始找工作面试相同的是都会问一些相同的问题, 不同的是现在面试官会更注重为什么, 也就是说注重深度而非广度. 3年, 5年, 10年分别是个人从事技术方面职业规划中的一个坎, 3年大部分时间应对了业务逻辑, 培养良好的规范和思想, 基础知识还是欠缺.找工作时, 除了薪资符合个人职业规划也是相当重要的.废话少说, 以下是我前两天面试总结的面试题.集合 hashmap结构及原理 扩容因子, 如何
分类: 企业开发 发布时间: 10-18 16:47 阅读次数: 0

阿里资深架构师出品Spring Data实战笔记,肝完秃头也值了!

前言:相信不少程序员都很清楚的知道,Spring Data是一个用于简化数据bai库访问,并du支持云服务的开源框架。其主要目zhi标是使得数据库的访问变得dao方便快捷,并支持map-reduce框架和云计算数据服务。此外,它还支持基于关系型数据库的数据服务,如Oracle RAC等。对于拥有海量数据的项目,可以用Spring Data来简化项目的开发,就如Spring Framework对JDBC、ORM的支持一样,Spring Data会让数据的访问变得更加方便。而如何更好的掌握springD
分类: 企业开发 发布时间: 10-18 16:47 阅读次数: 0

阿里架构师:天天高并发,达不到百万以上并发都不叫高并发!!

前言成为一名年薪百万的顶尖架构师,实现财富自由,是大多数JAVA高级程序员的职业追求。这不仅是技术发展的趋势,同时也是个人职业价值的体现。但最终能否成为IT架构中的「灵魂人物」,做出亿级用户量的产品、搭建承载百万级并发的架构,还要取决于你能不能翻过并发量这道坎。并发编程是Java语言的重要特性之一,在Java平台上提供了许多基本的并发功能来辅助开发多线程应用程序。然而,这些相对底层的并发功能与上层应用程序的并发语义之间并不存在一种简单而直观的映射关系。因此,如何在Java并发应用程序中正确且
分类: 企业开发 发布时间: 10-18 16:47 阅读次数: 0

Vuetify调试工具vue-devtools安装

本文介绍在Windows环境下安装Vue调试工具vue-devtools的完整过程。
分类: 服务端 发布时间: 10-18 16:47 阅读次数: 0

rabbitmq集群搭建(Linux)

rabbitmq集群搭建(Linux)第一步:安装Erlang环境otp_src_20.1.tar.gzrabbitmq-server-generic-unix-3.7.4.tar 需要的自提链接:https://pan.baidu.com/s/1WdBITXssCqU4CslnR8930A提取码:1phu安装依赖包 1. yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel编译安装(
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

java中判断JSONObject是否存在某个Key

java中判断JSONObject是否存在某个Key JSONObject jsonObj = new JSONObject(); jsonObj.put("version", "1.0.0"); // 版本号 jsonObj.put("encoding", "UTF-8"); // 编码方式 判断jsonObject是否存在vesion属性 jsonObj.has("version"); // 返回true...
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

SpringBoot导出Excel工具类

SpringBoot项目 导出查询结果(excel)ClassUtilimport org.springframework.stereotype.Component;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.List;/** * @Author: * @Date: * @Description:关于类的操作的工具类
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

React 实现Excel 文件下载(实现导入导出)

封装的工具类,有页面需要使用此功能时可直接调用:import apiPath from 'Common/apiPath'import { message } from 'antd'const Utils = { showErrorMsg: msg => { // 显示错误消息 message.destroy() message.error(msg) }, showSuccessMsg: msg => { // 显示成功消息 message.destro
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Leetcode刷题 1441题: 用栈操作构建数组(基于python3和c++两种语言)

Leetcode刷题 1441题: 用栈操作构建数组(基于python3和c++两种语言)**题目:**给你一个目标数组 target 和一个整数 n。每次迭代,需要从 list = {1,2,3…, n} 中依序读取一个数字。请使用下述操作来构建目标数组 target :Push:从 list 中读取一个新元素, 并将其推入数组中。Pop:删除数组中的最后一个元素。如果目标数组构建完成,就停止读取更多元素。题目数据保证目标数组严格递增,并且只包含 1 到 n 之间的数字。请返回构建目
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Leetcode刷题 155题: 最小栈(基于python3和c++两种语言)

**Leetcode刷题 155题: 最小栈(基于python3和c++两种语言)****题目:**设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。示例:输入:[“MinStack”,“push”,“push”,“push”,“getMin”,“pop”,“top”,“getMin”][[]
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Leetcode刷题 232题:用栈实现队列(基于python3和c++两种语言)

Leetcode刷题 232题:用栈实现队列(基于python3和c++两种语言)题目:使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。示例:MyQueue queue = new MyQueue();queue.push(1);queue.push(2);queue.peek(); // 返回 1queue.pop(); // 返回 1qu
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Java中实现接口与继承的区别

**Java中接口与继承的区别**在Java中,接口的实现和继承的实现很类似的,写法上是几乎是一致的,就是关键字这一部分不一样,即接口使用的关键字为implements,而继承使用的关键字为extends。代码如下:接口的代码:public class ButtonListener implements ActionListener {}接口类型写法与解释://事件处理类//实现接口一定要实现(重写)接口中所有的抽象方法//实现接口(继承):implements//public cla
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Leetcode刷题 225题:用队列实现栈(基于Java和c++两种语言)

**Leetcode刷题 225题:用队列实现栈(基于Java和c++两种语言)**题目:使用队列实现栈的下列操作:push(x) – 元素 x 入栈pop() – 移除栈顶元素top() – 获取栈顶元素empty() – 返回栈是否为空注意:你只能使用队列的基本操作-- 也就是 push to back, peek/pop from front, size, 和 is empty 这些操作是合法的。你所使用的语言也许不支持队列。 你可以使用 list 或者 deque(双端队列)来
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Java中public,private,protected以及default的访问权限区别

**Java中public,private,protected以及default的访问权限区别**首先,从public的字面意思上就能够知道public所指的是公共的,从而我们可以知道public的访问权限是最为宽松的,它可以在同一个包内访问,也可以在不同的包内进行访问,其作用:它对任何地方的类都是可见的,换言之,就是所有其他的类都可以访问它,它对任何地方的类都是可见的。如图:其次,从private的字面上看就能知道它是表示私有的,从而我们可以知道它的访问权限是比较严格的。它表示是除了类
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

Java中 this关键字详解

客官如果大家喜欢我总结的知识点,请给我一个一键三连支持一下噢!
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

EasyCode(代码神器) 使用教程

Easycode是idea的一个插件,可以直接对数据的表生成entity,controller,service,dao,mapper1、下载Easy Code2、使用idea连接数据库3、生成代码找到想生成的表,然后右键,选择EasyCode,选择Generate Code选择模块和包,然后勾选你需要生成的代码,点击OK。...
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

SpringData操作ElasticSearch实现高亮查询等

SpringData操作ElasticSearch实现搜索整体思路1.引入依赖2.编写yml配置3.创建实体类4-1.基本查询/添加/更新/删除4-2.复杂查询整体思路1.引入依赖<!--注意:低版本的springboot 不支持springboot data--><parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

大数据时代的 3V + 3高

大数据时代的3V:主要是描述问题的1. 海量Volume2. 多样Variety3. 实时Velocity大数据时代的3高:主要是对程序的要求1. 高并发2. 高可扩3. 高性能
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0

已解决(使用jedis客户端连接redis时候报错:连接超时)java.net.SocketTimeoutException: connect timed out

使用jedis客户端连接redis时候报错:连接超时报错信息:redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out at ...Caused by: java.net.SocketTimeoutException: connect timed out at ...这个错误是没有关闭防火墙导致的!解决办法:关闭防火墙命令:
分类: 其他 发布时间: 10-18 16:28 阅读次数: 0