我目前正在设计一个需要数据传输的应用程序。我目前正在开发客户端软件,该软件将构建将通过网络级服务发送的数据包。
我应该使用什么数据类型进行网络传输?我目前正在考虑是否应该使用易于操作(创建/读取/等等)的物理数据文件(.dat)。通过Python或仅使用内部数据。从管理和组织的角度来看,我认为基于文件的数据在网络级别上可能是最容易操作和处理的。如果我更倾向于内部(Python)数据处理方法,那么我应该从哪里开始呢?我应该查字典吗?总体目标是将数据大小保持在最小。使用基于文件的数据,我相信我只需要查看几个字节就可以进行实际传输。原生平台将是Windows,但我也想看看我在移动方面的选择(Android/iOS)。
该程序的目的是输入数据。用户条目将被记录、打包、加密并(通过WAN)发送到服务器,在那里它将被存储在数据库中以供稍后查询。
发布于 2013-11-17 19:30:03
当然,也有一些最佳实践。
作为第一个建议,当您通过网络发送/接收数据时,您应该明确地将实现与所使用的表示分离。不要使用Python字典。使用广泛接受的序列化格式,如JSON、ASN.1或协议缓冲区。确保您清楚地知道需要通过网络发送什么,以及要求是什么(延迟、吞吐量、编码/解码的CPU时间等),并选择适合它们的内容。
其次,使用事实或法律上的标准在网络上进行通信。不管是REST,AMQP还是其他什么--不可能说出哪一个是最合适的,因为你的问题太宽泛了。但要确保你没有实现你自己的内部特别应用层协议--你只会让你的生活和你的同事的生活变得更加艰难。
我建议你多考虑一下你想要做的事情,并在稍后发布更具体的问题。
https://stackoverflow.com/questions/20004082
复制相似问题