摘要:
昨天讲了WeakHashMap, 有人私信我说其他的都好理解,但是PhantomReference不知道干啥用的。很多书上都写“为一个对象设置虚引用关联的唯一目的就是能在这个对象被收集器回收时收到一个系统通知"。这句话更不好理解,不是有WeakHashMap了么?在GC的时候可以回收了。为啥再搞一个 阅读全文
posted @ 2021-04-25 09:13
程序员札记
阅读(190)
评论(0)
推荐(0)
摘要:
我们在日常工作中,对于一些没有固定销毁时间点的对象,通常会考虑用WeakHashMap 来协助自动销毁对象。 举个例子,根据不同的request出错信息的key,自动找到相关的翻译内容。就是常说的国际化,I18n。软件出错的信息是不固定的,如果每次load完内容,就销毁又性能不高。所以通常想法是做 阅读全文
posted @ 2021-04-24 12:30
程序员札记
阅读(139)
评论(0)
推荐(0)
摘要:
从技术上看,消息系统有如下的测试难点: 业务逻辑不清,测试用例不足 许多应用因为年代久远,中间又几经转手,大部分都没有测试用例了。再加上大部分团队都不是很清楚老应用的业务逻辑,需要大量的时间来读代码,制定实际测试方案,从而进行测试。 数据流向不固定,消费对象难定位。 消费者并行地消费消息,很难保证特 阅读全文
posted @ 2021-04-22 08:16
程序员札记
阅读(92)
评论(0)
推荐(0)
摘要:
目前社区越来越靠近开源,很多的基础架构也不在从头造轮子,都是基于开源项目的基础上进行再一步封装。比如针对restful,通常是使用开源的jersey。但是开源的产品通常都是提供核心功能,并不能提供企业级运行所需要的功能。这就需要我们哪来一个开源产品进行进一步封装。 很多人经常提问,封装到底到底需要考 阅读全文
posted @ 2021-04-21 10:11
程序员札记
阅读(90)
评论(0)
推荐(0)
摘要:
序言 玄之又玄,众妙之门。 --《道德经》 Framework 看起来很抽象,理解一个具体的Framework,通常由具体的文档开始。但是有没有想过,它为什么这么设计,它是怎么抽象到这个层面的。Framework 的演化历史又说明了什么。我对这个的好奇其实比看具体的调用方式更感兴趣。尤其最近两年做P 阅读全文
posted @ 2021-04-20 18:35
程序员札记
阅读(351)
评论(0)
推荐(0)
摘要:
从IBM JDK 6 迁移到 Open JDK 8, 大部分是没有问题的。少部分我们也踩了些坑。这是第一个坑。 if(!isCaseFlag){ if(isConfig){ //do business logic return; } if(isCaseFlagl){ //do business lo 阅读全文
posted @ 2021-04-20 12:58
程序员札记
阅读(158)
评论(0)
推荐(0)
摘要:
代码里有这样一段需求,先去取得 approval ,再去进行 deploy, 采取了多线程运行,代码运行上去之后,发现线程积压严重。请求量并不大,但是系统就hung在那里。 发现代码出现问题的大概是这段逻辑 CompletableFuture<List<Map<String, Object>>> m 阅读全文
posted @ 2021-04-20 08:26
程序员札记
阅读(462)
评论(0)
推荐(0)
摘要:
福如东海成流水,寿比南山不老松。横批 福禄绵延。 这是我们对人的期望。希望他reliable(寿),scalble(福),maintainable (禄),这就是通常人们所说的三星高照。 人是如此,应用亦是。 我们也希望我们的系统三星高照。我们在实际工作中对系统的稳定的理解增加了一些经验。我们这里把 阅读全文
posted @ 2021-04-19 15:59
程序员札记
阅读(343)
评论(0)
推荐(0)
摘要:
在一个case 中需要写这样一段代码, 写一个Spring的bean 来解析HttpServletRequest的传递的command 信息,command 的名字作为后台request 记录的键值。需要写入的代码类如下: @Bean public class CommandParser imple 阅读全文
posted @ 2021-04-19 13:28
程序员札记
阅读(240)
评论(0)
推荐(0)