Wolfram Language

Interfaces de Cloud et de Web

Mettez en cache une page web populaire de météo

Si un objet de cloud Delayed est vu par de nombreuses personnes avant qu'il ne doit être recalculé, sa sortie peut être mis en cache pour une période de temps grâce à l'option CachePersistence.

Définissez une fonction qui calcule l'histoire de la température de Rio de Janeiro la semaine dernière.

Montrer l'entrée complète de Wolfram Language
In[1]:=
Click for copyable input
rioTemperatureHistory[] := With[{temps = AirTemperatureData[ GeoPosition[ Entity["City", {"RioDeJaneiro", "RioDeJaneiro", "Brazil"}]], {Now - Quantity[1, "Weeks"], Now}]}, labelcolor = GrayLevel[0.4]; tempcolor = GrayLevel[0.4]; grid = Grid[{{Style["Current", labelcolor], Row[{Style[ QuantityForm[Round@Last[temps["Values"]], "Abbreviation"], tempcolor], " "}]}, {Style["High", labelcolor], Row[{Style[ QuantityForm[Round@Max[temps["Values"]], "Abbreviation"], tempcolor], " "}]}, {Style["Low", labelcolor], Row[{Style[ QuantityForm[Round@Min[temps["Values"]], "Abbreviation"], tempcolor], " "}]}}, Alignment -> {{Right, Left}}]; table = Style[Column[{Row[{"Past Week "}, Alignment -> {Bottom, Right} ], grid}, Alignment -> Right], 16, RGBColor[ 0.9098049191388243, 0.3176450101594796, 0.24313742164725222`]]; DateListPlot[temps, PlotRange -> {55, 100}, AxesLabel -> Style["\[Degree]F", 20, Black], TicksStyle -> Directive[Black, 14], Ticks -> {None, Automatic}, PlotStyle -> Directive[AbsoluteThickness[2], Black], Filling -> Bottom, FillingStyle -> Directive[RGBColor[ 0.9098049191388243, 0.3176450101594796, 0.24313742164725222`], Opacity[1]], Epilog -> Inset[table, Scaled[{0.95, 0.9}], {Right, Top}], PlotTheme -> {"Wide", "Presentation"}, ImageSize -> 550]] rioTemperatureHistory[]
Out[1]=

Déployez la fonction comme une application qui met en cache son résultat pendant 5 minutes. Maintenant, des milliers d'utilisateurs pourront accéder à l'application et obtenir raisonnablement des informations à jour sans que le serveur aie à recalculer le résultat à chaque fois, résultant en un meilleur temps de réponse et la charge du serveur inférieur.

In[2]:=
Click for copyable input
obj = CloudDeploy[ Delayed[rioTemperatureHistory[], "PNG", CachePersistence -> Quantity[5, "Minutes"]]]
Out[2]=

Exemples connexes

de en es ja ko pt-br ru zh