分类 源码分析 下的文章

记一次redis并发问题


记一次redis并发处理问题

一、场景分析

所在的公司是物联网公司,涉及到向设备发送指令,现在的问题是在和天猫语音对接的一个产品线上出现了一个bug

启用组合指令模式,例如一个情景模式,1、开卧室灯、2开走廊灯、3开客厅灯

  • 上面的三个灯对于我们的产品来说就是一个开关面板,面板上面是一个三路开关,也就是每一个灯对应一个开关,如下图:

image

当天猫精灵一条控制指令发送过来,我在将指令发送给设备,流程图如下

image


[mysql] 彻底搞懂Mysql的事务隔离


mysql的事务隔离一直没有搞清楚,模模糊糊的,今天看了文档做了几个实验记录下事务的隔离级别的区别,附有代码,让自己在遇到事务隔离的问题不在一头雾水

四种事务隔离级别

  • 读未提交(Read uncommitted)
  • 读提交(read committed)
  • 可重复读(repeatable read)myqsl默认的事务隔离
  • 串行化(Serializable)


[swoft] RPC服务不能属性注入的连接池服务 分析


http请求的Controller可以通过Reference注入连接池使用连接池(如redis连接池,mysql连接池,微服务连接池)
但是测试发现Tcp请求的Controller不能通过Reference注入连接池拿到连接(null)重新看了官网的分析才发现一个重要的说明

官方:@Reference 注解可以任何Bean实例的类中使用,不仅仅是controller,这里只是测试。如果要使用延迟收包或并发,必须使用deferXxx方法。

简而言之其实所有的定义注解的类,调用方式不能是new,只能是通过bean容器取得,因为通过容器加载的类才能让其注入的属性通过动态代理实现注入