phantomjs-server过程图
2020-06-29 10:34:15 0 举报
phantom,phantomjs
作者其他创作
大纲/内容
继承
phantomjs-server
tempDirCleaner:临时文件夹清理,retentionTime决定
phantomjs-export-web
优先级低的配置:converter.properties:ip,port,rendertime,server.js,phantomjs,waitTime。
BlockingQueuePool:用LinkedBlockingQueue来当Pool
borrowObject:在设定的时间waitTime内拿server实例用以渲染。若拿到,则队列长度-1
3、清理server,cleanup。当异常或该server不可用的时候,销毁该server
AbstractPool:六个方法
优先级高的配置:converter.properties:ip,port,rendertime,server.js,phantomjs,waitTime。
destroy:销毁
1、启动phantomjs服务,new process来执行命令:phantomjs server.js -host 127.0.0.1 -port 7777
Web端配置zookeeper地址 与 service暴露的一致,并注入service提供的接口类,直接调用,超时时间视情况而设置
activate:设置server状态
server.java:三个方法
接口:ObjectPool
接口:ObjectFactory
2、判断server是否繁忙,在waitTime之内是否有返回,若有返回,则状态为空闲
returnObject:渲染完毕后,返回实例供给其他请求,长度+1
converter.jar
create:new server
实现
注入
WEB
ExportController:接收请求,验证参数,调用converter.jar中的渲染方法
phantomjs-export-converter
destroyObject:objectFactory.destroy方法,就是销毁
passivate:设置server为空闲
Service部分作为Provider,通过dubbo暴露端口号给zookeeper,zookeeper暴露IP给web。有实现类但只提供接口类给Web。
Converter.java:将参数组装成json,传给phantomjs-server
validate:判断是否空闲
poolCleaner:检查清理方法,启动执行,定时执行
SERVICE
自定义异常等
phantomjs-Server-POOL:长度是poolSize,也就是phantomjs的个数
自定义异常类
ServerObjectFactory:五个方法
createObject:objectFactory.create,就是new server
0 条评论
下一页