发布具有相同 url 的不同服务并分别管理它们
publishing different services with same url and managing them separately
我们有 2000 多个业务方法,我们希望将其公开为 soap Web 服务。为此,我们决定将 cxf 与 apache camel 一起使用。我们想从同一个 url 发布所有这些服务,因为我们认为管理它们会更容易(特别是对于调用许多 Web 服务的客户)。但是我们也有一些要求,例如:
- 基于方法的日志启用
- 基于方法设置超时
- 基于方法mtom/base64设置等
我的问题是,是否可以从同一个 url(同一个 SEI)发布所有服务并且能够提供所有这些要求。而且如果我们设法做到这一点,它会是一个好的且可扩展的解决方案吗?
method based log enabling
如果您的业务逻辑中有 2000 个方法,我猜您也有日志记录。您可以为您的网络服务定义多个记录器,并在您方便的时候在每个方法中使用
method based setting timeout
CXF 允许在 server endpoint configuration 处配置 ReceiveTimeout,因此如果您使用一个端点,那么所有方法的超时都将相同
method based mtom/base64 setting and etc.
MTOM 由 JAX-WS 服务器配置,启用或禁用它。此外,这些方法将有一个特定的 DataHandler 来支持它。一个端点意味着一种 MTOM 配置
在此 link 中,您可以看到 http-transport variables set by server. Other utilities like interceptors, bus or fault handlers are also configured by JAX-WS server. Check here 如果有任何感兴趣的
will it be a good and scalable solution?
如@kolossus 所述,2k 方法是一种奇怪的解决方案。我不认为你有性能问题,但它会难以开发和维护。认为您还可以提供一个内置的客户端,而不仅仅是 WSDL,它封装了几个端点
我们有 2000 多个业务方法,我们希望将其公开为 soap Web 服务。为此,我们决定将 cxf 与 apache camel 一起使用。我们想从同一个 url 发布所有这些服务,因为我们认为管理它们会更容易(特别是对于调用许多 Web 服务的客户)。但是我们也有一些要求,例如:
- 基于方法的日志启用
- 基于方法设置超时
- 基于方法mtom/base64设置等
我的问题是,是否可以从同一个 url(同一个 SEI)发布所有服务并且能够提供所有这些要求。而且如果我们设法做到这一点,它会是一个好的且可扩展的解决方案吗?
method based log enabling
如果您的业务逻辑中有 2000 个方法,我猜您也有日志记录。您可以为您的网络服务定义多个记录器,并在您方便的时候在每个方法中使用
method based setting timeout
CXF 允许在 server endpoint configuration 处配置 ReceiveTimeout,因此如果您使用一个端点,那么所有方法的超时都将相同
method based mtom/base64 setting and etc.
MTOM 由 JAX-WS 服务器配置,启用或禁用它。此外,这些方法将有一个特定的 DataHandler 来支持它。一个端点意味着一种 MTOM 配置
在此 link 中,您可以看到 http-transport variables set by server. Other utilities like interceptors, bus or fault handlers are also configured by JAX-WS server. Check here 如果有任何感兴趣的
will it be a good and scalable solution?
如@kolossus 所述,2k 方法是一种奇怪的解决方案。我不认为你有性能问题,但它会难以开发和维护。认为您还可以提供一个内置的客户端,而不仅仅是 WSDL,它封装了几个端点