Tag: Baas

移动开发人员pt.1的无尽痛苦

最初发布在我的博客上 后端的缺乏可能是移动开发人员成功之路的强大障碍。 当移动外包开发商甚至移动外包公司没有自己的后端和开发能力,而仅与现有客户的后端合作或将其外包给其他地方时,我就遇到过这样的情况。 我是移动开发人员,我希望后端能够自己工作,不再伤害我。 静态API的移动后端不是火箭科学,是吗? 应用之间共享功能的一部分是重要的,而不是唯一的。 因此,为什么不查找和使用现有的解决方案并节省多达50%的时间和精力呢? 我们需要的99%是: 实体CRUD操作 实体之间的关系 嵌套实体功能和非规范化存储以提高性能(有时) 用于图像,视频等的原始数据存储。如果可以通过外部插件扩展,则很酷 与第三方社交网络集成的身份验证例程。 用于创建ACL的用户角色 推送通知。 如果具有用户对用户推送功能,则很酷。 Websockets引擎满足实时需求,例如聊天 用服务器端脚本和功能扩展它的方法 应用内购买服务器端验证 SDK没关系,轻松的http api就足够了 自从Parse失败成功失败的故事以来,已经有成千上万的mBaaS(firebase,endendless等)出现和死亡。 这是不依赖它们的第一个原因,第二个原因是我不想付款。 天知道,如果该应用起飞,该怎么办。 因此,我也希望它是开源的,可以随时在我的服务器上进行部署,并让社区修复错误))) 这是我自己的特点,但我希望不要用JS编写。 从类型安全的角度来看,Python也很糟糕,但至少我了解python。 这是mBaaS替代品的详尽列表。 随时与任何一个分享您的经验。 我还将分享我对其中一些的想法。 您可能会对Parse充满信心,因为您可能认为开源版本与服务本身上部署的版本相同。 这是令人惊讶的(可能有一天会让您生气),因为文档相同,但解析服务器却不同。 顺便说一下,这些家伙重新发明了原始的解析服务。 这是开源版本中缺少的内容的几乎正确的列表。 分析,应用内购买验证,服务器端工作和功能是最令人失望的缺少功能。 社区已经实现了仪表板,推送通知和电子邮件适配器。 我没有尝试过实时实时查询,可能还缺少它们。 关于Parse SDK,您应该了解的另一件事是,它不能替换您应用程序的本地存储(核心数据/领域),尽管在阅读文档后看起来似乎如此。 如果您尝试过,可能您可能会发现自己发明了一些使用解析本地数据存储和查询缓存的解决方法。 而且您可能最终会因筋疲力尽而使coredata回到您的项目中。 不幸的是,我有一个利用开源Parse服务器的项目,也许有一天我会写一篇文章,名为“令人失望的关于Parse可伸缩性的方法文章”。 Baasbox似乎具有所有必要的功能。 而且它用Java编写,这使我的灵魂保持温暖。 他们的着陆页显示他们有很多应用程序,api调用等。但是不幸的是,他们的存储库像陵墓中的列宁一样是沉默的,而且我发现该项目已经死了。 这是一个非常有趣的项目,具有一系列积极地被贡献的功能。 他们为金钱提供mBaaS,并为开源提供开源后端解决方案,插件和SDK。 服务器本身用Go语言编写(不错!),服务器端脚本API用python语言编写(不错!)。 我一定会密切关注它,也许会尝试一天。 我也发现它很有趣,尽管它只是mongo db的Restful API。 可能是完整的移动后端和手工后端之间的良好中间解决方案。 我敢肯定,有一天,这种服务器端快速框架之一将获得如此强大的生态系统,这将使其能够克服其他mBaaS解决方案。 但是现在,我在等。 […]

移动开发人员pt.2的无尽痛苦

最初发布在我的博客上 安装Usergrid。 您最好使用RTFM,并在2017年6月使用该手册将我的故事视为对我的冒险的一组评论。 Usergrid Stack是一个在Tomcat上运行的Java EE Web应用程序,使用Cassandra数据库进行存储,并使用ElasticSearch搜索引擎进行查询。 在将Usegrid Stack安装到Tomcat之前,您将首先设置数据库和搜索引擎节点。 首先,您需要Cassandra。 出于存储目的,我设置了一个单独的Ubuntu实例,该实例将成为Cassandra单节点群集。 设置很简单,并在Cassandra官方文档或数字海洋教程中进行了介绍(它们似乎更加时髦) 下一步是弹性搜索 再次,我使用了数字海洋教程 与Tomcat相同。 Usergrid似乎需要Tomcat 7或更高版本,这就是为什么我决定尝试8并看看会发生什么的原因。 立即我遇到了usergrid config的问题。 似乎在部署到tomcat的过程中没有拾取配置文件usergrid-deployment.properties 。 无论我将它们放在文档所说的位置还是遵循互联网上的各种建议。 它既没有与elasticsearch也没有与cassandra连接。 互联网上有几个与此问题有关的问题以及一些可能的解决方案: 您自己和用户网格从源进行构建可能会开始获取配置。 自己从源代码构建,并替换默认配置文件。 上帝保佑Java开发人员,从源代码进行构建并不痛苦。 除了构建文档中未提及的4行: cd ~\usergrid\sdks\java mvn install cd ..\..\stack mvn install -DskipTests=true 好。 更详细地查看日志表明,即使在我重建之前,如果它们位于…。/ tomcat / lib /中,它也确实会拾取配置。 =( 我的Cassandra节点和usergrid后端位于不同的实例上,并且在抽出更多日志之后,事实证明问题出在Cassandra配置中,并且是绑定地址。 但是尽管如此,我还是学会了如何构建usergrid,现在该起飞了! 还没。 同样,usergrid无法在Tomcat下启动。 我决定擦除Tomcat8并尝试使用Tomcat7。 而且有效(!) 下一个问题是在Elastic Search中。 日志显示连接尝试异常。 我重新安装了usergrid docs中相同版本的ES:1.7.2,而不是最新的5.4.xо_О […]