Steem Blockchain Update August 2017 / Traducido al español
Steem Blockchain Update August 2017
The last few months have been busy for our blockchain team. We are making great progress and want to share what we have been doing with you.
HF 20
A little over a month ago we made the tough decision to postpone HF 20 implementation in favor of enhancing our application framework. We discussed this decision with the witnesses and they were supportive of this change. We are still planning on implementing and releasing HF 20 in the coming months.
Scaling the Blockchain
In the meantime, we have been working on some fundamental changes to help scale Steem. We currently run 7 steemd nodes in AWS to support steemit.com and will need to continue to run more and more to support our growth. The key problem is that Steemd is single threaded, however, we are well along in the process of making it multithreaded.
Imagine the steemd server program is a stove. Right now, it has a single burner and we need to make a meal. A few of the dishes are the peer to peer network, accepting and evaluating blocks, and responding to API requests for data clients like steemit.com. We are rapidly switching pots, pans, and skillets onto the single burner to make each component of the meal. The increased request volume from steemit.com is delaying the meal.
Thus far, we have been buying extra single burner stoves to distribute the load because this was how blockchains were originally designed. But this is not ideal because all of our stoves (our computers) actually have 8 burners (CPU cores) and we are only using 1 each. We have been making changes to the steemd server program so that we can use all 8 burners and not need as many stoves. That way we can put a skillet on one burner, a pot on another, pan on another, you get the idea.
Previously, we had a single application that handled the p2p code, the database, plugins, and APIs. Now, everything is a plugin and only needs to communicate with other plugins that they directly depend on. This increased level of modularity allows for quicker development, easier code review, and greater parallelism. It will also allows us to switch components in and out without breaking the greater whole. We are now developing with building blocks rather than specifically designed puzzle pieces.
FABRIC
Our early tests are showing a 5-fold increase in throughput for servicing API requests. This refactor also lays the foundation to scale steemd into the future and implement the Steem Blockchain Fabric.
There are some API changes on the steemd node that should make accessing data in the blockchain easier and allow upgrading of our APIs without breaking existing calls. We have added a condenser_api which exposes all existing APIs so that we do not break backwards compatibility with existing apps. We have also rewritten the jsonrpc parser and it is completely jsonrpc 2.0 compliant. We will announce when this is deployed to staging.
Most of the work we have been doing is highly technical and challenging, but we look forward to keeping the community abreast of our work and strategies, on much of which we look to the Witnesses and community for collaboration. We’re happy to announce that we are confident these solutions will provide a robust foundation for meeting all of our future scaling needs and enable us to turn our attention to the features you all want to see.
Team Steemit
Reference links
Traduccion al Español
Steem Blockchain Actualización Agosto 2017
Los últimos meses han estado ocupados para nuestro equipo blockchain. Estamos haciendo grandes progresos y queremos compartir lo que hemos estado haciendo con ustedes.
HF 20
Hace poco más de un mes tomamos la dura decisión de posponer la implementación de HF 20 a favor de mejorar nuestro marco de aplicación. Discutimos esta decisión con los testigos y ellos apoyaron este cambio. Todavía estamos planeando implementar y liberar HF 20 en los próximos meses.
Escala de la cadena de bloqueo
Mientras tanto, hemos estado trabajando en algunos cambios fundamentales para ayudar a escalar Steem. En la actualidad ejecutamos 7 nodos steemd en AWS para dar soporte a steemit.com y necesitaremos seguir funcionando cada vez más para soportar nuestro crecimiento. El problema clave es que Steemd es único roscado, sin embargo, estamos muy bien en el proceso de hacer multithreaded.
Imagine que el programa de servidor steemd es una estufa. En este momento, tiene un solo quemador y tenemos que hacer una comida. Algunos de los platos son la red peer to peer, aceptar y evaluar bloques, y responder a las solicitudes de API para clientes de datos como steemit.com. Estamos cambiando rápidamente las ollas, las cacerolas, y los skillets en el solo quemador para hacer cada componente de la comida. El mayor volumen de solicitudes de steemit.com está retrasando la comida.
Hasta ahora, hemos estado comprando estufas de quemador individuales adicionales para distribuir la carga, porque así se diseñaron originalmente las cadenas de bloqueo. Pero esto no es ideal porque todas nuestras estufas (nuestras computadoras) tienen realmente 8 quemadores (núcleos de la CPU) y sólo estamos usando 1 cada uno. Hemos estado haciendo cambios en el programa servidor steemd para que podamos usar todos los 8 quemadores y no necesitar tantas estufas. De esa manera podemos poner una sartén en un quemador, una olla en otra, una sartén en otra, se obtiene la idea.
Anteriormente, teníamos una sola aplicación que manejaba el código p2p, la base de datos, los complementos y las API. Ahora, todo es un complemento y sólo necesita comunicarse con otros complementos de los que dependen directamente. Este mayor nivel de modularidad permite un desarrollo más rápido, una revisión de código más fácil y un mayor paralelismo. También nos permitirá cambiar componentes dentro y fuera sin romper el conjunto. Ahora estamos desarrollando con bloques de construcción en lugar de piezas de rompecabezas diseñadas específicamente.
TELA
Nuestras primeras pruebas muestran un aumento de 5 veces en el rendimiento para atender las solicitudes de API. Este refactor también establece las bases para escalar steemd en el futuro e implementar el Steem Blockchain Tela.
Hay algunos cambios de API en el nodo steemd que deberían facilitar el acceso a los datos en la cadena de bloques y permitir la actualización de nuestras API sin que se rompan las llamadas existentes. Hemos añadido un condenser_api que expone todas las API existentes para que no rompamos la compatibilidad con aplicaciones existentes. También hemos reescrito el analizador jsonrpc y es totalmente compatible con jsonrpc 2.0. Anunciaremos cuándo se implementa esto en la puesta en escena.
La mayor parte del trabajo que hemos estado haciendo es altamente técnico y desafiante, pero esperamos mantener a la comunidad al tanto de nuestro trabajo y estrategias, en gran parte de las cuales miramos a los Testigos ya la comunidad para la colaboración. Estamos felices de anunciar que estamos seguros de que estas soluciones proporcionarán una base sólida para satisfacer todas nuestras futuras necesidades de escala y nos permitirán centrar nuestra atención en las características que todos quieren ver.
Equipo Steemit
No te olvides de poner el tag spanish en tus posts.
Si tienes dudas acerca del funcionamiento te invito a que leas las Steemit FAQ:
Steemit FAQ #1
Steemit FAQ #2
Hemos creado tambien un chat en discord donde interactuamos los unos con los otros y nos promocionamos.
Y no te pierdas los audioconferencias entre los miembros cervantiles y los canales de promocion por categorias
Tambien estamos en Steemitchat https://steemit.chat/channel/HispanoHablantes
valorado en 2000 SBD!!!
thanks,,,, for share
Excellent Post
PS: You have my Vote
Do not take it wrong, I would appreciate you helping me with a vote in my blog @raziell
-edit-: never mind, I thought you just stole this but at least you added a translation :)
Congratulations @razielll! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
You published your First Post
Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here
If you no longer want to receive notifications, reply to this comment with the word
STOP