Wolfram Language

Interfaces de la nube y web

Almacene en caché una página web popular del tiempo

Si un objeto de la nube Delayed es visto por muchas personas antes de que necesite ser re-calculado, su salida puede ser almacenada en caché para un período de tiempo por medio de la opción de CachePersistence.

Defina una función que calcule la historia de la temperatura de Río de Janeiro la semana pasada.

muestre la entrada completa 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]=

Implemente la función como una aplicación que almacene como caché su resultado por 5 minutos. Ahora miles de usuarios podrán acceder a la aplicación y obtener información razonablemente actualizada sin que el servidor tenga que re-calcular el resultado cada vez, resultando en un mejor tiempo de respuesta y menor carga del servidor.

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

Ejemplos relacionados

de en fr ja ko pt-br ru zh