我听取了一些专家网站开发人员对我问题的最佳解决方案的意见。
设置
在我的工作中,我负责管理一个基于osCommerce的在线商店,其中包含许多其他功能和调整。这是在Linux共享主机上,并使用PHP和MySQL作为其主要技术。
我们正在进行升级库存和订单系统的过程,该系统基于Microsoft SQL并在我们网络上的数据服务器(Dell服务器PC)上运行。
问题
我希望在库存/订单系统和我们的网站之间实现更好的集成,例如获取最新的库存信息,检查价格等。最终目的是获取客户数据。< / p>
我可能的解决方案
我目前在我们的SBS服务器上运行XAMPP进行开发,我用它来测试新代码,然后再上传到实际站点。
我在这个服务器上编写了一个PHP文件,它连接到SQL服务器并运行各种SQL查询,接收$ _GET数组中的参数,将结果作为关联数组检索,JSON编码结果并回显编码字符串。
网站只是使用这样的东西来获取和使用结果:
$ result = file_get_contents('http://SBS-SERVER-IP/getinfo.php?partenquiry ='。$ cleanStringPartNumber);
if($ result)$ stock_info =(array)json_decode($ result);
我认为这对于SQL的任何登录都是一个不错的解决方案,即使它是SQL也没有暴露给网站这一事实,所以如果网站遭到入侵,它不应该危及我们的系统。
我将确保SQL服务器的登录只能访问SELECT数据,因为我不想更新/插入/删除任何内容,因为它可能会导致库存/订单系统出现问题。
另外,我正在考虑将结果缓存到某处,因此我们的库存/订单系统不会遇到性能问题。
我确信有两种方法可以在两个系统之间传递数据,但我想确保我使用的是一种安全的解决方案,使用最有效和行业标准的方法来实现这一点。
我看到了诸如cURL,SOAP,XML,JSON等技术,并想知道这些是否理想。
你有什么想法?
答案 0 :(得分:0)
如果可能,我会使用https在两台服务器之间进行安全通信。 您使用哪种技术取决于您和您愿意学习的框架。 JSON是从a到b发送数据的最简单方法之一。
SOAP实际上是XML,但您不必为XML本身而烦恼。 使用SOAP,您可以发送和存储对象。
使用php的序列化和反序列化,您也可以转换对象并发送它们,然后将该对象的内容存储到数据库中。
更多关于偏好和制作速度。
学习新框架一开始需要一些时间,但之后可以提高你的工作效率。