Diagnóstico de falhas em arquiteturas baseadas em microsserviços

Detalhes bibliográficos
Autor(a) principal: Souza, Vinicius José Silveira [UNIFESP]
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UNIFESP
Texto Completo: https://repositorio.unifesp.br/handle/11600/61903
Resumo: A utilização do estilo de arquitetura baseada em microsserviços no desenvolvimento de aplicações na Web traz consigo diversas vantagens. Pode-se destacar a independência entre times de desenvolvimento, maior autonomia aos desenvolvedores, maior velocidade de desenvolvimento e escalabilidade. Por outro lado, a sua topologia de comunicação entre processos, fundamentada em ambientes distribuídos, também acarreta desafios relacionados à disponibilidade dos serviços. Dessa forma, resiliência e tolerância à falhas são requisitos essenciais a um sistema baseado em microsserviços, visando evitar a indisponibilidade de funcionalidades críticas ao negócio. Neste tipo de ambiente distribuído, falhas são mais prováveis. Além disso, é consenso que sistemas distribuídos sejam naturalmente mais complexos de serem analisados e compreendidos, quando comparados à sistemas monolíticos tradicionais, dificultando o diagnóstico de problemas e retardando eventuais correções. Diante deste cenário, esta dissertação de mestrado discute o desenvolvimento e aprimoramento de métodos que auxiliem no diagnóstico de falhas em arquiteturas baseadas em microsserviços. Tais métodos podem facilitar a busca pela causa raiz da falha e minimizar o tempo para correção, impactando diretamente na disponibilidade do sistema. Neste contexto, esta dissertação apresenta três principais contribuições. A primeira, é uma análise bibliográfica ampla, considerando os principais padrões de falhas, bem como as técnicas e métodos utilizados pela indústria e estudados pela academia para se obter confiabilidade neste tipo de arquitetura. A segunda contribuição é um arcabouço de software denominado \textit{microchaos} juntamente com um ambiente de emulação, como iniciativa para suprir a carência atual de ferramentas e ambientes apropriados de experimentação de falhas em microsserviços. Tal arcabouço, juntamente com o ambiente, possibilitam o uso de microsserviços sintéticos flexíveis para reproduzir cenários reais de aplicações em produção, permitindo que falhas possam ser exercitadas exaustivamente e que novos métodos e técnicas de diagnósticos de falhas possam ser experimentalmente validados e avaliados. Por fim, o trabalho avalia um método de diagnóstico de falhas baseado em sistemas especialistas utilizando o ambiente proposto.
id UFSP_db4bc80357e918b6ac4442bb0544330c
oai_identifier_str oai:repositorio.unifesp.br:11600/61903
network_acronym_str UFSP
network_name_str Repositório Institucional da UNIFESP
repository_id_str 3465
spelling Souza, Vinicius José Silveira [UNIFESP]http://lattes.cnpq.br/6815546854267566http://lattes.cnpq.br/7587316047810193Kimura, Bruno Yuji Lino [UNIFESP]São José dos Campos, SP2021-09-08T13:29:19Z2021-09-08T13:29:19Z2021-05-28SOUZA V. J. S. Diagnóstico de falhas em arquiteturas baseadas em microsserviçoshttps://repositorio.unifesp.br/handle/11600/61903A utilização do estilo de arquitetura baseada em microsserviços no desenvolvimento de aplicações na Web traz consigo diversas vantagens. Pode-se destacar a independência entre times de desenvolvimento, maior autonomia aos desenvolvedores, maior velocidade de desenvolvimento e escalabilidade. Por outro lado, a sua topologia de comunicação entre processos, fundamentada em ambientes distribuídos, também acarreta desafios relacionados à disponibilidade dos serviços. Dessa forma, resiliência e tolerância à falhas são requisitos essenciais a um sistema baseado em microsserviços, visando evitar a indisponibilidade de funcionalidades críticas ao negócio. Neste tipo de ambiente distribuído, falhas são mais prováveis. Além disso, é consenso que sistemas distribuídos sejam naturalmente mais complexos de serem analisados e compreendidos, quando comparados à sistemas monolíticos tradicionais, dificultando o diagnóstico de problemas e retardando eventuais correções. Diante deste cenário, esta dissertação de mestrado discute o desenvolvimento e aprimoramento de métodos que auxiliem no diagnóstico de falhas em arquiteturas baseadas em microsserviços. Tais métodos podem facilitar a busca pela causa raiz da falha e minimizar o tempo para correção, impactando diretamente na disponibilidade do sistema. Neste contexto, esta dissertação apresenta três principais contribuições. A primeira, é uma análise bibliográfica ampla, considerando os principais padrões de falhas, bem como as técnicas e métodos utilizados pela indústria e estudados pela academia para se obter confiabilidade neste tipo de arquitetura. A segunda contribuição é um arcabouço de software denominado \textit{microchaos} juntamente com um ambiente de emulação, como iniciativa para suprir a carência atual de ferramentas e ambientes apropriados de experimentação de falhas em microsserviços. Tal arcabouço, juntamente com o ambiente, possibilitam o uso de microsserviços sintéticos flexíveis para reproduzir cenários reais de aplicações em produção, permitindo que falhas possam ser exercitadas exaustivamente e que novos métodos e técnicas de diagnósticos de falhas possam ser experimentalmente validados e avaliados. Por fim, o trabalho avalia um método de diagnóstico de falhas baseado em sistemas especialistas utilizando o ambiente proposto.The usage of microservices-based architectures on the development of web applications brings several advantages. Among them, we highlight the independence between development teams, greater autonomy to developers, greater speed of development and scalability. On the other hand, its communication topology, built on top of distributed systems, leads to challenges related to the availability of the services. Therefore, resiliency and fault tolerance are important requirements for a systems based on microservices, aiming to avoid the unavailability of business-critical features. In this kind of environment, faults are more probable. Moreover, it is consensus that distributed systems are naturally more complex to be analyzed and comprehended, when compared to traditional monolithic systems, making difficult to diagnose faults and delaying fixes. Given this context, this project aims to develop and improve methods which support the fault diagnosis of systems based on microservices. Such methods can facilitate the seek for root causes and minimize the time required for corrections, directly impacting the availability of the system. To reach this goal, this work is comprised by the following contributions. (1)~A bibliographic analysis considering the main fault patterns, as well as the techniques and methods used by the industry and researched by the academy to improve the dependability in this kind of architecture. (2) Given the lack of tooling and environment for experimentation of faults on microservices, a framework named \textit{microchaos} and an emulation environment are proposed and developed. The combination of the framework and the experimental environment enables the usage of flexible synthetic microservices to reproduce scenarios of real applications in production, allowing faults to be exhaustively exercised and new methods and techniques of failure diagnosis to be experimentally validated and evaluated. (3)~Finally, an automatic failure diagnose method based on expert systems is evaluated using the proposed environment.Não recebi financiamento134 fporUniversidade Federal de São PauloMicroservicesFailure diagnoseArchitectureComputational systems dependabilityDiagnóstico de falhas em arquiteturas baseadas em microsserviçosFailure diagnosis on microservices based architecturesinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UNIFESPinstname:Universidade Federal de São Paulo (UNIFESP)instacron:UNIFESPInstituto de Ciência e Tecnologia (ICT)Ciência da ComputaçãoCiência da computaçãoSistemas ComputacionaisPró-reitoria de Pós-graduação e PesquisaNão se aplicaNão se aplicaNão se aplicaNão se aplicaORIGINALdissertacao_vinicius.pdfdissertacao_vinicius.pdfDissertação de mestradoapplication/pdf5630034${dspace.ui.url}/bitstream/11600/61903/3/dissertacao_vinicius.pdfb5375cb66620538bf2d2b3d4ea003ca1MD53open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-85834${dspace.ui.url}/bitstream/11600/61903/4/license.txtef0edd01d3fc6963384da2be721f5ba8MD54open accessTEXTdissertacao_vinicius.pdf.txtdissertacao_vinicius.pdf.txtExtracted texttext/plain264518${dspace.ui.url}/bitstream/11600/61903/5/dissertacao_vinicius.pdf.txtbbdc7daf49971fdd7ac591aae0ce9516MD55open accessTHUMBNAILdissertacao_vinicius.pdf.jpgdissertacao_vinicius.pdf.jpgIM Thumbnailimage/jpeg3924${dspace.ui.url}/bitstream/11600/61903/7/dissertacao_vinicius.pdf.jpg12f66478217ba45fffc6dcfe0ac0b9abMD57open access11600/619032023-05-24 01:32:28.495open accessoai:repositorio.unifesp.br:11600/61903VEVSTU9TIEUgQ09OREnDh8OVRVMgUEFSQSBPIExJQ0VOQ0lBTUVOVE8gRE8gQVJRVUlWQU1FTlRPLCBSRVBST0RVw4fDg08gRSBESVZVTEdBw4fDg08gUMOaQkxJQ0EgREUgQ09OVEXDmkRPIE5PIFJFUE9TSVTDk1JJTyBJTlNUSVRVQ0lPTkFMIFVOSUZFU1AKCjEuIEV1LCBWaW7DrWNpdXMgSm9zw6kgU2lsdmVpcmEgZGUgU291emEgKHZqc3NvdXphQHVuaWZlc3AuYnIpLCByZXNwb25zw6F2ZWwgcGVsbyB0cmFiYWxobyDigJxEaWFnbsOzc3RpY28gZGUgZmFsaGFzIGVtIGFycXVpdGV0dXJhcyBiYXNlYWRhcyBlbSBtaWNyb3NzZXJ2acOnb3PigJ0gZS9vdSB1c3XDoXJpby1kZXBvc2l0YW50ZSBubyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBVTklGRVNQLGFzc2VndXJvIG5vIHByZXNlbnRlIGF0byBxdWUgc291IHRpdHVsYXIgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIHBhdHJpbW9uaWFpcyBlL291IGRpcmVpdG9zIGNvbmV4b3MgcmVmZXJlbnRlcyDDoCB0b3RhbGlkYWRlIGRhIE9icmEgb3JhIGRlcG9zaXRhZGEgZW0gZm9ybWF0byBkaWdpdGFsLCBiZW0gY29tbyBkZSBzZXVzIGNvbXBvbmVudGVzIG1lbm9yZXMsIGVtIHNlIHRyYXRhbmRvIGRlIG9icmEgY29sZXRpdmEsIGNvbmZvcm1lIG8gcHJlY2VpdHVhZG8gcGVsYSBMZWkgOS42MTAvOTggZS9vdSBMZWkgOS42MDkvOTguIE7Do28gc2VuZG8gZXN0ZSBvIGNhc28sIGFzc2VndXJvIHRlciBvYnRpZG8gZGlyZXRhbWVudGUgZG9zIGRldmlkb3MgdGl0dWxhcmVzIGF1dG9yaXphw6fDo28gcHLDqXZpYSBlIGV4cHJlc3NhIHBhcmEgbyBkZXDDs3NpdG8gZSBwYXJhIGEgZGl2dWxnYcOnw6NvIGRhIE9icmEsIGFicmFuZ2VuZG8gdG9kb3Mgb3MgZGlyZWl0b3MgYXV0b3JhaXMgZSBjb25leG9zIGFmZXRhZG9zIHBlbGEgYXNzaW5hdHVyYSBkbyBwcmVzZW50ZSB0ZXJtbyBkZSBsaWNlbmNpYW1lbnRvLCBkZSBtb2RvIGEgZWZldGl2YW1lbnRlIGlzZW50YXIgYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBTw6NvIFBhdWxvIChVTklGRVNQKSBlIHNldXMgZnVuY2lvbsOhcmlvcyBkZSBxdWFscXVlciByZXNwb25zYWJpbGlkYWRlIHBlbG8gdXNvIG7Do28tYXV0b3JpemFkbyBkbyBtYXRlcmlhbCBkZXBvc2l0YWRvLCBzZWphIGVtIHZpbmN1bGHDp8OjbyBhbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBVTklGRVNQLCBzZWphIGVtIHZpbmN1bGHDp8OjbyBhIHF1YWlzcXVlciBzZXJ2acOnb3MgZGUgYnVzY2EgZSBkZSBkaXN0cmlidWnDp8OjbyBkZSBjb250ZcO6ZG8gcXVlIGZhw6dhbSB1c28gZGFzIGludGVyZmFjZXMgZSBlc3Bhw6dvIGRlIGFybWF6ZW5hbWVudG8gcHJvdmlkZW5jaWFkb3MgcGVsYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBTw6NvIFBhdWxvIChVTklGRVNQKSBwb3IgbWVpbyBkZSBzZXVzIHNpc3RlbWFzIGluZm9ybWF0aXphZG9zLgoKMi4gQSBjb25jb3Jkw6JuY2lhIGNvbSBlc3RhIGxpY2Vuw6dhIHRlbSBjb21vIGNvbnNlcXXDqm5jaWEgYSB0cmFuc2ZlcsOqbmNpYSwgYSB0w610dWxvIG7Do28tZXhjbHVzaXZvIGUgbsOjby1vbmVyb3NvLCBpc2VudGEgZG8gcGFnYW1lbnRvIGRlIHJveWFsdGllcyBvdSBxdWFscXVlciBvdXRyYSBjb250cmFwcmVzdGHDp8OjbywgcGVjdW5pw6FyaWEgb3UgbsOjbywgw6AgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGUgU8OjbyBQYXVsbyAoVU5JRkVTUCkgZG9zIGRpcmVpdG9zIGRlIGFybWF6ZW5hciBkaWdpdGFsbWVudGUsIGRlIHJlcHJvZHV6aXIgZSBkZSBkaXN0cmlidWlyIG5hY2lvbmFsIGUgaW50ZXJuYWNpb25hbG1lbnRlIGEgT2JyYSwgaW5jbHVpbmRvLXNlIG8gc2V1IHJlc3Vtby9hYnN0cmFjdCwgcG9yIG1laW9zIGVsZXRyw7RuaWNvcyBhbyBww7pibGljbyBlbSBnZXJhbCwgZW0gcmVnaW1lIGRlIGFjZXNzbyBhYmVydG8uCgozLiBBIHByZXNlbnRlIGxpY2Vuw6dhIHRhbWLDqW0gYWJyYW5nZSwgbm9zIG1lc21vcyB0ZXJtb3MgZXN0YWJlbGVjaWRvcyBubyBpdGVtIDIsIHN1cHJhLCBxdWFscXVlciBkaXJlaXRvIGRlIGNvbXVuaWNhw6fDo28gYW8gcMO6YmxpY28gY2Fiw612ZWwgZW0gcmVsYcOnw6NvIMOgIE9icmEgb3JhIGRlcG9zaXRhZGEsIGluY2x1aW5kby1zZSBvcyB1c29zIHJlZmVyZW50ZXMgw6AgcmVwcmVzZW50YcOnw6NvIHDDumJsaWNhIGUvb3UgZXhlY3XDp8OjbyBww7pibGljYSwgYmVtIGNvbW8gcXVhbHF1ZXIgb3V0cmEgbW9kYWxpZGFkZSBkZSBjb211bmljYcOnw6NvIGFvIHDDumJsaWNvIHF1ZSBleGlzdGEgb3UgdmVuaGEgYSBleGlzdGlyLCBub3MgdGVybW9zIGRvIGFydGlnbyA2OCBlIHNlZ3VpbnRlcyBkYSBMZWkgOS42MTAvOTgsIG5hIGV4dGVuc8OjbyBxdWUgZm9yIGFwbGljw6F2ZWwgYW9zIHNlcnZpw6dvcyBwcmVzdGFkb3MgYW8gcMO6YmxpY28gcGVsYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBTw6NvIFBhdWxvIChVTklGRVNQKS4KCjQuIEVzdGEgbGljZW7Dp2EgYWJyYW5nZSwgYWluZGEsIG5vcyBtZXNtb3MgdGVybW9zIGVzdGFiZWxlY2lkb3Mgbm8gaXRlbSAyLCBzdXByYSwgdG9kb3Mgb3MgZGlyZWl0b3MgY29uZXhvcyBkZSBhcnRpc3RhcyBpbnTDqXJwcmV0ZXMgb3UgZXhlY3V0YW50ZXMsIHByb2R1dG9yZXMgZm9ub2dyw6FmaWNvcyBvdSBlbXByZXNhcyBkZSByYWRpb2RpZnVzw6NvIHF1ZSBldmVudHVhbG1lbnRlIHNlamFtIGFwbGljw6F2ZWlzIGVtIHJlbGHDp8OjbyDDoCBvYnJhIGRlcG9zaXRhZGEsIGVtIGNvbmZvcm1pZGFkZSBjb20gbyByZWdpbWUgZml4YWRvIG5vIFTDrXR1bG8gViBkYSBMZWkgOS42MTAvOTguCgo1LiBTZSBhIE9icmEgZGVwb3NpdGFkYSBmb2kgb3Ugw6kgb2JqZXRvIGRlIGZpbmFuY2lhbWVudG8gcG9yIGluc3RpdHVpw6fDtWVzIGRlIGZvbWVudG8gw6AgcGVzcXVpc2Egb3UgcXVhbHF1ZXIgb3V0cmEgc2VtZWxoYW50ZSwgdm9jw6ogb3UgbyB0aXR1bGFyIGFzc2VndXJhIHF1ZSBjdW1wcml1IHRvZGFzIGFzIG9icmlnYcOnw7VlcyBxdWUgbGhlIGZvcmFtIGltcG9zdGFzIHBlbGEgaW5zdGl0dWnDp8OjbyBmaW5hbmNpYWRvcmEgZW0gcmF6w6NvIGRvIGZpbmFuY2lhbWVudG8sIGUgcXVlIG7Do28gZXN0w6EgY29udHJhcmlhbmRvIHF1YWxxdWVyIGRpc3Bvc2nDp8OjbyBjb250cmF0dWFsIHJlZmVyZW50ZSDDoCBwdWJsaWNhw6fDo28gZG8gY29udGXDumRvIG9yYSBzdWJtZXRpZG8gYW8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgVU5JRkVTUC4KIAo2LiBBdXRvcml6YSBhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFPDo28gUGF1bG8gYSBkaXNwb25pYmlsaXphciBhIG9icmEgbm8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgVU5JRkVTUCBkZSBmb3JtYSBncmF0dWl0YSwgZGUgYWNvcmRvIGNvbSBhIGxpY2Vuw6dhIHDDumJsaWNhIENyZWF0aXZlIENvbW1vbnM6IEF0cmlidWnDp8Ojby1TZW0gRGVyaXZhw6fDtWVzLVNlbSBEZXJpdmFkb3MgNC4wIEludGVybmFjaW9uYWwgKENDIEJZLU5DLU5EKSwgcGVybWl0aW5kbyBzZXUgbGl2cmUgYWNlc3NvLCB1c28gZSBjb21wYXJ0aWxoYW1lbnRvLCBkZXNkZSBxdWUgY2l0YWRhIGEgZm9udGUuIEEgb2JyYSBjb250aW51YSBwcm90ZWdpZGEgcG9yIERpcmVpdG9zIEF1dG9yYWlzIGUvb3UgcG9yIG91dHJhcyBsZWlzIGFwbGljw6F2ZWlzLiBRdWFscXVlciB1c28gZGEgb2JyYSwgcXVlIG7Do28gbyBhdXRvcml6YWRvIHNvYiBlc3RhIGxpY2Vuw6dhIG91IHBlbGEgbGVnaXNsYcOnw6NvIGF1dG9yYWwsIMOpIHByb2liaWRvLiAgCgo3LiBBdGVzdGEgcXVlIGEgT2JyYSBzdWJtZXRpZGEgbsOjbyBjb250w6ltIHF1YWxxdWVyIGluZm9ybWHDp8OjbyBjb25maWRlbmNpYWwgc3VhIG91IGRlIHRlcmNlaXJvcy4KCjguIEF0ZXN0YSBxdWUgbyB0cmFiYWxobyBzdWJtZXRpZG8gw6kgb3JpZ2luYWwgZSBmb2kgZWxhYm9yYWRvIHJlc3BlaXRhbmRvIG9zIHByaW5jw61waW9zIGRhIG1vcmFsIGUgZGEgw6l0aWNhIGUgbsOjbyB2aW9sb3UgcXVhbHF1ZXIgZGlyZWl0byBkZSBwcm9wcmllZGFkZSBpbnRlbGVjdHVhbCwgc29iIHBlbmEgZGUgcmVzcG9uZGVyIGNpdmlsLCBjcmltaW5hbCwgw6l0aWNhIGUgcHJvZmlzc2lvbmFsbWVudGUgcG9yIG1ldXMgYXRvczsKCjkuIEF0ZXN0YSBxdWUgYSB2ZXJzw6NvIGRvIHRyYWJhbGhvIHByZXNlbnRlIG5vIGFycXVpdm8gc3VibWV0aWRvIMOpIGEgdmVyc8OjbyBkZWZpbml0aXZhIHF1ZSBpbmNsdWkgYXMgYWx0ZXJhw6fDtWVzIGRlY29ycmVudGVzIGRhIGRlZmVzYSwgc29saWNpdGFkYXMgcGVsYSBiYW5jYSwgc2UgaG91dmUgYWxndW1hLCBvdSBzb2xpY2l0YWRhcyBwb3IgcGFydGUgZGUgb3JpZW50YcOnw6NvIGRvY2VudGUgcmVzcG9uc8OhdmVsOwoKMTAuIENvbmNlZGUgw6AgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGUgU8OjbyBQYXVsbyAoVU5JRkVTUCkgbyBkaXJlaXRvIG7Do28gZXhjbHVzaXZvIGRlIHJlYWxpemFyIHF1YWlzcXVlciBhbHRlcmHDp8O1ZXMgbmEgbcOtZGlhIG91IG5vIGZvcm1hdG8gZG8gYXJxdWl2byBwYXJhIHByb3DDs3NpdG9zIGRlIHByZXNlcnZhw6fDo28gZGlnaXRhbCwgZGUgYWNlc3NpYmlsaWRhZGUgZSBkZSBtZWxob3IgaWRlbnRpZmljYcOnw6NvIGRvIHRyYWJhbGhvIHN1Ym1ldGlkbywgZGVzZGUgcXVlIG7Do28gc2VqYSBhbHRlcmFkbyBzZXUgY29udGXDumRvIGludGVsZWN0dWFsLgoKQW8gY29uY2x1aXIgYXMgZXRhcGFzIGRvIHByb2Nlc3NvIGRlIHN1Ym1pc3PDo28gZGUgYXJxdWl2b3Mgbm8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgVU5JRkVTUCwgYXRlc3RvIHF1ZSBsaSBlIGNvbmNvcmRlaSBpbnRlZ3JhbG1lbnRlIGNvbSBvcyB0ZXJtb3MgYWNpbWEgZGVsaW1pdGFkb3MsIHNlbSBmYXplciBxdWFscXVlciByZXNlcnZhIGUgbm92YW1lbnRlIGNvbmZpcm1hbmRvIHF1ZSBjdW1wcm8gb3MgcmVxdWlzaXRvcyBpbmRpY2Fkb3Mgbm9zIGl0ZW5zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUuCgpIYXZlbmRvIHF1YWxxdWVyIGRpc2NvcmTDom5jaWEgZW0gcmVsYcOnw6NvIGEgcHJlc2VudGUgbGljZW7Dp2Egb3UgbsOjbyBzZSB2ZXJpZmljYW5kbyBvIGV4aWdpZG8gbm9zIGl0ZW5zIGFudGVyaW9yZXMsIHZvY8OqIGRldmUgaW50ZXJyb21wZXIgaW1lZGlhdGFtZW50ZSBvIHByb2Nlc3NvIGRlIHN1Ym1pc3PDo28uIEEgY29udGludWlkYWRlIGRvIHByb2Nlc3NvIGVxdWl2YWxlIMOgIGNvbmNvcmTDom5jaWEgZSDDoCBhc3NpbmF0dXJhIGRlc3RlIGRvY3VtZW50bywgY29tIHRvZGFzIGFzIGNvbnNlcXXDqm5jaWFzIG5lbGUgcHJldmlzdGFzLCBzdWplaXRhbmRvLXNlIG8gc2lnbmF0w6FyaW8gYSBzYW7Dp8O1ZXMgY2l2aXMgZSBjcmltaW5haXMgY2FzbyBuw6NvIHNlamEgdGl0dWxhciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgcGF0cmltb25pYWlzIGUvb3UgY29uZXhvcyBhcGxpY8OhdmVpcyDDoCBPYnJhIGRlcG9zaXRhZGEgZHVyYW50ZSBlc3RlIHByb2Nlc3NvLCBvdSBjYXNvIG7Do28gdGVuaGEgb2J0aWRvIHByw6l2aWEgZSBleHByZXNzYSBhdXRvcml6YcOnw6NvIGRvIHRpdHVsYXIgcGFyYSBvIGRlcMOzc2l0byBlIHRvZG9zIG9zIHVzb3MgZGEgT2JyYSBlbnZvbHZpZG9zLgoKU2UgdGl2ZXIgcXVhbHF1ZXIgZMO6dmlkYSBxdWFudG8gYW9zIHRlcm1vcyBkZSBsaWNlbmNpYW1lbnRvIGUgcXVhbnRvIGFvIHByb2Nlc3NvIGRlIHN1Ym1pc3PDo28sIGVudHJlIGVtIGNvbnRhdG8gY29tIGEgYmlibGlvdGVjYSBkbyBzZXUgY2FtcHVzIChjb25zdWx0ZSBlbTogaHR0cHM6Ly9iaWJsaW90ZWNhcy51bmlmZXNwLmJyL2JpYmxpb3RlY2FzLWRhLXJlZGUpLiAKClPDo28gUGF1bG8sIFdlZCBTZXAgMDggMTA6MjA6MTYgQlJUIDIwMjEuCgo=Repositório InstitucionalPUBhttp://www.repositorio.unifesp.br/oai/requestopendoar:34652023-05-24T04:32:28Repositório Institucional da UNIFESP - Universidade Federal de São Paulo (UNIFESP)false
dc.title.pt_BR.fl_str_mv Diagnóstico de falhas em arquiteturas baseadas em microsserviços
dc.title.alternative.pt_BR.fl_str_mv Failure diagnosis on microservices based architectures
title Diagnóstico de falhas em arquiteturas baseadas em microsserviços
spellingShingle Diagnóstico de falhas em arquiteturas baseadas em microsserviços
Souza, Vinicius José Silveira [UNIFESP]
Microservices
Failure diagnose
Architecture
Computational systems dependability
title_short Diagnóstico de falhas em arquiteturas baseadas em microsserviços
title_full Diagnóstico de falhas em arquiteturas baseadas em microsserviços
title_fullStr Diagnóstico de falhas em arquiteturas baseadas em microsserviços
title_full_unstemmed Diagnóstico de falhas em arquiteturas baseadas em microsserviços
title_sort Diagnóstico de falhas em arquiteturas baseadas em microsserviços
author Souza, Vinicius José Silveira [UNIFESP]
author_facet Souza, Vinicius José Silveira [UNIFESP]
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/6815546854267566
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/7587316047810193
dc.contributor.author.fl_str_mv Souza, Vinicius José Silveira [UNIFESP]
dc.contributor.advisor1.fl_str_mv Kimura, Bruno Yuji Lino [UNIFESP]
contributor_str_mv Kimura, Bruno Yuji Lino [UNIFESP]
dc.subject.por.fl_str_mv Microservices
Failure diagnose
Architecture
Computational systems dependability
topic Microservices
Failure diagnose
Architecture
Computational systems dependability
description A utilização do estilo de arquitetura baseada em microsserviços no desenvolvimento de aplicações na Web traz consigo diversas vantagens. Pode-se destacar a independência entre times de desenvolvimento, maior autonomia aos desenvolvedores, maior velocidade de desenvolvimento e escalabilidade. Por outro lado, a sua topologia de comunicação entre processos, fundamentada em ambientes distribuídos, também acarreta desafios relacionados à disponibilidade dos serviços. Dessa forma, resiliência e tolerância à falhas são requisitos essenciais a um sistema baseado em microsserviços, visando evitar a indisponibilidade de funcionalidades críticas ao negócio. Neste tipo de ambiente distribuído, falhas são mais prováveis. Além disso, é consenso que sistemas distribuídos sejam naturalmente mais complexos de serem analisados e compreendidos, quando comparados à sistemas monolíticos tradicionais, dificultando o diagnóstico de problemas e retardando eventuais correções. Diante deste cenário, esta dissertação de mestrado discute o desenvolvimento e aprimoramento de métodos que auxiliem no diagnóstico de falhas em arquiteturas baseadas em microsserviços. Tais métodos podem facilitar a busca pela causa raiz da falha e minimizar o tempo para correção, impactando diretamente na disponibilidade do sistema. Neste contexto, esta dissertação apresenta três principais contribuições. A primeira, é uma análise bibliográfica ampla, considerando os principais padrões de falhas, bem como as técnicas e métodos utilizados pela indústria e estudados pela academia para se obter confiabilidade neste tipo de arquitetura. A segunda contribuição é um arcabouço de software denominado \textit{microchaos} juntamente com um ambiente de emulação, como iniciativa para suprir a carência atual de ferramentas e ambientes apropriados de experimentação de falhas em microsserviços. Tal arcabouço, juntamente com o ambiente, possibilitam o uso de microsserviços sintéticos flexíveis para reproduzir cenários reais de aplicações em produção, permitindo que falhas possam ser exercitadas exaustivamente e que novos métodos e técnicas de diagnósticos de falhas possam ser experimentalmente validados e avaliados. Por fim, o trabalho avalia um método de diagnóstico de falhas baseado em sistemas especialistas utilizando o ambiente proposto.
publishDate 2021
dc.date.accessioned.fl_str_mv 2021-09-08T13:29:19Z
dc.date.available.fl_str_mv 2021-09-08T13:29:19Z
dc.date.issued.fl_str_mv 2021-05-28
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv SOUZA V. J. S. Diagnóstico de falhas em arquiteturas baseadas em microsserviços
dc.identifier.uri.fl_str_mv https://repositorio.unifesp.br/handle/11600/61903
identifier_str_mv SOUZA V. J. S. Diagnóstico de falhas em arquiteturas baseadas em microsserviços
url https://repositorio.unifesp.br/handle/11600/61903
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 134 f
dc.coverage.spatial.pt_BR.fl_str_mv São José dos Campos, SP
dc.publisher.none.fl_str_mv Universidade Federal de São Paulo
publisher.none.fl_str_mv Universidade Federal de São Paulo
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNIFESP
instname:Universidade Federal de São Paulo (UNIFESP)
instacron:UNIFESP
instname_str Universidade Federal de São Paulo (UNIFESP)
instacron_str UNIFESP
institution UNIFESP
reponame_str Repositório Institucional da UNIFESP
collection Repositório Institucional da UNIFESP
bitstream.url.fl_str_mv ${dspace.ui.url}/bitstream/11600/61903/3/dissertacao_vinicius.pdf
${dspace.ui.url}/bitstream/11600/61903/4/license.txt
${dspace.ui.url}/bitstream/11600/61903/5/dissertacao_vinicius.pdf.txt
${dspace.ui.url}/bitstream/11600/61903/7/dissertacao_vinicius.pdf.jpg
bitstream.checksum.fl_str_mv b5375cb66620538bf2d2b3d4ea003ca1
ef0edd01d3fc6963384da2be721f5ba8
bbdc7daf49971fdd7ac591aae0ce9516
12f66478217ba45fffc6dcfe0ac0b9ab
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNIFESP - Universidade Federal de São Paulo (UNIFESP)
repository.mail.fl_str_mv
_version_ 1802764268495437824