为瘦客户端设计客户端(厚)/服务器+额外的REST API

Designing client (thick) / server + extra REST API for the thin client

本文关键字:客户端 REST API 服务器      更新时间:2023-10-16

我正在重新设计旧的应用程序——更确切地说,是在设计新的应用程序,我希望将旧应用程序的某些部分在未来变得更有用和可扩展。

旧的应用程序是一个桌面应用程序,它处理文件服务器上共享的数据。(它使用DBF数据库自由表,但设计不是客户端-服务器,只是一个厚厚的应用程序。)

新应用程序计划使用客户端-服务器架构和厚客户端,但服务器也应通过RESTAPI接口提供功能。

应该如何将特定的应用程序服务器设计为既可连接到厚客户端,又可连接到web服务?

实现应该是可移植的(Windows、Linux),web服务器也应该是或IIS(Microsoft)或可移植的web服务器(如nginx等)。实现语言是C++11+(至少对于应用程序服务器和厚客户端)。

我是从零开始的,我也需要学习技术。(我确实有C++的经验,也有一些客户端服务器和RESTful的理论知识;但是,我需要学习实际的东西。)

根据请求注释为答案:

考虑用于消息编码和解码的谷歌协议缓冲区。版本3同时支持json和二进制编码。它还有RPC的存根,您会发现它很有用。