Olá. Este é Furuyama, um programador.
Estamos fazendo AWS, Azure, GCP e outros grandes MSPs. Desta vez, vou começar GCP. GCP tem uma longa história, especialmente GAE, que está disponível desde 2008. Aliás, AWS está disponível desde 2006. Embora tenha sido um pouco perdido, GAE é PaaS, que é bastante rápido para PaaS. Aliás, o PaaS mais antigo parece ser Force.com. 2007. Ótimo. Aliás, GAE é uma abreviação de Google App Engine, e a camada de servidor é completamente oculta. PaaS é Plataforma como Serviço. É para engenheiros de aplicativos que não precisam estar cientes da camada de servidor. Desculpe pelas abreviações.
Agora, se você está falando sobre essa área, pode pedir uma explicação detalhada ao ISAO, e eu abordarei isso em um nível geral. Só para ter certeza, isso não é tudo o que é mencionado aqui. Se você tiver interesse, por favor, entre em contato com o ISAO.
Sobre os Endpoints na Nuvem
https://cloud.google.com/endpoints/
É um serviço que fornece uma API para fácil acesso ao Google Cloud Datastore. É super fácil porque possui um SDK completo. Ele se destaca com uma estratégia de implementação simples no backend e implementação no front side com aplicativos nativos ou JS. No entanto, no momento, só pode ser implementado em Java ou Python, então quem gosta de Golang ou ama PHP deve ter cuidado.
Eu já usei em Java antes, e naquela época eu usava uma biblioteca para acesso a dados chamada JDO. Isso foi muito pesado e realmente me fez chorar muito, mas pelo que aprendi depois, parece que é uma prática de morceja e normalmente não é usada. Parece que o Google usa isso como padrão ao fazer isso em Java, então era fácil gerar classes automaticamente. Posso chorar. Se você fizer em Java, não é muito mantido, mas recomendo o Slim3 ou o padrão global Objectivey. Mas o melhor é implementar no GO. Nesse caso, você precisa usar uma biblioteca completa de scratch ou de terceiros.
Pontos de acesso https://github.com/GoogleCloudPlatform/go-endpoints
Como é uma linguagem criada pelo Google, o tempo de início desde o recebimento da solicitação até o lançamento da instância é, de longe, o mais curto. Parece ser cerca de 40mseg. Aliás, JDO é 7000mseg. GO é incrível. Devo fazer GO em breve?
Sobre a Autenticação
Apps e sites geralmente têm uma função de login. A maneira mais fácil de implementar essa autenticação de login em um app/site criado com CloudEndpoints e GAE é autenticar usando uma conta do Google. Isso é super fácil. Mas, na verdade, há pessoas que não têm uma conta Google, e muitos serviços que nem querem autenticar com uma conta Google desde o começo. É uma estratégia de conta do Google? Fiquei com a impressão de que a escuridão era profunda.
Sobre a Interface de Gerenciamento do GCP
O console GCP está muito mais limpo do que era há muito tempo, mas ainda parece ingênuo comparado ao AWS, que está cheio de recursos. Complexidade não é necessariamente boa, então acho que isso está ok. GCP está satisfeito com o nível gratuito, mas você precisa definir a cota adequadamente para aproveitar ao máximo o nível gratuito. No entanto, não é tão difícil e é relativamente intuitivo. Pelo menos para programação de domingo, achei que GCP e GAE eram os melhores. Mire no EXIT! (?)
Sobre Cloud Datastore
https://cloud.google.com/datastore/
É um banco de dados NoSQL. Quando combinado com o GAE, demonstra escalabilidade invencível. Não importa quanto o DAU aumente ou o acesso aumente, parece que ele pode ser deixado quase como está. Incrível.
Você também pode usar uma consulta chamada GQL, que é como SQL, embora em NoSQL.
Referência GQL https://cloud.google.com/datastore/docs/apis/gql/gql_reference
Embora seja muito restritivo e exija um cuidado completamente diferente do SQL para alcançar desempenho, acho que o GQL reduziu consideravelmente esse limite. Por favor, experimente.
Acho que existem vários repositórios de dados classificados como NoSQL, como Redis e Mongo, mas em vez de terem as melhores práticas como NoSQL, cada armazenamento de dados tem suas próprias melhores práticas, então parece difícil expandir horizontalmente. Além disso, eu estava vagamente ciente disso, mas fiquei um pouco surpreso em termos de custos de aprendizado.
Cloud SQL
https://cloud.google.com/sql/docs/
É um MySQL totalmente gerenciado que roda no GCP e que todos estavam esperando. Parece que com a v2, ele tem o desempenho que pode ser estendido com o Aurora. A região de Tóquio do GCP será aberta em breve, então a latência não é mais um problema. No entanto, você não pode limitar o acesso apenas a partir de uma VPN, então é preciso ter cuidado se for exigente com essas coisas. Na verdade, parece que segurança suficiente pode ser garantida gerenciando adequadamente os direitos de acesso.
Então, corri para apresentar o GCP. Se você puder usá-lo, pode aproveitar a infraestrutura invencível do Google. Se tiver interesse, por favor, entre em contato com a ISAO.
Kuramane https://www.colorkrew.com/kuramane/
Também estamos planejando um Meetup em nosso escritório no dia 28 de setembro, então você pode tirar dúvidas lá. Aproveite esta oportunidade!
O que há de novo em Firebase & Swift 3 que você pode querer usar http://isao.connpass.com/event/40442/