摘要:
本文于2016年3月完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 近日项目组对当前开发、维护的Web系统做了AppScan扫描,扫描的结果惨不忍睹,问题很多。报告中报到“缺乏HTTP安全头部”。之前对HTTP协议的安全头部了解不多,为了 阅读全文
摘要:
HttpOnly是什么 简单的说: HttpOnly是Cookie的属性; Web服务器通过为Cookie设置这个属性,告诉浏览器应当避免页面端的脚本访问对应Cookie的值,保证被Cookie承载的敏感信息不被恶意读取; Web服务器可以保存一些用户的敏感数据到Cookie中,实现比如SSO的功能 阅读全文
摘要:
本文于2017年3月份完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 最近在研究docker的使用方法,恰好手边有一本docker源码分析的书,所以在ubuntu环境下准备了一套golang的开发环境,便于在学习docker使用的时候顺便 阅读全文
摘要:
本文记录的是2016年4月初发生的事情。 前几天,标准CI的静态检查页面发现一个项目组同事引入的FindBugs问题,EQ_COMPARETO_USE_OBJECT_EQUALS,CI对这个问题给出的介绍如下 Class defines compareTo(...) and uses Object. 阅读全文
摘要:
本文于2016年4月完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 前段时间测试MM反馈了一个问题,在富文本编辑器里上传的图片无法正常呈现。因为Jackie在本机的环境上没有观察类似的现象,而恰好那天测试环境的某个重要配项被改错了,于是J 阅读全文
摘要:
本文于2017年上半年完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 最近由于工作关系,接触到了docker技术。为了对docker有更多的了解,于是花时间在家里的Windows 10机器上准备了docker的运行环境,方便在业余时间学习 阅读全文
摘要:
本文于2015年底完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 背景 前段时间研究使用YUI Compressor压缩项目里的js和css文件,研究了两天之后,终于在周三晚上把YUI Compressor集成进了打包流程中;于是周四(2 阅读全文
摘要:
最近参与一个新项目,这个项目使用cmake作为构建系统。作为Java程序员,平常都使用ant或者maven来构建,难得有机会接触cmake之类的工具,所以参与这个项目是个学习cmake的好机会。 但干活之初,首先要备好工具。参考安装指导,在测试环境上基于cmake源码完成安装。具体步骤如下。 全新安 阅读全文
摘要:
本文于2016年底完成,发布在个人博客网站上,标题为《2016年全年回顾》。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 元旦后第一个工作日,上午请假办理宝宝的医保,比较重要;办事人员叮嘱说每年的12月10日~12月25日可以办理,以后可不能像这次拖这么久。 工作 阅读全文
摘要:
对于语音识别产品的实施方案,给出简易的业务流程,仅供参考。 如下流程图,可以使用如下两个站点查看。 web chart Web Sequence Diagrams 文件转写 创建文件转写任务 客户应用->接入网关: 发送创建文件转写的请求 接入网关->安全网关: 转发请求 安全网关->安全网关: 对 阅读全文
摘要:
针对语音识别的产品,分别记录设计、开发过程中的决策点。 实时语音识别 对于实时语音识别来说,客户端和服务端之间实时交换语音数据和识别的结果。 客户端在启动识别时,即开始发送语音数据,期望在等待较短的时间后,即收到最初的识别结果。第一段语音数据和第一个识别结果之间的时延,一般称为首字时延。 客户端在停 阅读全文
摘要:
一般而言,业务诉求作为架构设计的输入。 需求清单 对于语音识别产品而言,需满足的需求,举例如下: 功能需求 文件转写。 长文件转写,时长大于60秒,小于X小时,X可以指定为5。 短文件转写,时长小于60秒。 实时语音识别。 长语音识别,时长大于60秒,小于Y小时,Y可以指定为5。 短语音识别,时长小 阅读全文
摘要:
本文记录,作为项目主要负责人,完整参与语音识别项目的交付历程。 2019年12月中旬 接到项目交付任务,收集基本知识,启动业务分析工作。 2020年1月 完成竞品分析的整理。 梳理合作伙伴的清单,整理项目计划,启动和各合作伙伴的沟通工作。 启动架构方案、设计方案的准备工作。 2020年2月 和合作伙 阅读全文
摘要:
对于通常的软件项目,参与角色,比如可以有用户,消费者,产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队。 通常认为,用户,负责购买服务的群体,而消费者,负责使用业务的群体。这两个群体,不在本文的讨论范围之内,因此后续的介绍中,除非明确说明,否则默认均不涉及。 产品团队,研发 阅读全文
摘要:
本文于2015年底完成,发布在个人博客网站上,标题为《项目总结--纪念我参与过的IPTV SQM项目》。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 时间很快,离开SQM团队已接近10个月,对于参与了5年的项目,很早就想写些什么来纪念;现在终于找到了时间,用自己半 阅读全文
摘要:
分析Google、讯飞、百度、阿里、QQ、搜狗等大厂的ASR服务,可以罗列出一款ASR服务所需要具备的能力。 产品分类 ASR云服务产品,从用户体验、时效性、音频时长,可以划分为如下几类: 实时短音频转写,可以用于支撑输入法、搜索、导航等场景。 实时长音频转写,可以用于支撑视频字幕、图文直播、会议直 阅读全文
摘要:
本文深入探讨前处理环节。 首先介绍一些基本的名词,比如 文件名后缀 文件格式 音频格式 采样率和位深 预备知识 文件名后缀、文件格式和音频格式 常见的音频文件,比如.wav、.mp3、.m4a、.wma等,这些都代表什么? 仅仅是这类音频文件的后缀而已,不一定和音频文件的编码、音频数据的编码相关。 阅读全文
摘要:
本文深入探讨后处理环节。 在本环节要处理的重要特性有分词、断句、标点符号、大小写、数字等的格式归一等。 分词 和NLP、搜索等场景下的分词含义不同。对于拼音类的语言,比如英语、法语等,句子由多个单词组成,语音输出的结果,需要按需在各个单词之间补充或者去掉空格。对于中文来说,字和词之间不以空格作为边界 阅读全文