一键部署 translate.service

这个跟上面的一键部署相比,它只部署了 translate.service ,而translate.user 、translate.admin 、translate.api 都没有部署,相应的,对服务器配置要求极大降低,缩减了服务器的成本。

服务器规格

核心:1核
内存:1G
操作系统:CentOS 7.4 (这个版本没有可选 7.6)
系统盘:默认的系统盘就行。无需数据盘
弹性公网IP:按流量计费(带宽大小10MB。如果是新用户折扣购买,1M带宽也行)
其他的未注明的,都按照怎么省钱怎么来选即可。
备注

这里会有多个型号,比如什么s3、s6、t6的,你就选最便宜的就行。(一般t6是最便宜的,选它就行)
安全组:要开放22、80这两个端口

部署

1. 执行shell命令进行一键部署安装

  1. wget https://gitee.com/mail_osc/translate/raw/master/deploy/install_translate.service.sh -O install.sh && chmod -R 777 install.sh && sh ./install.sh

2. 注册小牛翻译通道

translate.zvo.cn/41737.html
小牛翻译对我们进行合作赞助,每日送20W翻译量。满足了绝大多数网站使用场景,相当于免费用

3. 配置小牛翻译参数

修改配置文件 /mnt/tomcat8/webapps/ROOT/WEB-INF/classes/application.properties ,在最后增加一行配置

  1. translate.service.niutrans.apikey=xxxxxxxxx

这里的值就是你上一步中获取到的小牛翻译的apikey
配置好后,重启tomcat,即可完成(你也可以图省事,直接reboot命令重启服务器也行)

使用

在 translate.execute(); 之前,加入一行代码,来指定翻译接口,如下所示:

  1. translate.request.api.host='http://121.121.121.121/'; //将这里面的ip地址换成你服务器的ip,注意开头,及结尾还有个 / 别拉下
  2. translate.service.use('translate.service');
  3. translate.execute();

如此,翻译请求接口就会走您自己服务器了。有关这个得详细说明,可参考: http://translate.zvo.cn/41553.html
注意,因为这里你是私有部署的translate.service,所以translate.js 中使用时记得要用 translate.service.use('translate.service'); 而不是 client.edge 有关 translate.service 跟 client.edge 的区别可点此查看

其他扩展

https场景支持

如果你网站使用的是https协议,那翻译接口你也要变为https协议,不然会请求不到。
比如可以使用华为云的全站加速服务,然后在此服务中配置SSL证书使之支持https
将http变为https方式很多,这里只是提的一种比较方便的方式,其他具体的可以自行尝试,也或者我们出技术人员帮您操作,收几百人工费。

采用华为云翻译提供翻译服务

首先,您要通过上面命令已安装部署好。
进入华为云翻译的控制台,网址: https://console.huaweicloud.com/nlp/#/nlp/call-guide/call-api
获取到 Token 认证中的 username、domainname、projectname 的值 然后将下面的username、domainname、projectname、password这四个参数请填上你当前自己的参数。

  1. # 将上面获取到的 username、domainname、projectname 的值填入
  2. export username=hw012345678
  3. export domainname=hw012345678
  4. export projectname=cn-north-4
  5. # 你当前华为云账号登录的密码
  6. export password=1234567890
  7. # 注意 ,请将上面四个参数填上你当前的参数。
  8. #
  9. cd ~
  10. wget https://gitee.com/mail_osc/translate_service/raw/master/install/huaweicloud_config.sh -O huaweicloud_config.sh && chmod -R 777 huaweicloud_config.sh && sh ./huaweicloud_config.sh

运行后完成设置,等待两分钟重启服务,然后测试一下,完成。

其他翻译服务的接入

可对接任意的翻译接口进行非常方便的扩展。比如百度翻译、华为云翻译、谷歌翻译、以及对接开源翻译引擎等等。
扩展时,有以下几点需要注意:

  1. 将扩展的翻译服务对接的实现,都要放到 cn.zvo.translate.service 这个包下。比如对接华为云翻译,那就建立一个 cn.zvo.translate.service 包,在这个包下建立一个名为 ServiceInterfaceImplement.java 的类
  2. ServiceInterfaceImplement 要实现 cn.zvo.translate.core.service.interfaces.ServiceInterface 接口
  3. 在跟翻译服务对接时,网络请求这块使用 cn.zvo.http.Http 这个,其使用说明参见 https://github.com/xnx3/http.java, 这样不至于引入很多杂七杂八的支持包进去。当然如果单纯就只是你自己用,你可以直接吧对方SDK,通过修改 pom.xml 中加入,来引入一堆的三方jar包。
  4. 要有一个构造方法,构造方法需要传入Map,具体代码如下
    1. public ServiceInterfaceImplement(Map<String, String> config) {
    2. //可以使用 config.get('username') 获取 application.peroperties 中设置的 translate.service.huawei.username 的值
    3. }
  5. application.peroperties 中的配置项,按照上面所示的 translate.service.huawei.username ,其中:
    1. translate.service 是固定的
    2. huawei 是在 cn.zvo.translate.service 包下所建立的针对华为云翻译所建立的包名
    3. username 是自己定义的一个参数名,这里叫username,那么在 ServiceInterfaceImplement 的构造方法中获取时,也要用 config.get(“username”) 来取

这里已内置了两个翻译服务的对接示例,一个是google翻译、一个是华为云翻译,可以参考华为云翻译的实现 cn.zvo.translate.service.huawei.ServiceInterfaceImplement.java

私有翻译

这是一项可选的服务。上面的都是使用三方的翻译接口,而这项是将翻译接口也一起进行私有部署,它不在依赖别的翻译服务,也就省去了再向三方翻译服务交钱。
打个比方,比如你是在没有网络环境中的局域网、或者没有网络环境的电脑上使用,它依旧是可以正常进行翻译的。
但是它有个缺点是翻译的精准度是比不上人家商业化的三方翻译服务的。当然如果你想精准度也非常好,也完全可以再单独购买像是小牛翻译、百度翻译的私有部署,只不过这样人家的费用会比较高。

部署此一次性收费3000元。

收费赞助

注意,translate.service 后端翻译服务是v2版本出现的,2024.2.18日发布v3版本,在v3版本中,推荐使用无后端服务模式,拥有更好的服务及扩展。 translate.service 在使用了两年后,逐渐走出历史舞台,如果您依旧还是热衷于它,您也可以选择以下赞助标准来使用,不过我们依旧还是推荐您采用v3所推荐的 client.edge 模式。

收费项金额
帮部署 translate.service (对接好 小牛翻译/华为云翻译 中的一种 )700元
加装 谷歌翻译(免费翻译)1000元
加装 微软翻译(免费翻译)1000元
加装 开源LibreTranslate翻译1000元
加装 全球多节点网络加速500元/节点
开发,帮对接好您指定的翻译通道1500元
开发,帮您搭建好本地开发环境并导入源码运行、发布线上部署1500元

注意,以上不含长期维护费用,需要后期维护可按照后期实际参与的工时算。

私有部署需要准备的事情

如果您对部署方面不懂,比如未操作过linux服务器,我们也可以安排技术人员帮咱进行这个操作,您需要准备的材料有: