Php 带在线服务器和数据库的电子桌面应用程序?

Php 带在线服务器和数据库的电子桌面应用程序?,php,electron,desktop-application,Php,Electron,Desktop Application,我正在使用electron开发一个桌面应用程序,我正在考虑使用在线存储来存储数据。我想了解一下这个方法,因为我无法从谷歌搜索中找到可靠的答案 方法1。electron应用程序(前端)+php(比如从godaddy购买一个域名为www.mysite.com的主机包) 使用这种方法,我计划在php中创建api调用来执行基本CRUD 这是个好办法吗? 这会影响速度/加载时间吗 有没有更好的方法来解决这种情况? 非常感谢您的帮助。好吧,这不是一个容易的话题。您的解决方案可以工作:您可以向服务器请求数据并

我正在使用electron开发一个桌面应用程序,我正在考虑使用在线存储来存储数据。我想了解一下这个方法,因为我无法从谷歌搜索中找到可靠的答案

方法1。electron应用程序(前端)+php(比如从godaddy购买一个域名为www.mysite.com的主机包)

使用这种方法,我计划在php中创建api调用来执行基本CRUD

这是个好办法吗? 这会影响速度/加载时间吗

有没有更好的方法来解决这种情况?
非常感谢您的帮助。

好吧,这不是一个容易的话题。您的解决方案可以工作:您可以向服务器请求数据并将数据存储到其中。无论如何,最佳解决方案取决于您的应用程序

你必须问问自己的最重要的几点是:

  • 您需要多久访问一次服务器
  • 您的用户可以在没有服务器数据的情况下工作吗
  • 在服务器上读取和存储数据需要多长时间?(如果存储一些kb或许多gb的数据,情况就不同了)
  • 在线存储的数据必须与其他用户共享,或者每个用户都可以访问自己的数据
如果所有信息都存储在服务器中,则启动程序必须等待请求完成,但您可以显示加载程序或类似的内容以减轻等待

在我看来,您有很多选择,从最简单(也是最慢)到最复杂(但可以缓解网络滞后):

  • 对服务器的简单AJAX请求:如您所述,您将对服务器执行一些HTTP请求,并读取和写入要在应用程序上显示的数据。您的用户必须等待请求完成。向他们展示一些加载动画以减轻等待
  • 有一些解决方案可以将数据本地保存到您的electron安装,然后在线同步,例如,请查看
  • 最近我在看。GraphQL是查询数据的API。这并不是那么容易,但它有一些有趣的特性,它有一个新的特性,并且已经研究了很多年了。你立即更新你的应用程序,认为你的帖子会很好,然后如果出现问题,你会相应地更新它
  • 我还想建议您尝试一些解决方案作为服务。你还没有一个服务器,你将不得不打开一个新的合同,那么你为什么不检查一些专门的服务,如?Google Firebase实时数据库允许您使用javascript(项目中只涉及一种语言),在线自动同步数据,并在设备之间同步数据,而无需编写任何Web服务。我刚刚玩了一些原型,但它看起来很有趣,而且很便宜。它还有一个免费的计划,对很多用户来说已经足够了

    请记住,如果您的用户只能访问他们的数据,那么最快、最简单的解决方案就是在您的电子应用程序中使用数据库。sqlite数据库、数据库甚至序列化为JSON,然后将所有内容存储在localstorage中(如果您的数据符合大小限制)


    希望这对您宝贵的时间和解释有所帮助。Firebase是一个很好的建议,我有在我的移动应用程序中使用Firebase的经验。firebase的问题是数据库查询。由于此桌面应用程序需要多个查询参数,firebase数据结构与Sql不同。这就是为什么我把它掉了。您认为使用firebase或任何其他SaaS应该比传统的cpanel服务器更快吗?这取决于:D如果您的用例与他们的数据模型很好地匹配,那么他们真的可以为您节省大量时间。你必须考虑你必须存储自己的数据,但也需要一些信息,如用户,授权等,FielBASE可以帮助你在这里。