Noticias de SteemWorld ¡Big Server-Actualización a continuación!

in #steemworld6 years ago (edited)

La siguiente Información es una traducción, con autorización del amigo ₰Ƭ€€Ɱ Cƕíℓℓεŕ @steemchiller para realizar la misma.
Adicionalmente: Todas las ganancias SBD de este artículo irán a @steemchiller para financiar el servidor SteemWorld

SteemWorld_News.jpg

Noticias de SteemWorld ¡Big Server-Actualización a continuación!

lineas_steemword.jpg
He realizado muchos cambios / optimizaciones importantes en la API SteemWorld en la semana reciente y los transferiré al servidor principal en los próximos días. El proceso de implementación puede llevar a algunas horas de inactividad para algunas funciones en SteemWorld. En caso de que ocurran problemas por algún tiempo, ahora sabes el motivo.

Como mencioné anteriormente, he desarrollado mi propia solución para manejar y guardar bloques sin la necesidad de ejecutar una instancia de Steemd en mi servidor. Como tengo muy poca memoria RAM y espacio en disco, y no tengo dinero para un servidor de alto rendimiento, tenía la misión de encontrar una forma mejor de acceder y almacenar las transacciones en bloque y estoy muy contento con los resultados.

I have made many major changes/optimizations on the SteemWorld API in the recent week and I will transfer them to the main server in the coming days. The implementation process may lead to some hours of downtime for a few features on SteemWorld. Just in case there should occur issues for some time, you now know the reason for it.

As mentioned before, I have built my own solution for handling and saving blocks without the need of running a steemd instance on my server. Since I have very limited RAM and disk space available and no money for a high performance server, I was on a mission to find a better way for accessing and storing the block transactions and I am very happy with the results.


Nueva técnica de compresión

lineas_steemword.jpg
Una instancia de Steemd regular utiliza un archivo 'block_log' para almacenar los bloques sin procesar de una manera no comprimida. Además, necesita mantener las operaciones analizadas en la RAM (o el archivo de memoria compartida en el disco, si no se puede cagar en la memoria RAM) que no es posible para mí con mi hardware disponible (necesitaría ejecutar un nodo completo para las cosas que quiero implementarlo en los próximos meses). Estoy pensando en almacenar también algunas de las 'operaciones virtuales' en el disco, pero ese es un tema diferente y la mayoría de ustedes podría llegar técnicamente a hablar sobre esto aquí.

Steemd block_log: ~ 95 GB
Mi solución requiere: ~ 11 GB

A regular steemd instance uses a 'block_log' file to store the raw blocks in an uncompressed way. Additionally it needs to keep the parsed operations in RAM (or shared memory file on disk, if you can't shit RAM) which is not possible for me with my available hardware (I would need to run a full node for the things that I want to implement in the coming months). I am thinking about storing also some of the 'virtual operations' on disk but that is a different topic and it might get a bit to technically for most of you to talk about this stuff here.

Steemd block_log : ~ 95 GB
My solution takes : ~ 11 GB

Amigo, ¿cómo comprimiste un archivo de 95 GB a 11 GB cuando incluso las mejores herramientas de compresión como 'xz -z -9' tienen un tamaño de archivo resultante de ~ 34 GB?

Lo explicaré más detalladamente en una de mis próximas publicaciones. La compresión de identificadores de campo redundantes es una de las principales razones para un tamaño de archivo tan pequeño y, por supuesto, no estoy guardando datos que solo se requieren para las funciones de consenso. Sin embargo, mis conjuntos de datos contienen todas las operaciones "no virtuales". Mi rutina de análisis descomprime solo los datos que actualmente se necesitan para que mi servidor nunca se quede sin espacio. La compresión tiene lugar desde un cronjob en un proceso separado (porque lleva un tiempo). Más detalles pronto;)

I will explain it more in detail in one of my next posts. Compressing redundant field identifiers is one of the major reasons for such a small file size and of course I am not saving data that is only being required for consensus features. Nevertheless my data sets contain all 'non-virtual' operations. My parsing routine decompresses only the data that is currently being needed so that my server will never run out of space. Compression takes place from a cronjob in a separate process (because it takes a while). More details soon ;)


Solicitudes de API en caché

lineas_steemword.jpg
Una optimización 'experimental' que se activará en los próximos días es hacer uso de 'Solicitudes de API en caché' para los usuarios de SteemWorld. En lugar de solicitar la mayoría de los datos generales directamente desde los nodos públicos para cada cliente cada 30 segundos, mi servidor solo realizará estas solicitudes una vez, almacenará los resultados en caché y enviará los datos en caché al cliente. No estoy seguro de si mi servidor puede manejar la gran cantidad de solicitudes, pero creo que es posible. Si esto funciona como se espera, habrá muchas menos solicitudes a los nodos públicos de mi herramienta.

Estoy contento de ver que Steemit está trabajando en soluciones para los próximos problemas relacionados con el uso de memoria y (incluso si he construido mi propio servicio de datos) ¡Creo que SBDS (Steem Blockchain Data Service) es un gran paso en la dirección correcta!

One 'experimental' optimization that will be activated in the coming days is to make use of 'Cached API Requests' for the users on SteemWorld. Instead of requesting most of the general data directly from the public nodes for each client every 30 seconds, my server will do these requests only once, cache the results and send the cached data to the client. I am not sure if my server is able to handle the huge amount of requests but I think it is possible. If this works as expected, there will be much less requests to the public nodes from my tool.

I am glad to see that Steemit is working on solutions for the upcoming problems regarding to memory usage and (even if I have built my own data service) I think that SBDS (Steem Blockchain Data Service) is a big step in the right direction!


Varias pestañas de SteemWorld

lineas_steemword.jpg
He pensado en cómo minimizar el número de solicitudes de servidor aún más y he llegado a la idea de utilizar cookies del navegador para el almacenamiento en caché de solicitudes. A algunos usuarios les gusta abrir 5 o más pestañas SteemWorld para diferentes cuentas al mismo tiempo y esto, por supuesto, multiplica el número de solicitudes para actualizar los datos por el número de pestañas abiertas. Para estos casos, quiero almacenar el resultado de cada solicitud (principal) en una cookie para que los scripts en las otras pestañas reciban los datos desde allí en lugar de hacer nuevas solicitudes todo el tiempo. Esto también se implementará la próxima semana.

I have thought about how to minimize the number of server requests even more and came to the idea of using browser cookies for request caching. Some users like to open 5 or more SteemWorld tabs for different accounts at the same time and this of course multiplies the number of requests for refreshing the data by the number of open tabs. For these cases I want to store the result of each (main) request in a cookie so that the scripts in the other tabs receive the data from there instead of making new requests all the time. This will also get implemented in the coming week.


¡Gracias por su apoyo!

lineas_steemword.jpg
Ahora vuelve al trabajo ... ¡Pronto llegará la "Historia de la delegación"! Me gustaría que pudieras ver cuántas cosas suceden en el fondo diariamente y cuánto trabajo es construir y proporcionar una herramienta tan estable.

STEEM a la luna! Estamos viviendo tiempos emocionantes, amigos;)
Mucho amor y paz para todos ustedes ~

Now back to work... 'Delegation History' coming soon! I wish you could see how many things happen in background daily and how much work it is to build and provide such a stable tool.

STEEM to the moon! We are living in exciting times, friends ;)
Much love and peace to all of you ~


Okey. La razón de esta traducción, es considerando lo importante, de estar informados de los cambios en la API SteemWorld, así como la contribución para que siga funcionando. Cabe destacar que de encontrar otros programas que sean de utilidad para la comunidad haré lo que este a mi alcance para que siga.
Estoy preparando un tutoríal en español para que vean el alcance informativo que tieneSteemWorld


Lanz línea 200px.jpg

lanz.jpg

Espero sea de tu agrado. Te invito a votar, comentar, sígueme y compartir

Sort:  

Hola amigo,
muy buen articulo y gracias por la traduccion.
Eso ayuda mucho!

Mi apoyo total con voto y resteem.
Saludos desde Paraguay

Gracias por compartir conocimientos, excelente información. Apoyando desde el TopFive #steemfamilyhi

Excelente iniciativa @lanzjoseg la difusión en castellano de esta publicación, te felicito.
He usado la aplicación y verdaderamente que es muy rica en información sobre la actividad de nuestra cuenta en steemit. Ampliamente recomendada!

This post has received a 0.26 % upvote from @drotto thanks to: @peppermint24.

Muy buena información te felicito.

Excelente post. Mi aporte.

Apoyandote desde el top 5 de #steemfamilyhi

Excelente como siempre compartiendo conocimiento y herramientas para nuestro crecimiento en la red y también fuera de ella. Mi pequeño aporte desde steemfamilyhi, excelente post, @lanzjoseg

Saludos @lanzjoseg! Mi apoyo por estar en el #TopFive de #steemfamilyhi del día de hoy!

Muy Interesante toda la información, Gracias por compartir herramientas que mejoren el trabajo en esta plataforma. Top Five #steemfamilyhi

Coin Marketplace

STEEM 0.33
TRX 0.11
JST 0.034
BTC 66363.68
ETH 3207.73
USDT 1.00
SBD 4.27