工程
从Next.js到Astro
使用Astro,将Next.js应用程序转换为易于创建的静态网站,以提供更大的灵活性和更快的加载时间。选择最适合您的技术。
Jeff Mendez
2022-06-22T03:00:00.000Z
很容易忘记更新协议缓冲区文件并破坏调用服务器,尤其是在微服务中。如果服务器协议的签名(Proto)不完全匹配定义,则请求将失败。因此,在整个应用程序开发周期中,建立可扩展的流水线模型至关重要。
协议定义文件的配置可能因不同公司或应用程序的要求而异。gRPC协议旨在使用协议缓冲区或.proto文件实现模式,该模式可以生成服务器和客户端以用于在特定格式中发送消息。最初,您可以在两个不同的GitHub存储库或没有共享模块的不同文件夹中两处配置.proto文件,并构建乐高模块以连接它们。最终,您可能会遇到多个服务和消息定义重复存在于仓库中。使用gRPC,您可以在文件之间导入所需的模块,以避免代码发布。
遵循Semver(版本控制)可以帮助确保不同级别的真正兼容性。通常,gRPC的更新不会破坏兼容性,但是可能会有以下影响:
更改。但是,如果客户端使用新协议,则需要进行更新。当使用字段Any时,消息名称用于标识消息类型,这时消息名称在网络上传输。 嵌套或解除嵌套消息 - 消息类型可以嵌套。将消息嵌套或解开嵌套会更改其消息名称。更改消息类型的嵌套方法与重命名的影响相同。 更改名称空间 - 更改名称空间会更改由库生成的类型的名称空间。这不是gRPC协议的破坏性更改,但如果客户端更新协议,则应更新。
现在基础工作已完成,您可以使用自动化工具来改进gRPC的工作流程和生产力。
现在开始使用A11yWatch,了解自动化、高效和可访问的Web可访问性工具。