APICloud数据云3.0 -- 让后端业务更简单
近年来,各类移动端应用层出不穷,app、小程序已成为企业业务数字化的必然选择,围绕互联网产品的技术创新与开发者生态,正在历经行业发展的又一次革新。
APICloud作为国内领先的移动应用开发平台,一直致力于提供移动开发的全套解决方案。这其中,除了前端的跨平台方案外,很大一部分就是后端服务以及上线后的运维工作。APICloud提供的新版数据云3.0 就是为了为方便广大开发者简化后端开发而设计的。
APICloud数据云3.0地址:https://www.apicloud.com/dataCloud?uzchannel=264
首先,我们来简单了解下前后端的工作在软件开发中的关系。前端的大部分工作其实是网站、app或者小程序上看到的页面展示或图形化的展示,用户使用这些前端界面完成使用操作。而后端是实现业务逻辑,操作数据的部分,前后端通过API完成相互的调用。
这就好比一部汽车,我们看到的方向盘、仪表盘等展示出来的都可以说是前端,而打火,转动方向盘等都可以理解为通过前端发给后端的API指令,在这里,那些真正让车动起来的部分就是后端了,我们虽然看不到它,但它是真正让应用正常运行的核心部分。不管是移动应用的开发,小程序的开发,web网站的开发等等,都需要后端来处理其中的业务逻辑,而且后端的开发在大部分项目中实际占据了比较大的比重。
如上图,形象的展示了前后端在整个项目开发中的比重和关系,后端的工作虽然用户不能直接感受到,但它却是一个核心工作。后端开发涉及到的内容广泛,技术庞杂, 但却有大量的工作是可以复用的。APICloud 正是结合了多年的公有云开发经验,开发了一套以模块驱动的开发方式,为开发者提供了简便的可复用的后端云服务,极大方便开发者快速实现自己的业务需求。
具体来说,APICloud的新版数据云主要有以下特点:
强大的云数据库功能
我们目前提供的云数据库彻底消除了用户搭建、维护自己数据库的工作,降低了使用难度。它有以下特点:可以方便的在界面对数据库内容进行操作及定制查询语句;支持数据的高效读写;针对关键业务,APICloud支持事务;支持数据表建立索引的功能;针对数据库的高可用性和数据安全我们也提供了副本集以及数据的定期备份。
模型驱动开发模式
模型是数据云的一个核心概念,可以理解为业务逻辑中的一个个模块,这些模块之间的互相调用实现了后端开发的一整套业务逻辑。模型可以被映射到一个数据表上,针对这个表的相关操作方法都可以定义在这个模型下。这样一个后端的业务逻辑就变成了一组模型的组合,开发者不用维护一堆庞杂的函数集合,只需要把相应的业务代码写在模型下即可。既方便功能模块的复用,又有很好的代码组织能力。
个性化云函数类型支撑业务
APICloud数据云3.0提供了用户自定义各种云函数的功能。这个功能赋予开发者更强的定制业务逻辑的能力,同时我们提供的框架也极大简化了用户的编码工作。如远程函数可以让用户像编写普通函数一样迅速生成REST API 风格的接;中间件函数可以用来实现接口的鉴权等;而全局对象则提供了一种模型之间数据和方法共享的机制。不同类型的数据表的钩子函数则提供了数据库操作时的自动调用的入口,所有的这些都极大方便了开发者根据需要快速实现业务逻辑。
丰富的第三方包接入
新版数据云使用JS作为后端开发语言,我们支持npm包的接入,极大方便了用户使用一些常见的第三方模块。
模型库代码的快速接入
作为一名程序员,代码复用无疑是实现高效开发的关键,很多功能,尤其是一些与第三方交互的公共方法,别人已经实现好,开发人员是没有必要重复造轮子,拿来直接使用即可。我们基于模型的开发方式使这种云端代码复用变的极为简单易用,如小程序的登录授权功能需要开发者服务器端带着小程序传来的code到微信接口服务获取openid来完成整套流程;订单的生成、退款等需要更复杂的一些加密以及同微信服务器的通信工作来实现。传统的编码工作,需要花费大量时间参考小程序相关文档完成开发调试工作,而用我们平台,只需导入微信模板库,按函数要求传入相关参数即可快速集成小程序开发相关功能,通过复用极大提高了开发效率,让开发者真正做到只专注与自己的业务本身。
便捷的接口联调机制
接口开发过程中一定会涉及到接口管理。对于普通项目开发,后端会维护每个接口的文档,并通过工具调用REST 接口进行自测和联调。从实践中看,这种方式弊端很多,随着接口的不断修改,开发人员经常出现文档更新不及时或者文档与实现不一致等问题。同样,通过工具进行接口联调的时候也很麻烦。我们在新版数据云3.0中集成了swagger的组件,支持后端编写的远程方法自动通过swagger生成接口文档并直接在网页中进行调试,开发者无需再维护接口文档,只需在云函数编辑页面写好参数的相关描述,所有的文档信息会自动在调试页面中产生,极大的方便了开发者进行接口联调的工作。
可靠的服务扩展和数据安全
APICloud采用云原生的服务端架构,用户的服务器端能力随着流量的增加支持动态扩容。同时我们也有多种数据备份策略,保证用户在我们数据云上服务器端数据的安全。
内置管理后台
基本所有应用都涉及到管理后台,新版数据云3.0考虑到这个需求,提供了一套基于amis系统作为解决方案的管理后台。这套管理后台通过json配置以及可视化的编辑器,可以方便的实现可定制化的页面展示及数据处理。用户通过拖拽即可生成自己特定的管理后台。
服务器端的开发工作无疑在软件开发领域占据了比较重要的位置,APICloud全新发布的数据云平台恰恰结合多年的服务器端工作经验,有效提取了移动开发领域后端常见的一些功能模块;作为一款快速实现后端逻辑的产品,数据云3.0可方便的将前、后端进行连接,从而进一步补充低代码开发平台的完善能力。
APICloud数据云3.0 -- 让后端业务更简单的更多相关文章
- 3款大数据bi工具,让企业数据分析更简单
企业数据可视化的髙速发展趋势让互联网时代的数据分析及可视化拥有全新的面貌.企业针对信息内容的数据分析及可视化,的要求在日益严格,那么有哪些在企业数据分析方面做得好的大数据bi工具呢? 一.大数据bi ...
- PAT甲级1012题解——选择一种合适数据存储方式能使题目变得更简单
题目分析: 本题的算法并不复杂,主要是要搞清楚数据的存储方式(选择一种合适的方式存储每个学生的四个成绩很重要)这里由于N的范围为10^6,故选择结构体来存放对应下标为学生的id(N只有2000的范围, ...
- seldom 2.0 让接口自动化测试更简单
前言 HTTP接口测试很简单,不管工具.框架.还是平台,只要很的好的几个点就是好工具. 测试数据问题:比如删除接口,重复执行还能保持结果一致,必定要做数据初始化. 接口依赖问题:B接口依赖A的返回值, ...
- APICloud平台的融云2.0集成
融云2.0的官方文档地址:http://docs.apicloud.com/端API/开放SDK/rongCloud2 项目须要IM模块,最后还是选择了融云.在iOS原生开发中,融云sdk集成了聊天界 ...
- 百度——LBS.云 v2.0——创建自己的地理云数据
随着云技术和地理信息(GIS)技术的发展,今年终于进入了.地理分享的新纪元.百度提供了LBS的云存储.真是个不错的功能.下面让我们来看看如何使用吧. 1.注册百度开发者账号(此处略去88个字) 2.创 ...
- apicloud+融云实现即时通讯
请尊重作者的辛勤劳动!!! 使用apicloud开发已经快2个月了,起初的目的就是为了实现安卓和苹果的兼容,属于一个试验项目,究竟apicloud是否能够满足公司的要求?最 终看来还是不错的,使用ap ...
- 国内物联网平台(7):Ablecloud物联网自助开发和大数据云平台
国内物联网平台(7)——Ablecloud物联网自助开发和大数据云平台 马智 平台定位 面向IoT硬件厂商,提供设备联网与管理.远程查看控制.定制化云端功能开发.海量硬件数据存储与分析等基础设施,加速 ...
- .net core 3.0 Signalr - 06 业务实现-业务分析
## 业务需求 1. 人-项目关系 一个人可以属于多个项目,一个项目可以有多个人加入,通知的时候,可以通知项目内的所有人,也可以通知部分人或者某个责任人. 2. 登录互斥 同一个人不允许登录两次(不同 ...
- 云数据库 MySQL 8.0 重磅发布,更适合企业使用场景的RDS数据库
点击订阅新品发布会! 新产品.新版本.新技术.新功能.价格调整,评论在下方,下期更新!关注更多内容,了解更多 最新发布 云数据库MySQL 8.0 升级发布会 2019年5月29日15时,阿里云云数据 ...
随机推荐
- 001_解析go语言中的闭包
go语言中的闭包,是大家学习go语言的一个大难点,笔者在学习时候也是痛苦不堪,在来回对比了其它语言的用法,并且查阅了很多网上的文章,终于对闭包有了一个较为清晰的认识,以下就是关于闭包的解析 首先看一个 ...
- javascript数组笔记
1.数组 2.利用new创建数组 var arr= new Array(); 3.利用数组字面量创建数组 var 数组名=[]; 4.数组里面的数据叫 5.数组的索引(数组下标从0开始) 6.遍历数组 ...
- GitLab 后台修改用户密码
GitLab 后台修改用户密码 # 打开控制台 gitlab-rails console production # 找到用户,输入密码,确认密码,保存 user = User.find_by(user ...
- lombok的基本使用方法
在java刚开始学习的时候,首先就会学习封装.继承和多态,就拿封装来说,封装就是为了保护数据安全而将实体类内部数据保持为私有状态,如果外部程序想要访问里面的数据就必须调用此实体类提供的相关数据接口,这 ...
- Python爬虫获取百度贴吧图片
#!/usr/bin/python# -*- coding: UTF-8 -*-import urllibimport re文章来源:https://www.cnblogs.com/Axi8/p/57 ...
- 2020-05-24:ZK分布式锁有几种实现方式?各自的优缺点是什么?
福哥答案2020-05-24: Zk分布式锁有两种实现方式一种比较简单,应对并发量不是很大的情况.获得锁:创建一个临时节点,比如/lock,如果成功获得锁,如果失败没获得锁,返回false释放锁:删除 ...
- golang bool值
目录 前言 1.基本介绍 2.类型转换 3.使用: 跳转 前言 不做文字的搬运工,多做灵感性记录 这是平时学习总结的地方,用做知识库 平时看到其他文章的相关知识,也会增加到这里 随着学习深入,会进行知 ...
- Android报错:The processing instruction target matching "[xX][mM][lL]" is not allowed.
报错!!! The processing instruction target matching "[xX][mM][lL]" is not allowed. Attention! ...
- 共享&img (给作者自己
--------------------------------------------------------- ------------------------------------------ ...
- Java成员变量和局部变量的区别
定义位置不同: 成员变量:类中方法外 分为类变量(static修饰).实例变量(没有使用static修饰) 局部变量:方法内.代码块内 默认值不同: 成员变量:有默认初始化值 局部变量:没有默认初始化 ...