1、特征平台试运行缓存数据落表项目
bug修复:除android、ios端之外的小程序端没有app_version导致列名为空报错
解决方案:指定列名
配置参数确定:
并行度:8()source和map、sink都是8,资源占用最小(8个线程),并且不会出现busy以及反压
任务上线:ta、risk数据源任务正式上线运行
2、算法平台日志优化
目标:
将控制台打印的内容精简,将平台要看的直接打印到日志(级别warn)
方案:
将print内容进行精简,平台内容改为输出到日志,并添加标记内容,便于发现异常位置
收获:
并发度配置,taskManager内存大小的配置
任务上线的流程
日志的两种打印方式:
从这里可以学到一种快速学习开发技能的知识:那就是如果你想打日志,可以直接在项目代码全局搜索:log,看看已有的日志是怎么打的,然后还有不懂的可以问老员工:xxx,你有没有遇到过这个问题,我想xxxx,但是xxxxx,你知道这个怎么搞吗?或者直接在让老员工Code review的时候,自己的问题:我有个疑问
日志打印的意义以及打法(添加标志,标记异常出现的上下文,便于寻找)
logger.error(“您的任务{}调参中止!”,config.getJobName,e)
日志中添加参数的方法:用占位符{},并在逗号后面写上实际的变量,并在最后添加逗号和e
日志打印的级别(warn及以上)
scala日志的打法:
object类:继承Logging类,需要导包:import org.apache.spark.internal.Logging
scala类:添加这行代码:private val logger = LoggerFactory.getLogger(classOf[类名,不需要加后缀.class]),并导包:import org.slf4j.LoggerFactory