我打算建立一个小型的贸易管理系统。我想创建一个独立的数据库服务,所有其他客户端连接到该服务。数据库将是MYSQL,我将使用Java来提供服务。客户端可以是使用Java Swing的Web应用程序或桌面应用程序(尚未决定)。客户端和数据库服务之间会有另一层处理业务逻辑(我称之为交易服务)。
架构类似于:客户端 - >贸易服务 - >数据库服务。
我的问题是什么客户/服务通信技术最适合客户 - >贸易服务和最适合的贸易服务 - >数据库中。
我应该使用RESTful服务吗?肥皂?使用RPC?还是其他任何技术?
非常感谢你的帮助。欢迎任何想法或建议。
答案 0 :(得分:0)
看看RabbitMQ,一个池消息服务
http://www.rabbitmq.com/ 它坚固,灵活,快速且可扩展,您可以使用它以Java,PHP或任何您想要的技术进行通信。
答案 1 :(得分:0)
我应该使用RESTful服务吗?肥皂?使用RPC?
这些都是非常类似的方法,因为它们是通过HTTP所以 - 假设这是你想要的;我建议使用RESTful。您将拥有许多可以使用的示例,它将允许您在将来灵活地执行诸如为智能手机应用程序或桌面应用程序切换UI层之类的操作。
无论您选择哪种型号,您都应该首先了解它的工作原理,并尽早构建安全性和指南等内容。现在做你的作业。试图改变这样的设计的中间层是一种痛苦。
答案 2 :(得分:0)
您的问题没有全面的答案,而是基于您的技能组合的选项。您是否在概念上完全理解HTTP规范并能够将其扩展到REST,它与HTTP(通用创建祖先)密切配合。您是否更好地理解SOAP的传统方法调用?您是否将生态系统与特定语言联系起来,因为这会影响您选择的工具。
如果您根据您提供的简单要求(几乎不可能)向我付费编写服务,我将使用RESTful接口和Spring JDBC创建域驱动设计服务(您的业务层)以进行数据访问。那是我,也是我最常工作的。我在工作中的犯罪伙伴可能会选择SOAP和Hibernate。
答案 3 :(得分:0)
我认为你所采取的是队列,我猜你需要一个托管服务。队列可以成为您的微服务之间的粘合剂。我所知道的一些具有队列即服务的供应商是:
CloudBoost.io:https://www.cloudboost.io
查看https://tutorials.cloudboost.io/en/queues/basicqueues以获取文档。
Iron.io:https://www.iron.io
P.S:我在CloudBoost工作