- 博客(10)
- 资源 (18)
- 收藏
- 关注
原创 Rust 实现 HashMap 全局变量
Rust实现HashMap全局变量在一些场景下,不可避免需要使用到全局变量用于保存全局性数据,比如:本地缓存本地配置信息全局计数器在这些场景中,最为常用的数据类型就是 HashMap 了,如何才能实现全局变量呢?Rust 全局变量(static)...
2022-02-26 13:47:53
3252
2
原创 JAVA原子操作的实现以及原理入门
JAVA原子操作JAVA的原子操作是由java.util.concurrent.atomic 包提供的。如下图:JAVA原子操作功能描述JAVA原子操作基本实现原理JAVA原子验证
2019-07-16 16:22:38
229
原创 利用redis实现延时回调
背景介绍实现预约功能,顾客预约饭店以后,等到预约时间后系统会调用一个接口通知商家有预约的订单到期了。为了实现该功能需要开发一个能够实时监控预约并回调指定接口。即延时回调服务。解决方案1、通过订阅redis key的过期事件来预约提醒。2、为了防止redis出现故障,使用慢轮询对数据库的预约数据进行二次处理。下图为延时回调的流程图基本流程:1、通过延时回调服务将预约的时间、回调地址以...
2019-07-12 11:15:10
2350
原创 springboot实现动态分库-逻辑schema分库
前段时间公司要开发一套企业级的Saas系统,为了方便部署和迁移因此每个企业的数据库是独立的,数据库之间没有关联。库以及表动态创建的,只有用户注册后才会动态创建。该功能实现起来比较简单,因为数据库是独立的,因此不需要考虑事务问题、跨库查询等分库分表的常见问题。但是因为因为云端部署多个数据库成本很高并且会造资源浪费,因此采用的是逻辑分库的方式及创建多个schema的方式进行分库。我们目前使用的...
2019-06-04 16:11:10
3435
原创 OpenResty中post请求body数据部分丢失问题解决
在使用OpenResty的resty.http进行post请求时,发现body中的数据部分丢失。 经过调查发现,原来是因为body在传入到nginx后,代码中有对body内容进行修改的操作,如下图:查看resty.http源码后发现 原来body的Content-Length的长度如果不为空则不会重新计算长度,因此body内容会丢失。所以修改方式为: 在进行post请求之前重新计...
2018-02-26 13:22:22
5787
原创 RabbitMQ连接池+SpringBoot实现
RabbitMQ连接池+SpringBoot实现目前存在的问题在使用RabbitMQ官方的Client时,Connection对象创建的是TCP连接,TCP连接的创建和销毁本身就是很耗时。因此需要使用连接池技术预生成Connection,每次使用都从连接池中获取Connection。 在使用SpringBoot时,RabbitTemplate比较死板,不能够满足项目中动态创建队列并发送...
2018-02-11 19:46:49
11603
原创 zeus作业平台在hadoop2.x中的安装部署
前期工作:1、hadoop 2.7.3安装。 2、hive 2.1.1安装。 3、java 1.7安装。 4、mysql安装。 5、maven 3.3.9安装。 6、tomcat 7.0安装。 7、安装dos2unix。(命令:yum install -y dos2unix)zeus安装配置1、下载zeus下载zeus:https://github.com/michael8335/zeu
2017-04-04 15:27:51
3193
3
原创 HIVE2的安装过程以及问题解决
在安装HIVE的时候遇到了很多问题,在网上也查了很多资料但是有些问题没有明确的解决方法,所以决定自己写一篇关于HIVE安装过程以及我在遇到安装失败时是如何解决的文章。HIVE安装步骤: 在安装HIVE之前,java环境、hadoop以及mysql都应该已经部署完成,在这里不做过多介绍,接下来直入主题。下载apache-hive-2.1.1-bin.tar.gz(下载地址)并执行命令 tar -
2017-03-25 08:13:55
1090
MyJdbcTemplate.zip
2019-06-04
RabbitMQ连接池+SpringBoot实现
2018-02-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人