Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz

Java学习资料(架构技术视频,面试,就业指导,java书籍,工具&软件等)

查看数: 2867 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-1-3 15:16

正文摘要:

本帖最后由 java 于 2019-2-19 14:43 编辑 Java学习资料(架构技术视频,面试,就业指导,java书籍,工具&软件等) 链接:https://pan.baidu.com/s/1y6giMKF-P83LpV5mW5yXPQ 密码:ej4o

回复

java 发表于 2019-1-22 15:22:20
同样的工作、同样的做需求,为什么他们能进阿里


点评cat
zipkin
pinpoint
APM
上面 遵循google Dapper论文

ELK

grafana + influxdb


开源授权协议
license

Apache License ,Version 2.0 百度看看有哪些软件在用?


纯粹性

AOP-----service层不放ctroller层
拦截器Interceptor
过滤器Filter     servlet -> J2EE


Filter是基于函数回调(doFilter()方法)的,而Interceptor则是基于Java反射的(AOP思想)。


1.过滤器:

  依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据.

  比如:在过滤器中修改字符编码;在过滤器中修改         HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等


2.拦截器:

  依赖于web框架,在SpringMVC中就是依赖于SpringMVC框架。在实现上基于Java的反射机制,属于面向切面编程(AOP)的一种运用。由于拦截器是基于web框架的调用.

  因此可以使用spring的依赖注入(DI)进行一些业务操作,同时一个拦截器实例在一个controller生命周期之内可以多次调用。但是缺点是只能对controller请求进行拦截,对其他的一些比如直接访问静态资源的请求则没办法进行拦截处理。



3.执行顺序

  过滤器的运行是依赖于servlet容器的,跟springmvc等框架并没有关系。并且多个过滤器的执行顺序跟web.xml文件中定义的先后关系有关。

  拦截器的执行顺序跟在SpringMVC的配置文件中定义的先后顺序有关。



hshy 发表于 2019-1-12 22:04:51
一般是来一个用户就创建一个线程
bio堵塞



select 堵塞 异步(select  来用户不马上开线程处理。而是有业务 即 状态位有变化时才创建)


select 放线程中  reacte模型





java 发表于 2019-1-11 09:24:36
青山_20190110_MySQL事务与锁详解
链接:https://pan.baidu.com/s/1nTmvQddXwbGsWp4_wr6Xgg
提取码:rki8  
java 发表于 2019-1-8 15:51:46
本帖最后由 java 于 2019-1-8 16:46 编辑

链接:https://pan.baidu.com/s/1BNqYrfa0BomN55VVWdvlmg
提取码:v55q

分布式任务调度系统的实现

Quartz运行原理
做什么事情(任务):Job JobDetail
任务以什么样的规律运行:Trigger触发器
谁来指挥:Scheduler 调度器API

对象怎么存储 JobStore RAM JDBC
任务执行状态 Listener

如何实现动态管理 db增删改查
怎么从界面上管理任务 Scheduler接口
非配置文件方式 任务怎么随Spring启动 实现CommandLineRunner接口 或 ApplicationRunner
Service 如何注入Quartz?  JobFactory


Cron 表达式  http://cron.qqe2.com/


MQ
基于事件
逐条处理
Cron表达式
对Quartz的优化和改造
layUI


为什么要集群
1.单点故障
2.实现负载均衡
集群面对的问题,协调
1.任务重复 
2.任务没有任何一个节点执行
上面两个问题都能解决(集群管理器)
通信\共享数据
数据库
ZK(zookeeper)---Elastic-Job
Redis

集群的配置
org.quartz.jobStore.isClustered=true



集群实现原理(集群管理器)

数据库 for update  --------qrtz_locks表相应行被锁  节点随机拿到这个锁(排他锁)


如果获取到锁的节点挂掉了,别的节点怎么知道?
这把锁会不会被释放
kill 进程
----------测试 会释放


euraka-server ?
quartz和xxl-job对比一下

Quartz的不足 (xxl-job Elastic-Job 基于Quartz,解决它的不足)
不支持任务分片策略  一个任务多个节点执行
没有可视化管理(操作 监控 日志 报表)
没有重试/恢复机制



http://www.xuxueli.com/xxl-job/#/  《分布式任务调度平台XXL-JOB》


QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-2 23:29 , Processed in 0.071285 second(s), 23 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表