摘要: Java SDK 并发包里提供的原子类内容很丰富,我们可以将它们分为五个类别:原子化的基本数据类型、原子化的对象引用类型、原子化数组、原子化对象属性更新器和原子化的累加器。这五个类别提供的方法基本上是相似的,并且每个类别都有若干原子类,你可以通过下面的原子类组成概览图来获得一个全局的印象。 1. 原 阅读全文
posted @ 2020-03-01 17:43 架构之路 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 经典的ABA问题: ABA问题存在CAS无锁方案中,我们写一个CAS的伪代码栗子: class SimulatedCAS{ volatile int count; int newValue; //实count+=1 addOne(){ do { newValue=count+1; //① }whil 阅读全文
posted @ 2020-03-01 17:40 架构之路 阅读(423) 评论(0) 推荐(0) 编辑
摘要: 举个栗子: 原子性问题我们前面一直都是采用的互斥锁方案。 其实对于简单的原子性问题,还有一种无锁方案。Java SDK 并发包将这种无锁方案封装提炼之后,实现了一系列的原子类。 下面 Test中add的方法在,在多线程的情况下count最终可能<100000;因为 add 方法是非线程安全的。 1 阅读全文
posted @ 2020-03-01 17:35 架构之路 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 一、为何策略呢 举个栗子:上班族(Person)上班,可以骑车、坐公交、坐地铁,打滴滴或者步行,对Person来说,这些出行方式都是一个策略。 在软件领域也就是说一个类的一个动作方法,有不通的执行方式。比如很多个Person进行排序。可以按照身高来排序,按照体重来排序,按照年龄来排序。那Person 阅读全文
posted @ 2020-02-29 14:45 架构之路 阅读(247) 评论(0) 推荐(0) 编辑
摘要: linux定时任务crontab 主要是做一些周期性的任务,比如凌晨2点定时备份某些数据等。 计划任务主要分为以下两种使用情况: 1.系统级别的定时任务 临时文件清理、系统信息采集、日志文件切割 2.用户级别的定时任务 定时向互联网同步时间、定时备份系统配置文件、定时备份数据库的数据。 Cronta 阅读全文
posted @ 2020-02-26 14:15 架构之路 阅读(211) 评论(0) 推荐(0) 编辑
摘要: StampedLock 支持的三种锁模式 写锁、悲观读锁和乐观读 我们先来看看在使用上 StampedLock 和上一篇文章讲的 ReadWriteLock 有哪些区别。ReadWriteLock 支持两种模式:一种是读锁,一种是写锁。而 StampedLock 支持三种模式。其中写锁、悲观读锁的语 阅读全文
posted @ 2020-02-25 23:21 架构之路 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 最近项目需要国际化,一般常见的方式就是采用配置文件话国际化。 根据请求头传入不同的语言,返回不同的内容; 自己搭建了一个模型,分如下几步: 1.spring配置文件修改,定义国际化消息 2.查找项目中需要返回到web的国际化内容,写到配置文件中 3.处理国际化封装成一个工具类,在controller 阅读全文
posted @ 2020-02-25 17:10 架构之路 阅读(1778) 评论(0) 推荐(0) 编辑
摘要: 在日常工作中,我们会从一个表复制数据插入到另外一个表,当表结构不一致时(字段大小、类型都相同),可以用如下语句。 insert into A(col1, col2) select col1, col2 from B; 例如: INSERT INTO talbe1(NAME,age,STATUS,is 阅读全文
posted @ 2020-02-24 17:47 架构之路 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 背景: 日常工作中,经常需要用SQLyog客户端查询数据的,例如,拷贝ID值,身份证ID值。并且以逗号或者分号,间隔。 一、获取逗号间隔的列值 按照如下操作就可以了。 思考题: 如果是字符串,我们需要‘aa’,‘bb’,'cc' 引号+逗号间隔,怎么操作呢? 【指定转义字符】对话框不好设置,我们可以 阅读全文
posted @ 2020-02-24 13:32 架构之路 阅读(527) 评论(0) 推荐(0) 编辑
摘要: 场景:开发的项目需要部署到多台服务器上,服务器log日志目录、部署目录、tomcat目录类似。如果线上有问题太,我们需要查看主服务器日志,在查看从服务器日志。经常需要手动敲写命令,切换目录。这么繁琐的工作,有没有想过“走捷径”呢?作为一名攻城狮,当然需要想一招了。 方法:xshell工具自带的【命令 阅读全文
posted @ 2020-02-24 11:29 架构之路 阅读(264) 评论(0) 推荐(0) 编辑
========================================================================== 如果您觉得这篇文章对你有帮助,可以【关注我】或者【点赞】,希望我们一起在架构的路上,并肩齐行 ==========================================================================