在《Java如何调用SPL脚本》中我们介绍了在Java中可以部署集算器JDBC来调用本地SPL脚本,那如何能在Java中远程调用SPL脚本呢?这就是接下来要说的重点!
实现思路通过下图一目了然:
部署服务器
服务器是运行在Java平台上面向分析型的高性能数据库,作为高性能计算数据仓库,服务器可以在离线跑批,在线查询,多维分析和内存计算等方面提供高效的计算输出,帮助用户解决计算中的多种问题。
下面我们先来了解一下服务器的使用及配置,更多关于服务器的介绍可参考集算器在线文档《教程》服务器小节。
1。服务器配置
在集算器安装目录的esProc \ bin路径下,可以找到esprocs。exe文件,可以直接运行它来启动或配置服务器。使用esprocs时,会自动在安装路径下加载所需的jar包,但是需要注意此时使用的配置文件raqsoftConfig。xml和unitServer。xml必须放置在集算器安装目录的esProc \ config路径下。运行后,打开窗口如下:
在esprocs。exe执行时,窗口中会显示加载初始设定的信息,这些设定实际上是由配置文件raqsoftConfig。xml决定的。在右侧的菜单栏中点击选项,可以配置服务器的相关信息,点击后弹出服务器配置窗口如下:
在页面中,可以配置授权文件,主路径,寻址路径,日期时间格式,默认字符编码,日志等级,文件缓存区字节数等信息。
下面我们继续来了解服务器的配置,在右侧的菜单栏中点击配置,可以配置分机的相关信息,点击后在单位页面中可以配置分机信息,如下:
临时文件超时设定临时文件的生命周期小时数;检查间隔必须设定为正值或0,为检查过期的间隔秒数;代理超时为代理生命周期,即远程游标,任务空间的生命小时数。如果临时文件超时或者代理超时设定为0,则不检查过期。
分机列表主机列表中,可以配置本机上所有可能用来运行服务器的分机,配置它们的IP地址,在进程列表过程列表中,可以为一个IP地址配置多个进程的端口港口,其中第一个为主进程。服务器启动时,会自动在分机列表中,寻找有空闲进程的分机,然后再由分机将任务交由某个进程执行。需要注意的是,IP地址需要是本机的真实IP,在使用多网卡的情况下可以设定多个IP。
分机配置中,最大任务数是该分机允许执行的最大作业数,而优先任务数量是该分机的适合作业数,当分机中使用了多个进程时,适合作业数就是分进程的总数。在分区一栏中,可以选择每个分机上所使用的分区。
服务器的使客户页面中可以设定客户端白名单,如下:
选定检查客户后,可以在客户主机列表中,设定允许调用服务器的IP地址白名单,不在设定范围中的IP地址将无法调用服务器执行计算。
服务器设定完成后,点击好,此时可以自动设定对应的配置文件unitServer。xml如下:
& lt; ?xml version=" 1.0 " encoding=" utf - 8 " ?比; & lt;服务器版本=?”在 & lt; TempTimeOut> 12 & lt;/TempTimeOut> & lt; Interval> 1800 & lt;/Interval> & lt; ProxyTimeOut> 12 & lt;/ProxyTimeOut> & lt; Hosts> & lt;主机ip=?92.168.107.1 maxTaskNum”=?”preferredTaskNum=?”比; & lt; Partitions> & lt;分区名称==" 0 "路径" d:/文件/并行/node1/0”比; & lt;/Partition> & lt;分区名称==" 1 "路径" d:/文件/并行/node1/1”比; & lt;/Partition> & lt;/Partitions> & lt; Units> & lt;单位端口=" 8281 "比; & lt;/Unit> & lt;单位端口=" 8282 "比; & lt;/Unit> & lt;/Units> & lt;/Host> & lt;/Hosts> & lt; EnabledClients检查=" true "比; & lt;主机开始=?92.168.107.1”结束=?92.168.107.1”比; & lt;/Host> & lt;/EnabledClients> & lt;/SERVER> & lt; ?xml version=" 1.0 " encoding=" utf - 8 " ?祝辞& lt;服务器版本=?”祝辞& lt; TempTimeOut> 12 & lt;/TempTimeOut> & lt; Interval> 1800 & lt;/Interval> & lt; ProxyTimeOut> 12 & lt;/ProxyTimeOut> & lt; Hosts> & lt;主机ip=?92.168.107.1 maxTaskNum”=?”preferredTaskNum=?”祝辞& lt; Partitions> & lt;分区名称==" 0 "路径" d:/文件/并行/node1/0”祝辞& lt;/Partition> & lt;分区名称==" 1 "路径" d:/文件/并行/node1/1”祝辞& lt;/Partition> & lt;/Partitions> & lt; Units> & lt;单位端口=" 8281 "祝辞& lt;/Unit> & lt;单位端口=" 8282 "祝辞& lt;/Unit> & lt;/Units> & lt;/Host> & lt;/Hosts> & lt; EnabledClients检查=" true "祝辞& lt;主机开始=结束“192.168.107.1”=?92.168.107.1”祝辞& lt;/Host> & lt;/EnabledClients> & lt;/SERVER>Java如何远程调用SPL脚本