Serviço de Computação de Função - Conceitos Básicos

conceito básico

Function Compute (Function Compute) é um serviço de computação totalmente gerenciado orientado a eventos que pode ajudar os usuários a criar rapidamente aplicativos orientados a eventos sem a necessidade de gerenciar servidores e infraestrutura, basta carregar seu código e definir suas condições de acionamento, e você pode pressionar Necessidades de código para ser executado.
O serviço Function Computing fornece aos usuários suporte multilíngue, incluindo Node.js, Python, Java, etc., e também se integra a muitos produtos em nuvem, como serviço de mensagens, armazenamento de objetos, serviço de log, etc. Além disso, o serviço de função de computação também possui recursos como dimensionamento automático e alta disponibilidade, que podem ser expandidos automaticamente ao processar tráfego de rajada aleatória para atender às necessidades de negócios.
O uso de serviços de computação funcional pode melhorar muito a eficiência do desenvolvimento, reduzir custos e permitir que os desenvolvedores se concentrem mais na implementação da lógica de negócios.
Para usar o Function Compute para concluir a implantação e a depuração do aplicativo com mais facilidade, você precisa ter os seguintes conhecimentos

sem servidor

conceito básico

Serverless é um modelo de computação cuja ideia principal é permitir que os desenvolvedores se concentrem na lógica de negócios do aplicativo sem ter que se preocupar com o servidor, a rede e o sistema operacional subjacentes. No modelo sem servidor, os desenvolvedores de aplicativos precisam apenas escrever o código e carregá-lo na plataforma do provedor de serviços em nuvem, e o provedor de serviços em nuvem é responsável pelo restante, como implantação, monitoramento, expansão e disponibilidade. Os desenvolvedores pagam apenas pelos recursos de computação usados ​​e pelo tempo que o aplicativo consome.

Arquitetura sem servidor

A arquitetura sem servidor é um modelo de computação orientado a eventos, uma arquitetura emergente de computação em nuvem e um modelo de desenvolvimento e implantação de aplicativos cada vez mais popular.
Sob a arquitetura sem servidor, os desenvolvedores não precisam se preocupar com o servidor subjacente, rede e sistema operacional, mas apenas precisam se concentrar na lógica de negócios do aplicativo.
A arquitetura sem servidor geralmente usa serviços de nuvem, como computação funcional, armazenamento, serviço de mensagens e gateway de API de provedores de serviços de nuvem para criar aplicativos eficientes, escaláveis ​​e de baixo custo.

Característica principal

  1. movido a eventos
    1. A arquitetura sem servidor é um modelo de computação orientado a eventos.
    2. Quando ocorre um evento, como solicitação HTTP, mensagem da fila de mensagens, evento de armazenamento de objeto, etc., a plataforma de computação sem servidor chamará automaticamente a função relacionada ao evento para processamento.
  2. sem servidor
    1. A arquitetura sem servidor é um modelo de arquitetura sem servidor.
    2. Na arquitetura sem servidor, os desenvolvedores de aplicativos precisam apenas escrever o código e carregá-lo na plataforma do provedor de serviços em nuvem, e o provedor de serviços em nuvem é responsável pelo restante, como implantação, monitoramento, expansão e disponibilidade.
  3. elasticidade
    1. A arquitetura sem servidor possui recursos como dimensionamento automático e alta disponibilidade, e pode expandir automaticamente ao lidar com rajadas aleatórias de tráfego para atender às suas necessidades de negócios.
  4. baixo custo
    1. O uso do Serverless pode reduzir os custos de desenvolvimento e operação, pois o provedor de serviços em nuvem só cobrará de acordo com os recursos computacionais utilizados e o tempo consumido pelo aplicativo
  5. Eficiência
    1. O modelo de computação sem servidor pode melhorar muito a eficiência do desenvolvimento. Os desenvolvedores só precisam se concentrar na realização da lógica de negócios e não precisam se preocupar com o servidor, a rede e o sistema operacional subjacentes.

perguntas e respostas

P: Na arquitetura sem servidor, os desenvolvedores não precisam prestar atenção ao servidor, porque é um modelo de arquitetura sem servidor. Então, como a própria arquitetura Serverless se torna realidade?
A:

  • A essência da arquitetura sem servidor é um modelo de computação baseado em computação em nuvem, um modelo de computação orientado a eventos que fornece recursos de computação em nuvem como um serviço para desenvolvedores de aplicativos.
  • Sob a arquitetura sem servidor, os desenvolvedores de aplicativos não precisam se preocupar com o servidor, a rede e o sistema operacional subjacentes. Eles só precisam escrever o código e carregá-lo na plataforma do provedor de serviços em nuvem, e o provedor de serviços em nuvem gerenciará automaticamente esses serviços subjacentes recursos.
  • Em uma arquitetura sem servidor, os aplicativos geralmente são divididos em pequenos módulos, cada um dos quais pode ser implantado e executado de forma independente.
  • Esses módulos são chamados de "funções" e cada função é uma unidade de computação orientada a eventos que pode ser chamada em uma única solicitação ou em várias solicitações. Quando ocorre um evento, como solicitação HTTP, mensagem da fila de mensagens, evento de armazenamento de objeto, etc., a plataforma de computação sem servidor chamará automaticamente a função relacionada ao evento para processamento.
  • Na arquitetura sem servidor, o provedor de serviços em nuvem gerenciará e alocará automaticamente os recursos subjacentes de computação, armazenamento e rede, e expandirá e reduzirá automaticamente esses recursos de acordo com as necessidades do aplicativo para atender às necessidades do aplicativo. Os desenvolvedores só precisam pagar de acordo com os recursos de computação usados ​​e o tempo consumido pelo aplicativo, e não precisam se preocupar com os recursos de hardware e software subjacentes.
  • Em suma, a arquitetura Serverless é um modelo de computação baseado em recursos de computação em nuvem. Ela fornece recursos de computação como serviços para desenvolvedores de aplicativos de maneira orientada a eventos, para que os desenvolvedores não precisem se preocupar com servidores, redes e sistemas operacionais subjacentes. • Concentre-se mais na lógica de negócios do aplicativo.

P: Então, como você entende a frase "um modelo de computação orientado a eventos?" Ou como entender "computação em nuvem"? Ou como entender "modelo de cálculo"?
A:

  1. Um modelo de computação orientado a eventos significa que, na arquitetura sem servidor, o processamento do aplicativo é acionado por eventos. Quando ocorre um evento, como solicitação HTTP, mensagem da fila de mensagens, evento de armazenamento de objeto, etc., a plataforma de computação sem servidor chamará automaticamente a função relacionada ao evento para processamento. Esse modelo de computação orientado a eventos pode melhorar muito a eficiência do processamento de aplicativos e também torná-los mais flexíveis e escaláveis.
  2. A computação em nuvem é um modelo de computação baseado na Internet, que pode fornecer vários recursos de computação, como computação, armazenamento, rede etc., por meio da Internet, e pode expandir e reduzir automaticamente esses recursos de acordo com as necessidades dos aplicativos. A computação em nuvem é um novo modelo de computação, que pode fornecer recursos computacionais eficientes, escaláveis ​​e de baixo custo, e tem sido amplamente utilizada em diversos cenários de aplicação.
  3. O modelo de computação refere-se à estrutura e função do sistema de computador, incluindo processadores, memória, dispositivos de entrada e saída, etc. Os modelos computacionais descrevem como os sistemas de computador processam, armazenam e interagem com os dados. Na arquitetura sem servidor, o modelo de computação é um modelo de computação orientado a eventos, que fornece recursos de computação em nuvem como um serviço para desenvolvedores de aplicativos, para que os desenvolvedores não precisem se preocupar com o servidor subjacente, rede e sistema operacional etc. a lógica de negócios do aplicativo.

P: Então, como os provedores de serviços em nuvem implementam a arquitetura sem servidor? Em outras palavras, se eu tiver alguns recursos de máquina, posso construir uma arquitetura serverless sozinho.
A:

  • Os provedores de serviços em nuvem implementam a arquitetura sem servidor fornecendo uma série de serviços em nuvem, como computação funcional, armazenamento, gateway de API, fila de mensagens, etc. Esses serviços em nuvem oferecem suporte a várias linguagens de programação e sistemas operacionais e podem ajudar os desenvolvedores de aplicativos a criar e implantar rapidamente aplicativos sem servidor.
  • Os provedores de serviços em nuvem geralmente otimizam o desempenho e a confiabilidade da arquitetura sem servidor por meio de tecnologias como dimensionamento automático e alta disponibilidade. Quando o volume de solicitações do aplicativo aumentar, o provedor de serviços em nuvem aumentará automaticamente os recursos de computação para atender às necessidades do aplicativo. Quando os recursos de computação não estiverem mais em uso, os provedores de serviços em nuvem reduzirão automaticamente os recursos de computação para reduzir os custos.
  • Se você tiver alguns recursos de máquina, poderá criar sua própria arquitetura sem servidor usando a estrutura sem servidor de software livre. A estrutura sem servidor de código aberto geralmente inclui a estrutura sem servidor e o tempo de execução sem servidor, que pode converter seus próprios recursos de computação em uma plataforma de computação sem servidor, ajudando os desenvolvedores a criar e implantar rapidamente aplicativos sem servidor.
  • No entanto, construir sua própria arquitetura sem servidor requer um certo nível de tecnologia e experiência em operação e manutenção e requer muitos recursos humanos e materiais, portanto, não é adequado para desenvolvedores comuns. Recomenda-se que os desenvolvedores de aplicativos usem serviços sem servidor fornecidos por provedores de serviços em nuvem para obter serviços mais rápidos, estáveis, seguros e confiáveis.

P: Não é realista concluir a arquitetura sem servidor apenas por indivíduos?
A:

  • Sim, é muito difícil, até mesmo irreal, completar a arquitetura Serverless com apenas uma pessoa. A arquitetura serverless requer muito conhecimento técnico em computação, armazenamento, rede e segurança, requer que os desenvolvedores de aplicações tenham um alto nível de tecnologia e experiência em operação e manutenção para poderem construir e gerenciar um ambiente estável, eficiente, arquitetura sem servidor segura e escalável.
  • A arquitetura sem servidor envolve não apenas a escrita e teste de código, mas também implantação, monitoramento, depuração e otimização. Essas tarefas exigem muita mão de obra e recursos materiais e precisam considerar vários aspectos de desempenho, confiabilidade e segurança. Portanto, para a maioria dos desenvolvedores de aplicativos, é muito difícil estabelecer e gerenciar sua própria arquitetura sem servidor e eles precisam contar com os serviços de provedores de serviços em nuvem.
  • Recomenda-se que os desenvolvedores de aplicativos escolham provedores de serviços de nuvem confiáveis ​​e escolham serviços sem servidor adequados para seus próprios cenários de negócios para atender às suas próprias necessidades. Os provedores de serviços em nuvem podem fornecer aos desenvolvedores de aplicativos serviços sem servidor eficientes, confiáveis, seguros e de baixo custo, permitindo que os desenvolvedores de aplicativos se concentrem mais na lógica de negócios sem se preocupar com servidores, redes e sistemas operacionais subjacentes.

P: De outro ponto de vista, se você pode se tornar um membro da equipe de arquitetura sem servidor, isso também pode mostrar indiretamente que você precisa de nível técnico e reserva de conhecimento suficientes?
A:

  • Sim, tornar-se membro da equipe de arquitetura sem servidor requer conhecimento e habilidades técnicas suficientes. A arquitetura sem servidor exige que os desenvolvedores dominem o conhecimento técnico, como várias linguagens de programação, plataformas de computação em nuvem, bancos de dados, gateways de API, filas de mensagens e operação e manutenção automatizadas, além de uma rica experiência prática e capacidade de resolução de problemas.

Os membros da equipe de arquitetura sem servidor precisam ter as seguintes habilidades e conhecimentos:

  1. Familiarizado com várias linguagens de programação, como Python, Node.js, Java etc., pode escrever e depurar códigos rapidamente.
  2. Familiarizado com plataformas de computação em nuvem, como AWS, Azure, Google Cloud Platform, etc., e ser capaz de usar os serviços fornecidos por plataformas de computação em nuvem para criar e implantar aplicativos Serverless.
  3. Familiarizado com tecnologias de banco de dados e armazenamento, como MySQL, Redis, S3, etc., ser capaz de usar tecnologias de banco de dados e armazenamento para armazenar e gerenciar dados.
  4. Familiarizado com gateway de API e tecnologia de fila de mensagens, capaz de integrar aplicações Serverless com sistemas externos.
  5. Possuir habilidades automatizadas de operação e manutenção e monitoramento e ser capaz de gerenciar e otimizar aplicativos Serverless usando ferramentas automatizadas e ferramentas de monitoramento.

Em suma, para se tornar um membro da equipe de arquitetura sem servidor, é necessário nível técnico e reserva de conhecimento suficientes, proficiência em diversas tecnologias e ferramentas e capacidade de resolver problemas e otimizar o sistema. Portanto, os membros da equipe de arquitetura sem servidor são profissionais com rica experiência prática e capacidades técnicas.

FaaS, PaaS e BaaS

No Serverless, FaaS, PaaS e BaaS são três modelos de serviço comuns

  1. FaaS (Function-as-a-Service): FaaS é um modelo de serviço na arquitetura Serverless, que permite aos desenvolvedores escrever e implantar funções sem ter que se preocupar com a supervisão e manutenção do servidor. Os provedores de serviços FaaS geralmente são responsáveis ​​por gerenciar e manter a infraestrutura subjacente, como sistemas operacionais, redes e armazenamento. Ao chegar uma solicitação, o serviço FaaS iniciará automaticamente a função e retornará o resultado ao solicitante.
  2. PaaS (Platform-as-a-Service): PaaS é outro modelo de serviço na arquitetura Serverless, que fornece uma plataforma de desenvolvimento que permite aos desenvolvedores criar e implantar aplicativos sem ter que se preocupar com o gerenciamento e manutenção da infraestrutura subjacente. Os serviços PaaS geralmente fornecem alguns componentes prontos para uso, como bancos de dados, armazenamento e filas de mensagens, para ajudar os desenvolvedores a criar e implantar aplicativos mais rapidamente.
  3. BaaS (Backend-as-a-Service): BaaS é o terceiro modelo de serviço na arquitetura Serverless, que fornece alguns serviços de back-end, como gerenciamento de usuários, armazenamento de dados e notificações push. Os desenvolvedores podem usar esses serviços para criar aplicativos móveis ou aplicativos da Web sem escrever e executar seu próprio código de back-end. Os serviços BaaS geralmente fornecem algumas APIs e SDKs para que os desenvolvedores possam acessar e usar facilmente esses serviços de back-end.

conceito de nuvem e conceito de rede

Conceitos comuns de nuvem

  1. Nuvem pública: Uma nuvem pública é um serviço de computação em nuvem fornecido por um provedor de serviços em nuvem, e os usuários podem acessar esses serviços através da Internet, como AWS, Azure, Google Cloud Platform, etc.
  2. Nuvem privada: Uma nuvem privada é uma infraestrutura de computação em nuvem estabelecida e gerenciada pela própria empresa, e todos os recursos e serviços de computação são limitados ao uso interno da empresa, como VMware, OpenStack, etc.
  3. Nuvem Híbrida: Uma nuvem híbrida é quando uma empresa usa nuvens públicas e privadas para executar seus aplicativos e cargas de trabalho para maior flexibilidade e escalabilidade.
  4. Modelo de serviço em nuvem: O modelo de serviço em nuvem refere-se aos diferentes níveis de serviços fornecidos por provedores de serviços de computação em nuvem, incluindo infraestrutura como serviço (IaaS), plataforma como serviço (PaaS) e software como serviço (SaaS).
  5. Modelos de implantação de computação em nuvem: os modelos de implantação de computação em nuvem referem-se às diferentes maneiras pelas quais aplicativos e cargas de trabalho são implantados na nuvem, incluindo nuvem pública, nuvem privada, nuvem híbrida e várias nuvens.

Conceitos comuns de rede

  1. Rede pública: rede pública refere-se a recursos e serviços de rede pública fornecidos por provedores de serviços de computação em nuvem, como AWS, Azure, Google Cloud Platform, etc. A rede pública permite que vários clientes compartilhem a mesma infraestrutura de rede e fornece recursos e serviços de rede flexíveis e escaláveis, como nuvem privada virtual (VPC), balanceamento de carga, gateways, etc.
  2. Rede privada: Uma rede privada é uma rede estabelecida e gerenciada pelo próprio usuário, que é usada para conectar o equipamento de computação do usuário e o data center do provedor de serviços de computação em nuvem. As redes privadas permitem que os usuários acessem e utilizem recursos e serviços de computação em nuvem em um ambiente mais seguro e controlado, como redes privadas virtuais (VPNs), gateways privados, etc.
  3. Rede privada: Uma rede privada é um recurso e serviço de rede dedicado fornecido por um provedor de serviços de nuvem para conectar o dispositivo de computação de um usuário ao data center do provedor de serviços de computação em nuvem. As redes privadas geralmente são implementadas com base em linhas dedicadas físicas ou redes privadas virtuais, que fornecem conexões de rede mais seguras e estáveis ​​e maior largura de banda de rede.
  4. Sub-rede: uma sub-rede é um subconjunto de uma rede pública ou privada que pode ser dividida em várias partições lógicas, cada uma com um intervalo exclusivo de endereços IP. As sub-redes podem ser usadas para dividir diferentes aplicativos ou cargas de trabalho para que possam ser gerenciados e dimensionados de forma independente.

Acho que você gosta

Origin blog.csdn.net/GoNewWay/article/details/131310528
Recomendado
Clasificación