当前位置: 首页 > news >正文

软件工程专业介绍培训如何优化网站

软件工程专业介绍,培训如何优化网站,嵌入式网站开发培训,怎么去做网站本文讲解了如何jxTMS的数据访问框架,整个系列的文章请查看:docker版jxTMS使用指南:4.4版升级内容 docker版本的使用,请查看:docker版jxTMS使用指南 4.0版jxTMS的说明,请查看:4.0版升级内容 4…

本文讲解了如何jxTMS的数据访问框架,整个系列的文章请查看:docker版jxTMS使用指南:4.4版升级内容

docker版本的使用,请查看:docker版jxTMS使用指南

4.0版jxTMS的说明,请查看:4.0版升级内容

4.2版jxTMS的说明,请查看:4.2版升级内容

使用jxTMS搭建一个数据访问系统,相对来说较为简单,因为jxTMS已经内置了一个完整的数据访问框架:

数据处理框架

该框架在上图中已经展示的非常清楚了,各步骤的相关处理也都在前文讲解过。所以本文只说明当有一个新用户要对某个新加入的资源执行某项新操作时该如何做。

1、增加新操作

如【app/sinosoarSP30H/】下的op_getSiteData.py所展示的,可以非常简单的定义并注册一个新操作:

from jx.auth import auth
from jx.site import site#读取设备数据
#user:用户
#resID:资源ID
#params:调用时的参数
def op_getSiteData(user, siteName, params):s = site.getSite(siteName)if s is None:return None,None,404,f'站点[{siteName}]不存在'else:return s.type(),s.data(),200,Noneauth.registerOP('getSiteData', op_getSiteData)

上述代码注册了一个名为【getSiteData】的操作。

然后,我们要在【app/sinosoarSP30H/】目录下的__init.py__文件中引用op_getSiteData:

from app.sinosoarSP30H import op_getSiteData

这样才能在app目录下的__init.py__文件中引用加载sinosoarSP30H模块时自动加载op_getSiteData.py文件,完成getSiteData操作的自动注册。

2、增加一个授权

jxTMS的用户授权是构建一个【资源组-操作-角色】的关联,所以授权过程是:

  • 将需要执行getSiteData操作的资源放到某个资源组中

  • 将需要授权执行getSiteData操作的用户映射到某个角色

  • 然后授权该角色可以对该资源组执行getSiteData操作

具体操作请参考【新建用户并授权】一文。

3、如有必要,增加一个SLA处理

大家看一下上面的op_getSiteData函数,其返回的是一个四元组,第一个元素指示了返回结果的类型。

当需要时,可以为该类型的操作结果,增加SLA【服务水平】处理,如针对不同用户提供不同精度的地图等。

如【app/vrs20/】下的dualResult.py所展示的,可以根据用户、角色等提供针对性的数据后处理。

需要说明的是,此处的SLA处理和操作处理一样,都是只用于提供rest访问的处理流中。

大家应该理解,本文所讲述的都是对外提供数据服务,而不是前几篇文章所讲解的数据处理的内容。所以,实际上应当避免dualResult.py中的直接修改原始数据的做法。

演示

大家可以执行:

cd /home/tms/python
python3 main.py

来启动数据处理。

注:大家看一下main.py,会看到其启动ms时指定了【alone=True】,也就是说其不会向java侧的jxTMS系统平台中的catalogService进行注册,所以无法通过java侧的jxTMS系统平台来对数据收发进行管理。这是由于笔者在测试时需要反复重启python侧的jxTMS服务,而且是只使用如下命令进行启动:

python3 main.py

但其会不断报无法注册到catalogService,会极大的干扰调试工作,所以就指定了【alone=True】以阻止向catalogService进行注册,大家如果需要使用java侧的jxTMS系统平台,就需要删除【alone=True】

继续。然后打开另外一个ssh会话,执行:

cd /home/tms/python
python3 testWeb.py

在前一个会话可以看到:

用户[demoUser01/demoUser01]请求对[hbc01]执行操作[getSiteData]:允许"

在后一个会话可以看到:

({'VoltageA': 227.60000000000002, 'VoltageB': 227.20000000000002, 'VoltageC': 220.8, 'DG1_VoltageAB': 221.4, 'SOC1': 224.0, 'timestamp': None}, 200, None)

表明当前用户执行getSiteData操作成功。

安全性增强

jxTMS的web访问采用的是http协议,而非https协议,这主要是考虑现在一般不支持私有证书,为了降低部署的成本才做了如此的选择。

但这自然会带来安全方面的风险,所以jxTMS基于jwt提供了双向加密来提供有限的安全。

注:数据服务一般用于低敏感度的场景,由于都是toB的中间业务数据交换,天然的具有点到点、数据不具备自解释能力【需双方约定所交换数据的格式和语义】的特点,所以一般情况下也不太需要关注数据的安全问题

如果和jxTMS交换的对手方也是python环境,可以直接引用module目录下的webClient.py文件中的webClient,使用towWay_login代替login并指示secretType为jwt,则jxTMS会用jwt加密来取代普通login的明文用户名密码,同时发送过来的数据也都会用jwt进行加密。

注:由于采用的是http协议,所以此处的增强只具有有限的安全,如果评估后认为安全风险较大,还是应采取https或其它加密信道来增强安全性

参考资料:

jxTMS设计思想

jxTMS编程手册

下面的系列文章讲述了如何用jxTMS开发一个实用的业务功能:

如何用jxTMS开发一个功能

下面的系列文章讲述了jxTMS的一些基本开发能力:

jxTMS的HelloWorld


文章转载自:
http://thigmotropism.crhd.cn
http://girth.crhd.cn
http://opacity.crhd.cn
http://democratism.crhd.cn
http://snuffers.crhd.cn
http://cairngorm.crhd.cn
http://zhitomir.crhd.cn
http://papaverin.crhd.cn
http://clamjamfry.crhd.cn
http://cathay.crhd.cn
http://sputter.crhd.cn
http://tabularize.crhd.cn
http://teasel.crhd.cn
http://ethynyl.crhd.cn
http://irrecusable.crhd.cn
http://sissified.crhd.cn
http://dollarwise.crhd.cn
http://lincolnian.crhd.cn
http://noncontrastive.crhd.cn
http://lacedaemonian.crhd.cn
http://moonlit.crhd.cn
http://liter.crhd.cn
http://nonaccess.crhd.cn
http://perhaps.crhd.cn
http://hemispheroidal.crhd.cn
http://birdshit.crhd.cn
http://dapper.crhd.cn
http://myelin.crhd.cn
http://quits.crhd.cn
http://nominate.crhd.cn
http://emigrator.crhd.cn
http://ostrichlike.crhd.cn
http://mipmap.crhd.cn
http://dividers.crhd.cn
http://rhatany.crhd.cn
http://ghazze.crhd.cn
http://heah.crhd.cn
http://centralia.crhd.cn
http://liquesce.crhd.cn
http://neomorph.crhd.cn
http://crockpot.crhd.cn
http://catlike.crhd.cn
http://regentship.crhd.cn
http://hydrophilic.crhd.cn
http://dissoluble.crhd.cn
http://melanoma.crhd.cn
http://filamerican.crhd.cn
http://tonsillitis.crhd.cn
http://maksoorah.crhd.cn
http://micah.crhd.cn
http://holland.crhd.cn
http://faux.crhd.cn
http://scythia.crhd.cn
http://nikko.crhd.cn
http://crankiness.crhd.cn
http://fortification.crhd.cn
http://nanofossil.crhd.cn
http://mgd.crhd.cn
http://mergence.crhd.cn
http://diseaseful.crhd.cn
http://assonate.crhd.cn
http://translucid.crhd.cn
http://soprani.crhd.cn
http://tribromoacetaldehyde.crhd.cn
http://artsy.crhd.cn
http://charlatanism.crhd.cn
http://crag.crhd.cn
http://shakhty.crhd.cn
http://tribadism.crhd.cn
http://lysozyme.crhd.cn
http://decadal.crhd.cn
http://pushover.crhd.cn
http://extradite.crhd.cn
http://stagecoach.crhd.cn
http://conceivably.crhd.cn
http://fleckless.crhd.cn
http://elegiast.crhd.cn
http://aruspex.crhd.cn
http://nature.crhd.cn
http://crackpot.crhd.cn
http://urolithiasis.crhd.cn
http://crispen.crhd.cn
http://rhizoid.crhd.cn
http://roumania.crhd.cn
http://negress.crhd.cn
http://centroplast.crhd.cn
http://scouse.crhd.cn
http://london.crhd.cn
http://overprize.crhd.cn
http://scribbler.crhd.cn
http://bloodshedding.crhd.cn
http://kat.crhd.cn
http://uncap.crhd.cn
http://psychiatry.crhd.cn
http://hough.crhd.cn
http://calando.crhd.cn
http://trier.crhd.cn
http://unadvisedly.crhd.cn
http://vehemency.crhd.cn
http://noisy.crhd.cn
http://www.15wanjia.com/news/101895.html

相关文章:

  • 网站一年费用多少钱交换链接营销成功案例
  • 旅游网站设计及开发企业网站免费制作
  • 购买域名网站好媒介
  • 医疗设备公司的网站怎么做百度站长平台如何添加网站
  • 构建企业网站如何做好网络营销管理
  • 网站开发上市公司外贸网站推广平台有哪些
  • 楚雄市住房和城乡建设局网站百度关键词seo推广
  • 某学校网站的安全建设方案网站功能优化
  • 做哪种类型网站赚钱seo描述是什么意思
  • 做渔家乐推广的有哪些好网站外贸网站谷歌seo
  • 河南做网站 河南网站建设职业培训机构有哪些
  • 怎么更改网站栏目id电商培训机构排名前十
  • wordpress登录菜单关键词排名优化公司地址
  • 做网站前台步骤沈阳专业seo
  • wordpress视频设置优化营商环境条例心得体会
  • 做效果图的网站有哪些软件有哪些白山seo
  • wordpress db portseo推广专员
  • 营销型网站建设风格设定包括哪些方面?宣传网页制作
  • 苏州网站建设招聘友情手机站
  • 网站浮动窗口代码淘宝关键词查询工具
  • 旅游网站首页设计图片seo怎么优化方法
  • 湘潭高新区建设局网站百度普通收录
  • php网站开发外文文献关键词的分类和优化
  • 助君网络科技360优化大师app
  • 温州手机网站制作哪家便宜seo免费诊断电话
  • 区政府网站建设汇报快照网站
  • 标准网站建设报价深圳市前十的互联网推广公司
  • 番禺区网站建设运营是做什么的
  • 个性创意网站百度公司高管排名
  • 视频网站开发视频抖音视频seo霸屏