现在项目上有这么个需求,客户拿着APP去一个深山老林里(或者去一个偏僻的村庄)去和核查情况,网络情况不是很好,有可能是2G网络 也有可能时刻断网,但是他要通过APP与服务器交互了,首先是登录就要与服务器交互,然后紧接着获取一些核查规则来查看,这些都是返回的json字符串,手机端进行解析,但是这种弱网络情况请求应该会很慢很慢吧,有没有一种方式能够变快呢? 我查阅了一些资料,网上说:服务端通过将数据压缩后然后传递给客户端,客户端在进行解压,在解析json并展示···· 哪位大神遇到过这种需求。求给个思路。谢谢!
La compression des données est utilisée pour réduire la quantité de transmission de données. Elle peut augmenter la vitesse sur un réseau faible, mais elle sera inutile sans réseau. Est-il possible de créer un modèle de prédiction et de prédire le pré-envoi du contenu de la demande au cours de la prochaine période en fonction des paramètres pertinents fournis par l'application ?
Mettez en cache la dernière requête. Le serveur ne fournira le contenu modifié que dans des conditions de réseau faibles et insérera le contenu modifié dans le dernier cache pour l'afficher. Ce réseau est le plus économique.
Mise en cache des données, les données demandées peuvent être mises en cache localement pour l'affichage des données. Les données qui doivent être téléchargées peuvent également être d'abord mises en cache localement et transmises lorsque le signal réseau est bon. Attendez l'échec de la reconnexion,
La compression est nécessaire pour améliorer l'efficacité de la transmission du réseau et réduire autant que possible le temps d'interaction des requêtes.
Faites également attention à éviter les soumissions en double. (Garantir l'idempotence de certaines interfaces)
Un réseau faible signifie qu'il existe un réseau. Tant que vous vous assurez que le réseau est constamment connecté avant que le serveur ne réponde, il sera facile de résoudre que la taille du corps de la requête et du corps renvoyé soit suffisamment petite pour avoir. pas d'amis. Compressez autant que possible... dès réception de la réponse, analysez-la simplement sur le client.
La mise en cache des données est nécessaire pour garantir que les données précédentes sont affichées sur la page avant que de nouvelles données ne soient obtenues ; les données qui ont été lues sont mises en cache pour éviter les requêtes réseau répétées. La compression des données est mentionnée ci-dessus ;
Utilisez XML pour transférer des données, enregistrez-les localement et affichez les données locales lorsqu'il n'y a pas de connexion réseau
SQLite stocke une partie des données. Les données sensibles sont abrégées en longueur de paramètre. Déterminez s'il existe une valeur de retour de http, puis renvoyez-la à nouveau
.Il existe quelque chose qui s'appelle MQTT