人间日常

所行皆过往,所愿皆成真

正在加载今日诗词....

龙年新春祝福词

龙年新春祝福词

1、朋友们大家好,我是XX,在新年里给大家拜年;祝大家在新的一年里边顺顺利利,666

2、哈喽大家好,我是xx,在这里给大家拜年了,祝大家新年快乐,事事顺心如意

阅读全文

《c++之路》--线程管理

主要内容

  • 启动新线程
  • 等待线程与分离线程
  • 线程唯一标识符

先做点什么呢?启动线程、结束线程,还是如何监管线程?在C++标准库中只需要管理std::thread关联的线程,无需把注意力放在其他方面。不过,标准库太灵活,所以管理起来不会太容易。

本章将从基本开始:启动一个线程,等待这个线程结束,或放在后台运行。再看看怎么给已经启动的线程函数传递参数,以及怎么将一个线程的所有权从当前std::thread对象移交给另一个。最后,再来确定线程数,以及识别特殊线程。

阅读全文

从Apollo动态配置原理学Spring(二)

Apollo动态配置其实本质就是利用Spring Bean 的生命周期的扩展点,这个扩展点超级多,不可能全部列出来,只说核心的扩展点。这也就是为什么 Spring 的扩展性很好的原因,开了很多的口子,尽可能让某个功能高内聚松耦合,用户需要哪个功能就用哪个,而不是直接来一个大而全的东西。

我们先通过学习核心的,然后后续对照Apollo用到了哪些再对照,就会发现很多地方就能理解的很好了

阅读全文

从Apollo动态配置原理学Spring(一)

最近工作碰到需要写一个类似携程Apollo的动态配置功能,以此系统学习该原理,熟练掌握下Spring的各种机制

Apollo动态配置原理简述

Apollo配置中心动态生效机制,是基于Http长轮询请求和Spring扩展机制实现的,在Spring容器启动过程中,Apollo通过自定义的BeanPostProcessorBeanFactoryPostProcessor將参数中包含${…}占位符和@Value注解的Bean注册到Apollo框架中定义的注册表中。然后通过Http长轮询不断的去获取服务端的配置信息,一旦配置发生变化,Apollo会根据变化的配置的Key找到对应的Bean,然后修改Bean的属性,从而实现了配置动态生效的特性。

需要注意的是,Apollo在配置变化后,只能修改Bean的属性,例如我们数据源的属性发生变化,新创建的Connection对象是没问题的,但是连接池中已经创建的Connection对象相关信息是不能动态修改的,所以依然需要重启应用。

阅读全文

元宵节,放了烟花

烟花又称[花炮]、烟火、焰火、[炮仗],根据《中国[烟花爆竹]标准—安全与质量》对烟花爆竹的定义为:以烟火药为原料,用于产生声光色的娱乐用品。中国劳动人民较早发明,常用于盛大的典礼或表演中。

烟花其实和爆竹的结构类似,其结构都包含黑[火药]和药引。为了达到好的表演效果,[焰火]和[礼花弹]中填充了大量用于发射以及爆炸的火药,例如,一个直径为20厘米的礼花弹在发射后,要上升到大概200米的高空才会爆炸,而这些星星点点覆盖的[半径]大约可以有80米左右。

阅读全文

关注我

湘ICP备2020021380号-1
© 2014 - 2024 SIWEN.PENG