RocketMQ集群搭建 准备三台虚拟机,如我的是CentOS7 , 三台机器的IP分别是: 192.168.20.132、192.168.20.131、192.168.20.1303. 安装JDK 最好是Oracle官方的,不要用OpenJDK 配置/etc/profile,在文件后追加 使环境变量生效 检查是否安装成功4. 安装RocketMQ 官网下载压缩包然后解压,然后配置环境变量,三台服务器都要。5. 配置RocketMQ集群 服务
Redis 集群 Redis Cluster搭建 1. 下载安装RedisRedis集群需要至少三个master节点,我们这里搭建三个master节点192.168.20.130,192.168.20.131,192.168.20.132,并且给每个master再搭建一个slave节点(一个节点一主一从,通过端口号区分),总共6个redis节点,这里用三台机器部署6个redis实例,每台机器一主一从,搭建集群的步骤如下:1. 下载安装Redis下载地址:http://redis.io/download安装步骤:# 安装gcc。
漫谈区块链 我自从接触比特币、区块链后就对此产生深厚兴趣,后面经过长时间的学习研究(曾经泡首都图书馆读了几十本相关书),结合自己的认知与经历,不由得想写篇文章玩玩。本文章主要说一下区块链和DEFI,然后分析利弊与痛点,脑洞一下DEFI融合信用卡的设计方案。比特币起源区块链起源于比特币,比特币的创始人是中本聪,中本聪是密码朋克的一员,所以故事从密码朋克讲起。1992年,美国的三位退休技术大咖叫了20位朋友一起开了个非正式会议,会议跟程序和密码相关,后面这个会议变...
完全去中心化的调度系统Tiger 1. 背景介绍本人参与过国内两家大银行的系统开发,其中参与最多的是批量任务,虽然两个行的批量架构有所不同,但有一点相同的是它们都依赖其它组件,比如依赖调度,依赖MQ等等。这样做的好处明显,符合架构设计中的职责单一的原则,但是也引来一些问题,比如: 1.单点故障导致服务不可用; 2.执行节点故障转移后原节点状态未知导致最终处理结果有误;根本原因是什么? 1.虽然是分布式架构,但架构属于中心化架构,中心区组件的不可用会导致整个系统不可用。 2.故障转移的根本原因除...
某项目总结 两年的总结,只写问题,好的地方就不写了。主要是几个问题。管理乱。这个具体体现在甲方的任务安排上,有大的时间计划,但是中间会穿插各种临时任务,后迭代的东西提前到前一个迭代,在不加时间不加人力的情况下开发不得以牺牲代码质量。任务没有优先级,扁平化管理,谁都能给开发分配任务,忙了一天都不知道在瞎忙什么。有jira这样的任务管理工具,但是他们不用。先做后改的做风,没有设计好没想好上来就先干,有问题再反复去改,浪费时间。BABA其实是业务分析师,主要是把业务场景梳理清楚,是有一套.
某项目总结分析(吐槽) 本人来上海参与某个银行的某个项目将近一年,针对甲方提出的三个点做具体的分析。这三个点是(这三个点应该是整个行业的通病):开发效率低 系统运行效率低 质量差(BUG多)在分析这三个问题之前,我需要先阐述本项目的开发流程。如下图:由于系统还未上线,所以以上流程不够全,只能发现现有流程的问题,同时本人毕竟只负责一部分,遇到的问题并不全,仅拿自己遇到过的作分析。这么长的流程,有句话说...
手写轻量级IOC框架 package com.pab.cc.aplus.ams.service.common.h2.ioc;import com.pab.cc.aplus.ams.service.common.h2.mybatis.MyBatisHelper;import com.pab.cc.aplus.ams.service.common.h2.util.AnnotationUtil;import com....
SpringBatch启动流程 1. SpringApplication中调用afterRefresh方法2.调用CommandLineRunner3.JobLauncherCommandLineRunner调用jobLauncher.run()方法启动job4.同步执行job5.抽象类AbstractJob调用子类SimpleJob的doExecute方法7. 逐个执行job下...
SpringBatch Flow并行问题(1) 有如下需求,先执行testStep,然后后面flow1,flow2并行执行。配置代码如下但是执行结果不符合预期,testStep和flow1、flow2并行跑,而非testStep先执行。原因如下:这种需求场景在SpringBatch官方手册中并没有说明如何使用,于是读源码发现(FlowBuilder类):所以解决方案:启动验证:发现testStep...
SpringBatch源码解析之SpringBatch加载配置(一) 起源于一个@EnableBatchProcessing注解,开启SpringBatch功能。先看此注解:注意Import,点进BatchConfigurationSelector一探究竟。它实现了ImportSelector,作用就是加载其它配置,这里红圈中的是我们需要关注的,加载的SimpleBatchConfiguration配置,上面的ModularBatchConfig...
Openshift 学习一(搭建Openshift环境) 目的: 搭建Linux下的Openshift环境。参考资料: 开源容器云OpenShift 构建基于Kubernetes的企业应用云平台 ,陈耿 ,P253 ,2017.06 .pdf 下载地址:https://pan.baidu.com/s/1_D1k9tJpFTGr3wdnoeh7rA环境准备: 1.Linux 64位,CentOS 7 minim...
阿里云Linux服务器CentOS 6.9搭建Jenkins 刚买了个阿里云Linux服务器,CentOS 6.9,搭建个Jenkins玩玩。 网上教程一堆,搭建方式也不同,有的说下个war包然后扔到tomcat里,估计发教程的哥们写的比较早吧,我去官网就没看到war包,发现两种方式,一是yum安装,另一个是rpm安装。如下: yum方式不行,貌似有墙,果断换成rpm安装方式。
lambda表达式foreach性能分析 java 8的新特性之一就是lambda表达式,parallelStream()都说性能会比较高,现一探究竟。话不多说,上代码: @Test public void test2(){ List<String> list = new ArrayList<>(); for(int i=0;i<10000;i++)...
Linux中Mysql配置主从同步 声明:初次搭建,以跑起来为目的,高深的东西以后再说。1.两台Linux服务器,192.168.99.110,192.168.99.165,各部署一个mysql,版本5.1。2.确定主从,192.168.99.110为主,192.168.99.165为从。3.从库会登录主库来同步,所以在主库创建从库登录用的用户 mysql>insert into mysql
nginx配置负载均衡 主要配置nginx.conf文件#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { wor
使用dubbo协议请求时的异常及解决方法 1. nested exception is com.alibaba.dubbo.rpc.RpcException: Forbid consumer 192.168.31.11 access service jrx.anytxn.interfaces.BankCardService from registry 10.10.14.16:2181 use dubbo version 2.8
策略模式 一、什么是策略模式? 策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。 说白点就是1个接口,N个具体实现,根据不同的场景使用不同的实现。二、为什么要用策略模式? 根据不同的场景解决不同的问题在开发中经常遇到,久而久之前人
使用intellij idea 启动dubbo报java.lang.ClassNotFoundException: javassist.ClassPath javassist-3.18.1-GA.jar包有问题,改成 org.javassist javassist 3.18.0-GA或其它版本。