我正在从事某种原型项目。我有两个微服务托管在具有不同技术堆栈的单独服务器上。这是它的一些终点
1 User management
-- /users
-- /user/:id
-- /user/roles
2 Other operations (e.g. managing a book, book details)
-- /books
-- /book/:id
-- /book/:id/history
我正在使用GCP托管我的应用程序。我有一个负载均衡器指向上述后端服务。我正在尝试使用主机和路径规则来同时使用这两种服务,如下图所示。
我想以
访问我的用户管理微服务dns/user-manager/users
dns/user-manager/user/:id
dns/user-manager/user/roles
和其他微服务
dns/book-manager/books
dns/book-manager/book/:id
dns/book-manager/book/:id/history
但是看起来,它只是直接将url上面的内容转发到特定服务,所以我得到404。并且我不想将所有路由都添加到负载均衡器路径设置中,因为这将很难维护。期待听到一些解决方案。预先感谢。
答案 0 :(得分:2)
我了解您希望将对/ user-manager / SUB / PATH的入站请求转发到用户服务,然后重新写入/ SUB / PATH。听起来您的转发工作正常了,但重写却没有。
Google HTTP / S LB无法为您进行重写。您将必须在GCLB和您的微服务之间添加反向代理以重写URL。例如nginx can do this。
答案 1 :(得分:1)
Google现在提供URL rewriting,可以实现这一目标。