摘要: 作者:fredalxin 地址:https://fredal.xin/kubertnetes-discovery 我们来说说 kubernetes 的服务发现。那么首先这个大前提是同主机通信以及跨主机通信都是 ok 的,即同一 kubernetes 集群中各个 pod 都是互通的。这点是由更底层的方案实现,包括 do... 阅读原文
2021-05-21 09:08:02 阅读(37) 评论(0)
摘要: 我用的是MacOS High Sierra (10.13.6),没有升级,安装xcode和command line tools for xcode 遇到的问题。 我一干Java的为啥要安装这个?  因为《深入理解Java虚拟机》构建OpenJDK的编译环境。 最后忙活了一下午,回到原点。   先说结论:   未升级系... 阅读原文
2021-05-20 19:50:02 阅读(28) 评论(0)
摘要: 一、分布式锁要实现的问题 互斥:在分布式高并发的条件下,我们最需要保证,同一时刻只能有一个线程获得锁,这是最基本的一点。 防止死锁:在分布式高并发的条件下,比如有个线程获得锁的同时,还没有来得及去释放锁,就因为系统故障或者其它原因使它无法执行释放锁的命令,导致其它线程都无法获得锁,造成死锁。所以分布式非常有必要设置锁... 阅读原文
2021-05-20 18:47:07 阅读(28) 评论(0)
摘要: 简介 对象池顾名思义就是存放对象的池,与我们常听到的线程池、数据库连接池、http连接池等一样,都是典型的池化设计思想。 对象池的优点就是可以集中管理池中对象,减少频繁创建和销毁长期使用的对象,从而提升复用性,以节约资源的消耗,可以有效避免频繁为对象分配内存和释放堆中内存,进而减轻jvm垃圾收集器的负担,避免内存抖动... 阅读原文
2021-05-20 17:59:02 阅读(28) 评论(0)
摘要: 作者:fredalxin 地址:https://fredal.xin/netflix-concuurency-limits 作为应对高并发的手段之一,限流并不是一个新鲜的话题了。从Guava的Ratelimiter到Hystrix,以及Sentinel都可作为限流的工具。 自适应限流 一般的限流常常需要指定一个固定值... 阅读原文
2021-05-20 17:29:02 阅读(37) 评论(0)
摘要: 这篇文章主要讲的是面向对象设计中,我们应该遵循的六大原则。只有掌握了这些原则,我们才能更好的理解设计模式。我们接下来要介绍以下6个内容。 单一职责原则——SRP 开闭原则——OCP 里式替换原则——LSP 依赖倒置原则——DIP 接口隔离原则——ISP 迪米特原则——LOD 单一职责原则 单一职责原则的定义是就... 阅读原文
2021-05-20 16:24:09 阅读(27) 评论(0)
摘要: 1. 原始转换 提起对象转换,每个程序员都不陌生,比如项目中经常涉及到的DO、DTO、VO之间的转换,举个例子,假设现在有个OrderDTO,定义如下所示: public class OrderDTO { private long id; private Long userId; priv... 阅读原文
2021-05-20 10:11:06 阅读(30) 评论(0)
摘要: 知道这些表现,你才能在自己的程序员职业生涯中不犯相同的错误。 软件行业的工作经验和你从事这个行业的工作年限直接相关。这句话在某种程度上是对的,但是你从事这项工作的年限,并不一定代表你获得了相同年限的工作经验,正如一句话所说:“我们以为我们是工作了十年,其实却只有一年的工作经验,只不过又重复用了九年”。 有一些人虽然工... 阅读原文
2021-05-20 10:04:01 阅读(39) 评论(0)
摘要: 原因 今天小伙伴突然告诉我官网的图片突然全部都访问不了了,我一看还真是 图片是存在FastDFS上的,所以肯定是这一块出错了,于是我看了下服务器,果然果然是一个镜像为delron/fastdfs的容器挂掉了,然后将它重新启动,但是很遗憾,启动失败,一启动立刻又挂掉,我看了下日志大概是报了这个错误 ngx_http_f... 阅读原文
2021-05-19 19:24:03 阅读(27) 评论(0)
摘要: 【MyEclipse】:SSH快速搭建 ssh搭建的前提,需要掌握 spring,struts2,hibernate 这是一种快速搭建的方式,框架基本上都是自动生成好。 如有不足之处,请指教! @ 目录 【MyEclipse】:SSH快速搭建 1、数据库表 2、新建项目 2.1、创建一个web projec... 阅读原文
2021-05-19 18:38:40 阅读(30) 评论(0)