自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(131)
  • 收藏
  • 关注

转载 阿里最新开源配置中心和注册中心: Nacos 限流最佳实践

Nacos 限流最佳实践 Tomcat 限流 Nginx 限流 限制访问速率 限制并发连接数 黑名单 总结 作者:风卿(Nacos 社区 committer)本文系投稿。如果胖友有想要投稿的内容,欢迎后台留言。哇咔咔。Nacos 限流最佳实践Nacos自开源以来,版本迭代速度很快,已经发布了0....

2019-09-03 21:50:14 1352

转载 为什么美国程序员工作比中国程序员工作轻松、加班少?

真是这样的 产品层面拍脑袋决策多 技术团队话语权低 技术基础设施差 畸形的职场文化 先问是不是,再问为什么。难道美国的程序员就不加班吗?他们就一天八小时工作,还想来就来,想走就走?非工作时间完全找不到人?还有什么食物饮料都免费提供?让我来告诉你真实的情况吧,还…真是这样的加班文化应该是中美两地最明显的不同了,形成这种差异的原因不是...

2019-08-23 14:28:49 306

原创 解决Spring MVC @ResponseBody返回中文字符串乱码问题

解决Spring MVC @ResponseBody返回中文字符串乱码问题引起乱码原因为spring mvc使用的默认处理字符串编码为ISO-8859-1,具体参考org.springframework.http.converter.StringHttpMessageConverter类中public static final Charset DEFAULT_CHARSET = Charset...

2018-10-30 19:42:37 3280 1

原创 微服务之API网关接口设计

微服务之API网关接口设计API网关,顾名思义,就是外部到内部的一道门,其主要功能:服务路由:将前段应用的调用请求路由定位并负载均衡到具体的后端微服务实例,对于前端应用看起来就是1个应用提供的服务,微服务对于前段应用来说就是黑盒,前段应用也不需要关心内部如何分布,由哪个微服务提供。主要有静态路由和动态路由。 静态路由:有时候需要通过域名或者其他固定方式提供和配置路由表 动态路...

2018-10-28 14:30:22 4756

原创 【金九银十跳槽季】Java工程师如何在1个月内做好面试准备?

一面(问了数据结构、jvm、锁等):自我介绍和项目 HashMap底层如何实现? Hash一致算法? 说说HashMap和ConcurrentHashMap的区别?treemap和HashMap的区别? java的内存分区? java对象的回收方式,回收算法? CMS和G1了解吗? CMS解决什么问题,说一下回收的过程? CMS回收停顿了几次? java栈什么时候会内存溢出,java堆呢,说一种场景? 集合类如何解决这个问题(软引用和弱引用),讲下这个两个引用的区别? jav...

2020-09-22 20:36:33 259

转载 全球最厉害的 14 位程序员,大神收下我的膝盖

1. Jon Skeet 2. Gennady Korotkevich 3. Linus Torvalds 4. Jeff Dean 5. John Carmack 6. Richard Stallman 7. PetrMitrechev 8. FabriceBellard 9. Doug Cutting ...

2019-09-05 09:51:44 449

转载 阿里云 Redis 开发规范

一、键值设计 二、命令使用 三、客户端使用 四、相关工具 五 附录:删除bigkey 一、键值设计1. key名设计 (1)【建议】: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idugc:video:1 (2)【建议】:简洁性 保证语义的前提下,控制key的...

2019-09-05 09:45:19 245

转载 还在使用 SimpleDateFormat?你的项目崩没?

问题场景复现 多线程不安全原因 解决方案 只在需要的时候创建新实例,不用static修饰 synchronized大法好 ThreadLocal 基于JDK1.8的DateTimeFormatter 日常开发中,我们经常需要使用时间相关类,说到时间相关类,想必大家对SimpleDateFormat并不...

2019-09-05 09:43:43 142

转载 如何实现一个权限管理系统?(附源码)

项目特点 Shiro的认证和授权 系统安全一直是在系统开发中不可规避的问题,而权限控制又跟系统安全密不可分,大到用户的访问,小到一个页面的按钮,都有可能涉及到权限的控制。而renren-security便给我们提供了一套权限系统开发的解决方案。renren-security是"人人社区"社区开源的轻量级权限管理系统。系统采用SprinBoot、Mybatis、Shiro...

2019-09-05 09:40:54 1496

转载 深度对比三种主流微服务配置中心

为什么需要配置中心 开源配置中心基本介绍 配置中心核心概念的对比 配置管理功能的对比 配置实时推送的对比 部署结构 & 高可用的对比 多语言支持的对比 功能特性对比总结 参考文档 在撰写这篇技术选型的文章之前,是比较犹豫的。因为,以其中一个开源项目开发者的身份,去写一篇三个开源项目的对比,即便很克...

2019-09-05 09:35:36 472

转载 26 款阿里超神 Java 开源项目,看看你用过几个?

1.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba 2. JDBC 连接池、监控组件 Druid 3. Java 的 JSON 处理器 fastjson 4. 服务框架 Dubbo 5. 企业级流式计算引擎 JStorm 6. apns4j 7. 分布式数据层 TDDL 8. 轻量级分布式数据...

2019-09-05 09:31:07 172 1

转载 Nginx 搭建图片服务器

本章知识点 单元测试 Maven 的Web 项目 项目核心配置文件 Service 层 Controller 层 Views视图层 总结 本章内容通过Nginx 和 FTP 搭建图片服务器。在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd。Nginx 安装...

2019-09-04 13:52:25 143

转载 Spring Boot 最流行的 16 条实践解读!

1、使用自定义BOM来维护第三方依赖 2、使用自动配置 3、使用Spring Initializr来开始一个新的Spring Boot项目 4、考虑为常见的组织问题创建自己的自动配置 5、正确设计代码目录结构 6、保持@Controller的简洁和专注 7、围绕业务功能构建@Service 8、使数据库独立于核心业务逻辑之...

2019-09-04 13:47:45 127

转载 全文搜索引擎选 ElasticSearch 还是 Solr?

什么是全文搜索 为什么要用全文搜索搜索引擎 Lucene,Solr,ElasticSearch ? Elasticsearch vs Solr 的选择 总结 最近项目组安排了一个任务,项目中用到了基于 Solr 的全文搜索,但是该 Solr 搜索云项目不稳定,经常查询不出来数据,需要手动全量同步。而且它还是其他团队在维护,依赖性太强,导致 ...

2019-09-04 13:45:47 199

转载 链路追踪 SkyWalking 源码分析 —— Collector Server Component 服务器组件

本文主要基于 SkyWalking 3.2.6 正式版 1. 概述 2. 接口 2.1 Server 2.2 ServerHandler 3. gRPC 实现 3.1 GRPCServer 3.2 GRPCHandler 4. Jetty 实现 4.1 JettyServer ...

2019-09-04 13:36:57 210

转载 一千个不用 Null 的理由

1、NULL 为什么这么多人用? 2、是不是以讹传讹? 3、给我一个不用 Null 的理由? Refer 港真,Null 貌似在哪里都是个头疼的问题,比如 Java 里让人头疼的 NullPointerException,为了避免猝不及防的空指针异常,千百年来程序猿们不得不在代码里小心翼翼的各种 if 判断,麻烦而又臃肿,为此 java8 引入了 Opt...

2019-09-04 13:26:04 114

转载 给程序员的几条建议,精彩配图

1. 想清楚,再动手写代码 2. 不交流,就会头破血流 3. 文档没人看,但还是要写 4. 一定要写注释 5. 别指望需求会稳定 6. 业务高于技术 7. 不要心存侥幸 8. 自己先测几遍 9. 尽可能自己解决问题 10. 慎用新技术 1. 想清楚,再动手写代码刚入行的新手,为了展示自己的能...

2019-09-04 13:23:03 144

转载 一文读懂分库分表的技术演进(最佳实践)

Why Not NoSQL/NewSQL? Why Not 分区? Why 分库分表? 实战案例 订单表 用户表 账户表 复杂查询 es+HBase简要 延伸阅读 es+HBase原理 HBase检索能力扩展 总结 ...

2019-09-03 22:17:25 265

转载 链路追踪 SkyWalking 源码分析 —— Collector Client Component 客户端组件

本文主要基于 SkyWalking 3.2.6 正式版 1. 概述 2. Client 3. ElasticSearchClient 4. GRPCClient 5. H2Client 6. RedisClient 7. ZookeeperClient 666. 彩蛋 1. 概述本文主要分享SkyWalki...

2019-09-03 22:02:26 219

转载 包装严重的 IT 行业,作为面试官,我是如何甄别应聘者的包装程度

一、初选如何鉴别劣质简历 二、进入面试阶段,如何甄别对方的水分 在互联网极速膨胀的社会背景下,各行各业涌入互联网的IT民工日益增大。早在2016年,我司发布了Java、Ios工程师的招聘信息,就Java工程师单个岗位而言,日收简历近200份,Ios日收简历近一千份。没错,这就是当年培训机构对Ios工程师这个岗位发起的市场讨伐。而随着近几年的发展,市场供大于求现象日益...

2019-09-03 21:48:54 213

转载 为何 IntelliJ IDEA 比 Eclipse 更好?

争论 为何我如此确信? IDEA与Eclipse主要的不同 1、调试 2、自动完成 3、重构 不时的惊喜 结论 P.S. Remarks 最后的建议 争论有一些没有唯一正确答案的“永恒”的问题,例如,更好的是:Windows还是Linux,Java还是C#;谁更强大:Chu...

2019-09-03 17:33:53 238

转载 8 张图,看你是否理解 Java

1、字符串不变性 2、equals()方法、hashCode()方法的区别 3、Java异常类的层次结构 4、集合类的层次结构 5、Java同步 6、别名 7、堆和栈 8、Java虚拟机运行时数据区域 一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明...

2019-08-31 15:34:33 165

转载 分布式链路追踪 SkyWalking 源码分析 —— Collector Cluster 集群管理

本文主要基于 SkyWalking 3.2.6 正式版 1. 概述 2. collector-cluster-define 3. collector-cluster-zookeeper-provider 4. collector-cluster-standalone-provider 5. collector-cluster-redis-provid...

2019-08-31 15:18:55 506

转载 分享 15 个好用 + 实用的 Chrome 扩展

1. 新浪微博图床 2. AdBlock 3. WEB 前端助手 4. JSON Viewer 5. Standardized Screenshot 6. Clear Cache 7. 翻译侠 8. 图流 9. 阅读模式 10. Octotree 11. Enhanced Github ...

2019-08-31 15:02:23 259

转载 鸟瞰 Java 并发框架

1. 为什么要写这篇文章 2. 分析并发框架的示例用例 3. 快速更新线程配置 4. 性能测试结果 5. 使用执行器服务并行化 IO 任务 6. 使用执行器服务并行化 IO 任务(CompletableFuture) 7. 使用 ExecutorService 并行处理所有任务 8. RxJava 9. Disr...

2019-08-31 14:41:06 92

转载 一名 40 岁“老”程序员的反思~

两个概念 三个阶段 两个方向 <本文是国外一位 40 岁“老”程序员对职业生涯的思考,他认为从长远来看,应该多投资一些不容易过期、衰竭期较长的知识领域中。译文大意如下。>我是一名程序员,几个月前刚过完四十岁生日。某个星期六的早晨,我参加了一个 React Native 技术交流会,演讲者正在竭力说服我们为什么它会成为移动开发领域真正的下一个大事件。...

2019-08-31 14:13:15 100

转载 系统运行缓慢,CPU 100%,以及Full GC次数过多问题的排查思路

1. Full GC次数过多 2. CPU过高 3. 不定期出现的接口耗时现象 4. 某个线程进入WAITING状态 5. 死锁 6. 小结 处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。本文主要针对系统运行...

2019-08-31 14:10:34 180

转载 分布式链路追踪 SkyWalking 源码分析 —— Collector 初始化

本文主要基于 SkyWalking 3.2.6 正式版 1. 概述 2. CollectorBootStartUp 2. ApplicationConfigLoader 3. ModuleManager 3.1 Module 3.2 ModuleProvider 3.3 Service 3.4 Boot...

2019-08-30 20:33:15 289

转载 震惊了!原来这才是 Kafka!(多图+深入)

简介 生产 消费 消息投递语义 文件组织 常用配置项 简介kafka是一个分布式消息队列。具有高性能、持久化、多副本备份、横向扩展能力。生产者往队列里写消息,消费者从队列里取消息进行业务逻辑。一般在架构设计中起到解耦、削峰、异步处理的作用。kafka对外使用topic的概念,生产者往topic里写消息,消费者从读消息。为了做到...

2019-08-30 20:23:54 208

转载 三年半 Java 后端鹅厂面试经历

鹅厂 一面基础技术面 二面项目技术面 三面综合技术面 总结 某东南亚互联网公司 一面技术面 二面研发经理综合面试 经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于开始重拾面试信心,再次出征。鹅厂面试职位:go后端开发工程师,接受从Java转语言都知...

2019-08-30 20:16:10 205

转载 一个比 Spring Boot 快 44 倍的 Java 框架

light-java是内置了undertow http服务器的REST微服务轻量Java框架,它比Spring Boot内嵌Tomcat这样流行的微服务平台要快44倍,与Go语言fast-http性能接近。基准测试特点:1.带有启动停止的插件架构和中间价组件。2.分布式OAuth2 JWT安全验证3.基于OpenAPI的请求响应验证。4.支持服务和客户端测量收集和面板显示5.全局异...

2019-08-30 19:45:52 128

转载 手写一个迷你版的 Tomcat 喵

前言 Write MyTomcat 2.1 MyRequest 2.2 MyResponse 2.3 MyServlet 2.4 ServletMapping 和 ServletMappingConfig 2.5 MyTomcat 2.6 Test MyTomcat 前言Tomca...

2019-08-30 19:42:25 107

转载 不止 JDK7 的 HashMap ,JDK8 的 ConcurrentHashMap 也会造成 CPU 100%?原因与解决~

现象 原因 解决 现象大家可能都听过JDK7中的HashMap在多线程环境下可能造成CPU 100%的现象,这个由于在扩容的时候put时产生了死链,由此会在get时造成了CPU 100%。这个问题在JDK8中的HashMap获得了解决。其实JDK7中的HashMap在多线程环境下不止只有CPU 100%这一共怪异现象,它还可能造成插入的数据丢失,有兴趣的读者可...

2019-08-30 19:33:54 139

转载 一份超详细的 Java 问题排查工具单

前言 排查利器 大杀器 plugin of intellij idea VM options jar包冲突 其他 新技能get 前言平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出...

2019-08-29 16:35:16 188

转载 应用性能管理の巅峰对决:Apache Skywalking P.K. Pinpoint

社区比较 支持语言比较 协议比较 存储比较(重要) UI比较 扩展性比较 告警比较 JVM监控 服务监控 跟踪粒度比较 过滤追踪 性能损耗 发布包比较 支持组件比较 总结 参考链接 说明:本次对比基于skywalking-6.0.0-...

2019-08-29 16:18:08 347

转载 一次生产的 JVM 优化案例

背景 GC数据 GC日志 分析与优化 背景生产环境有二台阿里云服务器,均为同一时期购买的,CPU、内存、硬盘等配置相同。具体配置如下:节点 CPU 内存 硬盘 其它 A 2CPU 4G 普通云盘 Centos6.4 64位+JDK1.8.0_121 B 2CPU 4G 普通云盘...

2019-08-29 15:55:11 1008 1

转载 深入浅出,Spring 框架和 Spring Boot 的故事

Spring 框架的历史 起点 Spring 诞生 Spring 框架的快速增长 Spring Boot 的历史 Spring IO 和 Spring Boot Spring 时间线图表 Spring 框架可以说是 Java 开发人员使用的最流行的应用程序开发框架之一。它目前由大量提供一系列服务的模块组成。...

2019-08-29 15:43:35 120

转载 值得收藏:一份非常完整的 MySQL 规范

一、数据库命令规范 二、数据库基本设计规范 三、数据库字段设计规范 四、索引设计规范 五、常见索引列建议 六、如何选择索引列的顺序 七、避免建立冗余索引和重复索引 八、优先考虑覆盖索引 九、索引SET规范 十、数据库SQL开发规范 十一、数据库操作行为规范 一、数据库命令规范·所有数据...

2019-08-29 15:38:15 80

转载 一文看透 Redis 分布式锁进化史(解读 + 缺陷分析)

各个版本的Redis分布式锁 V1.0 V1.1 基于[GETSET] V2.0 基于[SETNX] V3.0 V3.1 分布式Redis锁:Redlock 总结 近两年来微服务变得越来越热门,越来越多的应用部署在分布式环境中,在分布式环境中,数据一致性是一直以来需要关注并且去解决的问...

2019-08-29 15:33:49 200

转载 阿里第一届天池 PolarDB 数据库性能大赛小结(深度多图)

比赛背景 赛题剖析 核心设计思想 全局架构 存储方案 关键参数 随机写设计思路 随机写关键点 Open DB 阶段 Drop Cache 优化 随机读 Range 整体工程优化 memcpy 4k 加速 失败的尝试 最佳成绩 思考与展望...

2019-08-28 16:15:19 374 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除