RESTBase/pt-br

O RESTBase é um proxy para a API de armazenamento/cache que dá suporte à Wikimedia REST API. Sua configuração baseia-se nas especificações do Swagger, e seu backend de armazenamento primário usa o Cassandra. Ele alimenta a rest_v1, a API de conteúdo para o REST usada pelo Editor Visual para recuperar o HTML das páginas para edição. Por motivos de desempenho (T95229), alguns pontos de extremidade (endpoints) do serviço também estão disponíveis nas wikis; por exemplo, nesta wiki.

Como proxy, o RESTBase não realiza nenhum processamento significante de conteúdo. Em vez disso, ele realiza requisições para transformações no conteúdo aos serviços de backend quando necessário, e tipicamente (dependendo da configuração) armazena-as para recuperá-las mais tarde. Para pontos de extremidade estáticos de alto-volume, a maioria das requisições serão satisfeitas diretamente do armazenamento.

Seu backend de armazenamento é uma API de armazenamento do tipo RESTful, semelhante ao Amazon DynamoDB e ao Google DataStore. A implementação primária utiliza o Apache Cassandra. Entre seus recursos mais notáveis, citamos índices secundários mantidos automaticamente e suporte básico a transações. Um backend para SQLite foi desenvolvido, constituindo o backend padrão do pacote.

O RESTBase emite métricas no formato statsd de forma automática para todas as requisições relacionadas a armazenamento e backend. Isso fornece um bom nível de baseline de desempenho e instrumentação de erros em uma arquitetura de microsserviço.


Casos de uso

Nosso primeiro caso de uso é acelerar o Editor Visual, reduzindo o tamanho do HTML e eliminando os erros de cache do Varnish. O RESTBase armazena os metadados do Parsoid separadamente do HTML da página, fazendo com que o tamanho do HTML seja reduzido em cerca de 40%. RESTBase provides only this HTML to VE, which reduces network transfer and processing latency significantly. In the longer term, we are aiming to bring down the size of the HTML to that of current PHP parser output to make it suitable for regular page views. This has the potential to make switching to visual editing instantaneous and free of any scrolling.

If parse time is not a pressing concern for your wiki (for example it does not have complex templates or large transclusion counts), then accessing Parsoid directly may make more sense than introducing a dependency on RESTBase.

Another use case we are strongly interested in is providing a section-level editing API for micro-contributions and extremely fast VisualEditor saves, even faster than wikitext.

Documentação

Instalação

Ver também

Referências

    Category:Cache/pt-br Category:MediaWiki APIs/pt-br
    Category:Cache/pt-br Category:MediaWiki APIs/pt-br Category:WMF Projects/pt-br