1、Java开发工具:Intellij idea
2、JDK开发版本:1.7及以上
3、WEB容器:Tomcat
4.、WEB服务器:Linux
5、内存数据库:redis
6、数据库:mysql
7、数据库连接工具:mybatis
8、系统版本管理:Git
9、包管理工具:maven-helper
8、MQ全称消息队列,是一种异步通信的中间件,常见的消息中间件有kafka、activemq、zeromq、rabbitmq等
RabbitMQ是一个遵循AMQP协议,由面向高并发的erlang语言开发,应用于实时高并发的场景,支持延迟队列。
RabbitMQ的基础概念:
Broker:消息队列服务器实体
Exchange:消息交换机,指定规则和路由
Queue:消息队列的实体,每个消息会被投入到一个或者多个队列
Binding:按照路由规则将Exchange和Queue链接起来
Rounting key:根据路由关键字Exchange将消息传递至相应的Queue
vhost:Broker中可以有多个vhost,用于权限控制
producer:生产者
consumer:消费者
channel:消息通道,consumer可以建立多个channel,每个channel代表一个会话任务
备注:中间件是指独立于操作系统和应用程序之间的软件
9、资源调度中心:zookeeper
10、日志收集框架:kibana
11、任务调度:spring-quartz,elastic-job
12、大数据平台:hadoop,spark
13、数据校验:
帮助类:
public class VerifyHelper { private static Validator validator = new Validator(); /** * 对象属性校验 * * @param object 请求校验对象 */ public static void validatorObject(Object object) throws CmJobException { List<ConstraintViolation> list = validator.validate(object); if (null != list && !list.isEmpty()) { throw new CmJobException(ErrorCodeEnum.INVALID_PARAMETER, list.get(0).getMessage()); } } /** * 请求参数Object非空校验 * * @param value 请求参数model * @param preMsg 错误提示 */ public static void validatorNotNull(Object value, String preMsg) { if (null == value) { throw new CmJobException(ErrorCodeEnum.INVALID_PARAMETER, preMsg + ErrorCodeEnum.INVALID_PARAMETER.getDesc()); } } } 14、线程池的创建方法: (1)创建线程工厂 private static final ThreadFactory THREAD_POOL_FACTORY = new ThreadFactoryBuilder().setNameFormat("THREAD_POOL-%d").build(); (2)创建线程池对象 public static final ExecutorService THREAD_POOL = new ThreadPoolExecutor(INT_ONE, INT_TEN, INT_THIRTY, TimeUnit.MINUTES, new LinkedBlockingQueue<Runnable>(), THREAD_POOL_FACTORY);